2018-04-19 11:02

@Hulk-X a 标签指向你后台的那个有 renderFile 调用的 action 即可,看一下 jfinal 官网首页右侧的下载 a 链接,照猫画虎即可

2018-04-19 11:01

你试一下 jfinal enjoy 引擎这样来用,一点问题都没有

2018-04-19 11:00

@flash866 这个只是告诉你原因,但 freemarker 的这个设计并不好,让人产生误解,而且在功能上也有问题

setAttr("class", "value");
${class}
上面的用法很显然是符合 freemarker 的规则的,但却得到了非预期之类的结果,显然是不好的设计

从使用规则上来说,说它是个 bug ,一点也不冤枉

2018-04-19 10:42

或许你是掉进了 tomcat 的坑:
https://my.oschina.net/jfinal/blog/353062

2018-04-19 10:41

单步调试一下这个在理论上来说是不可能的,天天都在用的功能

此外,反馈错发到了分享频道,过后此贴会被删除,请知悉

2018-04-19 10:40

纯前端问题,与 jfinal 无关

如果你是链接,直接 target="_parent" 即可实现,如果你是 ajax 提交表单,在 ajax 响应回来的时候,用 js 搞定:
top.location.href = "/";

2018-04-18 17:18

看到你的 main 方法并没有启动 web , 因此,你该手动调用 autoCodeRedis.start() 来启动 RedisPlugin,否则必然是 Null Pointer Exception

2018-04-18 13:59

新版本转移到 configRoute 方法里面去了,可以针对每个拆分的 Routes 配置 setBaseViewPath(...)

2018-04-18 12:57

Model 如果存在的话,生成器再次运行时不会生成 Model,而 BaseModel、MappingKit 无论是否存在,只要重新运行生成器都会无条件覆盖

因此,当你前面生成的 Model 是小写,但你改了数据库变大写并重新生成,BaseModel、MappingKit 都是重新生成的大写,而 Model 还是前面生成的没变过,必然会出现这个问题

建议将表名改成:reeshi_industry_list,也就是在 "list" 加个下划线。 mysql 会自动将表名转成小写,所以 jfinal 从来都是建议 mysql 下表名全用小写,单词之间用下划线分隔

这种问题没必要折腾,全小写、加下划线秒秒钟解决

2018-04-18 11:40

我在我本地将一个表名改名为 reeshi_industrylist,重新生成了一次,一点问题都没有

你单步调试一下吧

2018-04-18 11:37

即便通过 me.setJsonFactory(new FastJsonFactory()) 配置过了,也要通过调试确定一下 JsonUtils.parse 使用是的 fastjson

fastjson 应该是可以通过配置来指定字段名称的,找一下 fastjson 官方文档看一下

2018-04-18 11:21

第一个问题中的两个子问题的回答一样:事务只用在需要控制的地方即可

第二个问题,jfinal 并未提供乐观锁的功能,如果确实需要可以通过引入一个中间 BaseModel 辅助实现

2018-04-18 11:18

参考一下 jfinal 中的 PropKit 与 Prop 这两个类,里头是从 resource 下获取配置文件,只是不是 json 文件

里头的读取文件的代码就 10 来行,拿来即用

2018-04-18 11:17

在 jfinal 中叫做 urlPara,取值方法在文档中有很多实例

一定要先看下文档,文档里头 80% 以都是代码示例,一两个小时看完很轻松

2018-04-18 11:15

@peterpeter 这个问题从来没有碰到过,我直觉上感觉这个是不可能出现的,因为 base model 的类名与文件名是通过同一个变量去生成的

同一个变量,先是生成类名,然后再生成文件名,要大写就会全部大写,要小写就会全部小写

会不是会是你自己做过扩展,扩展代码写得有问题?

在你机器上要找到问题很容易,单步调试一下 BaseModelGenerator 这个类分分钟就知道了,里面有很明确的地方去生成类名与文件名

记得搞定后回来反馈一下