Jfinal框架写了getter、setter方法后,还是无法获取到自定义属性的问题(已解决)
在Jfianl框架中,前端默认是只能够获取到数据库中的字段的,而我们在实体类中额外添加的的字段,就算是写了getter,setter方法,在后端debug可以看到数据,但是传到前端后,却仍旧只能够看到返回了数据库中定义的字段。
这对于习惯了Spring系列框架的开发者来说,是完全无法理解的。这也是这个框架没落的原因之一吧。
想要前端能够看到我们自定义的属性,需要在自定义字段所在的实体类中重写_getAttrs方法,如下:
@Override
protected Map<String, Object> _getAttrs() {
// TODO Auto-generated method stub
Map<String, Object> attrs = super._getAttrs();
//调用实体类中的get方法,获取到set后的数据
attrs.put("suiteItem", getSuiteItems());
return attrs;
}
上面的attrs.put中key是实体类中自定义字段的名称,value是调用实体类中自定义字段的get方法。
重写此方法后,我们只需要在方法中正常的set属性就行了,前端可以看到自定义的字段和属性了。
Jfinal框架好像2013年就不维护了,真是处处是坑,极其不方便,如果你看到了这篇博客,我表示同情,你维护的该是多垃圾,多老的项目啊(我现在维护的就是2016年的项目,o(╥﹏╥)o)
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异
· 三行代码完成国际化适配,妙~啊~