两个问题,应该属于同一问题
设置JFinalJsonFactory时,JsonKit输出不了model里面的成员变量
model.toJson不能输出model内的成员变量
描述如下:
首先
me.setJsonFactory(new JFinalJsonFactory());
然后
Model里面放了一个成员变量(不是BaseModel) ,并且设置了 get set
private List<Discuss> childList;
再然后,查询,给childList赋值
之后再用JsonKit转成String输出
就发现不能打印childList的值,但是使用fastjson的JSON.toJSONString()就可以输出
如下图
如果设置了
me.setJsonFactory(new FastJsonFactory());
那么JsonKit就正常打印,但是model的toJson方法还是不会输出childList,如下图
这就会导致我返回String时,不能直接使用 model.toJson() 返回
PS:如果是我的JsonKit食用方法不正确,请指出
项目:JFinal
而 JFinalJson 转 json 不会使用 getter 方法,所以你新增的 getter 是无用的。
配置 FastJsonFactory 时,使用的是 FastJson 来将对象转 json string。
而 FastJson 是使用的 getter 方法拿到数据并转换的。
文档中很详细说明过这个问题