使用了ActiveRecord插件,生成了对应的Model类,有getter和setter方法,用的是fastjson包。调用接口关键代码如下:
String from = "from useryieldlog where userId = ? and type = ? ";
Page<Useryieldlog> page = this.useryieldlogService.findPage(param.getPageIndex(), 10, from, new Object[]{userId,param.getType()});在这里得到的page,然后放到一个包装类里返回,客户端接收到的json如下:
{
"code": 200,
"msg": "成功",
"data": {
"list": [{
"configName": null,
"createTime": null,
"modifyFlag": null,
"attrs": {
"msg": "推广",
"id": 2463594159034862395,
"type": 0,
"userId": 2457130544639509501,
"value": 1.71
}
}],
"pageNumber": 1,
"pageSize": 10,
"totalPage": 1,
"totalRow": 1,
"firstPage": true,
"lastPage": false
}
}不知道为什么,属性全部到了attrs的下面,感觉好像fastjson没起作用一样。请兄弟们不吝赐教!拜谢!
项目:JFinal
如果存在的话,升级到新版本,新版本方法名添加了下划线,不会被 fastjson 处理 _getAttrs()
不过这个只能解释属性到了 attrs 下面的原因,不能解释为什么你生成的 getter 方法未被用在 json 转换之中
查看一下 Useryieldlog 的 base model , 是不是真的生成了合格的 getter 方法