2017-12-18 11:55

jfinal 3.4 在本地已经开发了一些功能了,到时候合并你的 pull request 时可能会覆盖掉你的代码,到时候会再找你再提交一版 pull request

感谢你的支持

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

2017-12-18 10:49

先会使用 jasperReport,然后直接用上即可

jfinal 是 MVC + ORM 框架,使用任何第三方时直接用就好,不一定要有个整合动作。

2017-12-18 10:47

简单到令人发指,几行代码的事,这里正好有个例子:
https://gitee.com/duaicxx/Ioc_Manager/tree/3.3.1/src/main/java/org/dval/controllerfactory

注意,这个项目现在只有 3.3.1 这个分支在使用 ControllerFactory

2017-12-17 21:50

1:某些异常本身就没有 cause 部分,也不需要 cause 部分,例如空指针异常 NullPointerException。你可以认为这些异常已经清晰到无法再做进一步的解释

2:JFinal 的 ActionHandler 中会对所有捕获到的异常做做一次日志,如果不希望在这里被做一次日志,需要你自己 try catch 后,不再 throw 抛出来即可。 你有两个全局拦截器,需要检查一下是不是 catch 中没有 catch 到所有可能的异常类型,以及是否再次抛出

2017-12-17 21:46

从 MysqlDialect.java 中来

2017-12-17 21:44

信息量不够无法回答

2017-12-17 21:42

freemarker 是后端模板引擎,渲染是发生成后端的 java 代码里头的,而 ajax 请求得到的数据需要用 js 来操纵,此时 freemarker 对 ajax 返回的数据没有操纵的可能性

2017-12-17 21:39

有个简单的办法是在转 json 前调用一次 model与record的 removeNullValues() 方法

2017-12-16 17:18

java primative 类型是不支持接收 null 值的,这个目前没什么办法,jfinal 也不太方便干预不去处理 null 值的 setter 注入,因为有些情况 null 是用户需求要求这样的

2017-12-15 16:58

@Shydow 对比一下 jfinal 3.3 的 I18nInterceptor 源代码就知道了,这个代码确实有问题,次序不对,自己建个拦截器,继承一下 I18nInterceptor 拦截器,覆盖一下 intercept 方法,照着 jfinal 3.3 的代码调整一下即可

jf 3.3 的源码在首页的 jfinal-3.3-all.zip 中可以下载到

2017-12-15 12:10

你的 java 代码呢?

2017-12-15 11:50

感谢你的分享

这个问题确实有点不好弄,所以后来我改进了 jfinal 手册中有关的内容,对例子进行了加强,建议下载一份最新版本的 jfinal 手册