SSH多表关联实现:
Action----jsp
Action能够收到jsp传来的值
在PageBean<entity>封装数据成功后,将其转化为JSON时,不能成功
JSON.toJSONString()方法:String com.alibaba.fastjson.JSON.toJSONString(Object object, SerializeFilter filter, SerializerFeature... features)
其中PageBean输出时,PageBean的pageContent为entity的String(相当于toString())型
解决:
1.
我将jsp所需的data独立建立一个空的Java类,在Service层时PageBean封装<entity1·entity2·entity3>
在序列化时成功
此时JSON.toJSONString()成功
2.
关于序列化的问题,表-表是多对一(取多值),many方中有一个one方对象,one方中有一个many方对象集合,
在序列化时,导致了,死循环,所以应当在 参数SerializeFilter filter 对应中,加上所序列化取值对应的表的关系表
如[one][many]两表,取PageBean<many>时,序列化条件中加入many方中对应的one方对象集合
解决方法:
(1)新建一个实现PropertyFilter的类MyFilter,类中apply方法中
if(name.equalsIgnoreCase("ones")){
return false;
}
参数SerializeFilter filter 的赋值为MyFilter的对象
(2)使用注解,在所要过滤的对象头上加@JSONField()
至于有无其他方法,抱歉,本人无工作经验,o(* ̄︶ ̄*)o,另欢迎大佬大神前辈们留言