2019-02-15 18:25
@王子鹏 补充上面:首先你做一个 BaseModel 继承 Model,然后在 BaseModel 中覆盖 save() 方法完成功能
最后自己所有的 Model 由继承 Model 改成继承 BaseModel。 改生成器模板是最方便的
2019-02-15 18:24
@王子鹏 将 jfinal 模板文件 copy 出来,然后直接改模板,最后配置使用自己的模板:
generator.setBaseModelTemplate("my-base-model-template.jf");
generator.generate();
在上述的 "my-base-model-template.jf" 模板文件中,将 Model 改成你自己弄的一个 BaseModel 即可,一次性搞定所有,十分方便
2019-02-15 18:19
@2834511088 你当前使用的 jfinal 已经很高了,强烈建议升级到最新版本
此外,要注意问你们公司的人是不是对 jfinal 的源码进行过修改:jfinal-java8-3.3-20171121.152419-1.jar 这个 jar 包看上去是你们改过的源码
如果你们自己改过源码,就不能简单升级,甚至不能使用 jfinal 官方版本
2019-02-15 18:08
@2834511088 直接使用 jfinal-3.6 ,你的版本已然是 3.3, 升到 3.6 很平滑,多数不需要改代码,这里有详细的升级文档:
https://www.jfinal.com/doc/14-1
2019-02-15 17:45
@2834511088 这里还有一个关键信息,异常中提到解析注释时出错,而 InterceptorManager 中很可能是解析 @Clear 这个注解出的问题,而老版本的对应注解名叫: @ClearInterceptor
也就是说新版本改过类名,如果你的 class path 下的 jfinal 版本与你项目中实质使用的不同,有可能是这个问题
2019-02-15 17:34
@roney context path 可以为空字符串 "",配置一下 tomcat 或者 undertow 的 conext path 为非空字符串自然会有值
2019-02-15 17:34
@ifu25 oschina 上回答的是美元符号,那是在 freemarker 等等其它模板引擎之下,jfinal enjoy 模板引擎的输出指令不使用美元符号