renderJson输出的数据库字段名能否驼峰

有一个老项目,想改造成使用jfinal框架的,情况如下,

1,数据库字段都是以下划线,而不是驼峰命名,如:birth_date,不是birthDate
2,前后端分离,需要renderJson把model转成json给前端。

存在的问题是,render之后,json里面的数据库字段名不是驼峰格式的,而原来的前端需要的数据是驼峰格式的。
(原来的项目是用mybitas写的,写了一个mapper的映射就是 birth_date 映射到birthDate)。
举例如下:
用jfanal获得的数据

{"u_name":"张三","role_id":1,"sex":0,"birth_date":"2001-01-05 00:00:00","id":1,"age":14}

期望的数据

{"uName":"张三","roleId":1,"sex":0,"birthDate":"2001-01-05 00:00:00","id":1,"age":14}

通过百度找到一篇老文
https://blog.csdn.net/weixin_33969116/article/details/91725805?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-2.channel_param&depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-2.channel_param。
但是不知道有没有其他更好的方法,请教一下,谢谢。

评论区

zzutligang

2020-10-31 15:31

正好啊,最新的JFinal就支持这个了!
JFinalJson.setModelAndRecordFieldNameConverter(fieldName -> {
return StrKit.toCamelCase(fieldName, true);
});

JFinal

2020-10-31 16:20

@zzutligang 没错,正是这样

如果是 mysql 数据库 toCamelCase 第二个参数设置为 false 为好,oracle 设置为 true 为好

rirai

2020-10-31 17:28

@zzutligang @JFinal 感谢两位周末还给予及时的回复,这个也是我喜欢jfinal的原因之一,技术支持的速度超快!