日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

json java的set函数,JsonConfig的jsonConfig.setExcludes的用法

發布時間:2023/12/15 编程问答 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 json java的set函数,JsonConfig的jsonConfig.setExcludes的用法 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

JsonConfig的jsonConfig.setExcludes的用法

之前寫一個小東西,當用JSONArray.fromObject()方法轉一個對象集合時,因為對象中存在一對多的關系,一直拋出異常

嚴重: Error executing FreeMarker template

FreeMarker template error:

Java method “org.apache.commons.lang.exception.NestableRuntimeException.getMessage(int)” threw an exception when invoked on net.sf.json.JSONException object “net.sf.json.JSONException: org.hibernate.LazyInitializationException: Failed to lazily initialize a collection of role: cn.zzuli.app.domain.User.positions,no session or session was closed”; see cause exception in the Java stack trace.

FTL stack trace (“~” means nesting-related):

- Failed at: ${msg[0]?html} [in template “org/apache/struts2/dispatcher/error.ftl” at line 68,column 29]

Java stack trace (for programmers):

freemarker.core._TemplateModelException: [… Exception message was already printed; see it above …]

at freemarker.ext.beans._MethodUtil.newInvocationTemplateModelException(_MethodUtil.java:311)

at freemarker.ext.beans._MethodUtil.newInvocationTemplateModelException(_MethodUtil.java:275)

at freemarker.ext.beans.SimpleMethodModel.exec(SimpleMethodModel.java:80)

at freemarker.ext.beans.SimpleMethodModel.get(SimpleMethodModel.java:86)

at freemarker.core.DynamicKeyName.dealWithNumericalKey(DynamicKeyName.java:104)

at freemarker.core.DynamicKeyName._eval(DynamicKeyName.java:69)

at freemarker.core.Expression.eval(Expression.java:78)

at freemarker.core.Expression.evalAndCoerceToString(Expression.java:82)

at freemarker.core.BuiltInForString._eval(BuiltInForString.java:26)

at freemarker.core.Expression.eval(Expression.java:78)

at freemarker.core.Expression.evalAndCoerceToString(Expression.java:82)

at freemarker.core.DollarVariable.accept(DollarVariable.java:40)

at freemarker.core.Environment.visit(Environment.java:312)

at freemarker.core.MixedContent.accept(MixedContent.java:62)

at freemarker.core.Environment.visitByHiddingParent(Environment.java:333)

at freemarker.core.IfBlock.accept(IfBlock.java:48)

at freemarker.core.Environment.visitByHiddingParent(Environment.java:333)

at freemarker.core.IteratorBlockContext.runLoop(IteratorBlock.java:159)atfreemarker.core.Environment.visitIteratorBlock(Environment.java:559)atfreemarker@H_700_301@.core.IteratorBlock.accept(IteratorBlock.java:67@H_670_403@)atfreemarker.core.Environment.visit(Environment.java:312)atfreemarker.core.MixedContent.accept(MixedContent.java:62)atfreemarker.core.Environment.visitByHiddingParent(Environment.java:333)atfreemarker.core.IfBlock.accept(IfBlock.java:48)atfreemarker.core.Environment.visit(Envir@H_301_1023@onment.java:312)atfreemarker.core.MixedContent.accept(MixedCon@H_404_1161@tent.java:62)atfreemarker.core.Environment.visit(Environment.java:@H_280_1301@312)atfreemarker.core.Environment.process(Enviro@H_787_1403@nment.java:290)atfreemarker.template.Template.process(Template.java:312)atorg.apache.struts2.dispatcher.DefaultDispatcherErrorHandler.handleErrorInDevMode(DefaultDispatcherErrorHandler.java:99)atorg.apache.struts2.dispatcher.DefaultDispatcherE@H_301_1939@rrorHandler.handleError(DefaultDispatcherErrorHandler.java:57)atorg.apache.struts2.dispatcher.Dispatcher.sendError(Dispatcher.java:909)atorg.apache@H_502_2263@.struts2.dispatcher@H_462_2301@.Dispatcher.serviceAction(Dispatcher.java:576)atorg.apache.struts2.dispatcher.ng.ExecuteOperations.executeAction(ExecuteOperations.java:81)atorg.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter.doFilter(StrutsPrepareAndExecuteFilter.java:99)atorg.apache.catalina.core.A@H_502_2929@pplicationFilterChain.internalDoFilt@H_635_3011@e@H_463_3013@r@H_311_3015@(@H_427_3017@A@H_101_3019@pplicationFilterChain.java:235)atorg.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)atorg.apa@H_787_3301@che.catalina.core.StandardWrapperValve.invok@H_459_3403@e(StandardWrapperValve.java:230)atorg.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)atorg.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)atorg.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:104)atorg@H_406_4033@.@H_850_4035@a@H_130_4037@p@H_321_4039@a@H_890_4041@c@H_796_4043@h@H_435_4045@e@H_926_4047@.@H_16_4049@catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)atorg.apache.c@H_502_4247@atalina.connector.CoyoteA@H_558_4301@dapter.service(CoyoteAdapter.java:261)atorg.ap@H_592_4403@ache.coyote.http11.Http11Processor.process(Http11Processor.java:844)atorg.apache.coyote.http11.Http11Protocol

Http11ConnectionHandler.process(Http11Protocol.java:581)

at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)

at java.lang.Thread.run(Thread.java:619)

Caused by: java.lang.NullPointerException

at freemarker.ext.beans.SimpleMethod.unwrapArguments(SimpleMethod.java:53)

at freemarker.ext.beans.SimpleMethodModel.exec(SimpleMethodModel.java:72)

… 44 more

然后通過詢問別人,知道了JsonConfig的jsonConfig.setExcludes()這個方法,簡單的說,這個就是過濾掉不需要的屬性,因此就可以用這個方法過濾掉對象中存在的一對多的關系

List userList = userService.findAll();

JsonConfig jsonConfig = new JsonConfig();

jsonConfig.setExcludes(new String[]{“area”});

JSON json = JSONSerializer.toJSON(userList,jsonConfig);

setExcludes()里面的集合,就是你想要過濾掉的屬性的名字。

創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎

總結

以上是生活随笔為你收集整理的json java的set函数,JsonConfig的jsonConfig.setExcludes的用法的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。