2017-12-19 11:16
@wendell620 启动两次是 tomcat 的一个大坑,很久以前就写过博客说明过:
https://my.oschina.net/jfinal/blog/353062
2017-12-18 18:31
@时光月凡 Db 的用法:Db.use(configName).find(...)
Model 的用法是自动的:model.find(...), 也可以: model.use(configName).find(...)
2017-12-18 17:57
@王业群 前面看错了,你是想反过来获取,通过 tableName 获取 model,这个在 MappingKit 中有就有,如果你没有生成 MappingKit 的话,就从 arp.addMapping(...) 这个方法上进行改造,这个方法会建议这个关系
建议通过改造 MappingKitGenerator,生成一个 map 来存放这个关系
2017-12-18 17:55
@王业群 一行代码而已:
TableMapping.me().getTable(modelClass).getName();
2017-12-18 12:07
@GFzero new Thread 出来以后,要再调用一它的 setDaemon(true) 方法,设置为守护线程,否则无法通过调用 shutdown.sh 来停掉 tomcat,进而会出现你这个错误
2017-12-18 11:40
@EATI001 使用 ControllerFactory 接管了 Controller 的创建,可以对接管的 Controller 注入 Servcie,注入的 Service 也是你自己创建的,那么可以接着对 Service 注入 model/dao,一个链条下来的
2017-12-18 11:19
@EATI001 只需要 ControllerFactory 就足够了,因为你连 controller 生命周期都接管了,那么 controller 之中对于 service,以及 service 中对 model 的依赖自然就被接管了,这是一个链条
如果你了解 spring 的用法,就知道只需要接管最上面一层,在这层之下的所有层也就被接管了
2017-12-18 11:15
通过你给的: [{k1:v1,k2:v2},{k3:v3,k4:v4}] 这个信息量,最外层是数组,第二层是 map,知道这个就好办了:
#for (x : shopList)
#(x["k1"]) #(x["k2"])
#end
始终记住一个关键:jfinal 的 enjoy 是与 java 直接打通的。在打通的基础上,enjoy 还对 java 不好用的表达式进行了便捷的增强,例如 map 元素的获取除了支持 java 的
map.get(key) 以外,还进行的增强有:
map.key
map["key"]
这类增强还有一些,如果不知道这些增强,光是用 java 已有的规则也可以实现功能,例如前面你要的功能还可以这样:
#for (x : shopList)
#(x.get("k1")) #(x.get("k2"))
#end