2016-12-10 10:15

这段代码历史比较久远,细节已然记不清,大致是有些 jar 包不需要被加载或者路径不对,可以用上述的方式过滤这些 jar 包,或者转换目录

2016-12-09 19:39

原因是 paginate 方法会直接使用 "select count(*) ...." 去查询分页需要的总记录条数,这时就丢弃了 distinct 关键字,外层套一个 select * 就没事

2016-12-09 19:35

写个全局拦截器,拦截所有你需要一键关闭的这些个接口,该拦截器里面放个开关变量,大致如下:

public class EnableApiInterceptor implements Interceptor {
private static boolean enableApi = true;
public void intercept(Invocation inv) {
if (enableApi){
inv.invoke();
} else {
inv.getController().renderText("Api closed");
}

// 外界控制开关变量方法
public static void setEnableApi(boolean idEnable) {
enableApi = isEnable;
}
}

然后在后台管理做个 action 调用一下 EnableApiInterceptor.setEnableApi(...) 即可控制,当然还可以通过直接在 url 中传参的方式控制,要活学活用

2016-12-09 19:30

PropKit 最初设计目标是加载外部配置文件,没有提供写入功能

2016-12-09 19:29

@zhaozhihong 又一个入坑的,这里是出坑的办法:https://my.oschina.net/jfinal/blog/353062

2016-12-09 19:28

补充一下,如果你仍然希望是 A 定时启动 B,仍然按照这个贴子来也是可以的,只是 B 根本没有必要存在:http://www.jfinal.com/share/37

2016-12-09 19:27

你希望是定时任务 A,定时启动另一个定时任务 B,只要合理安排好定时任务 A,那么定时任务 B 不需要存在

具体方法见这个贴子:http://www.jfinal.com/share/37

2016-12-09 19:25

如果是 paginate 方法中使用 distinct,在外层套一个 select * from (原 sql ) as t 就可以了:
paginate(1, 10, "select *", "from ( select distinct ....) as temp", p1, p2,..., pn)

2016-12-09 17:27

@charlox 集群简单来说,只要做好多份数据的同步,或是避免数据多份从而使用共享数据即可

而 redis 之下,如果你只有一个 redis 服务端,那么天然就支持了分布式,如果是多个 redis 服务端,只需要利用 reids 的集群配置做好数据同步就好

jfinal 仅仅是一个 web mvc + orm 框架,所以集群问题在本质上与 jfinal 无关

2016-12-09 17:24

model 中有一个 Set modifyFlag 就是专门做这事的,在你使用getModel 的时候,当前 model 中只要是被操作过的属性就会被 update 到数据库,即便是 null 值也一样,试用一下就知道了

2016-12-09 16:24

@java小王 小王 如果你在 url 中使用了项目名,那么又跳入了另一个坑,记住,做 java web 项目,永远都要将 context path 设置为 "",这里是原因:https://my.oschina.net/jfinal/blog/353062

2016-12-09 15:57

贴子中的信息量无法定位错误,建议先放一个普通的文件到项目中,然后 renderFile(...) 看工作是否正常

2016-12-09 15:56

直接用后续最新版本: http://git.oschina.net/brucezcq/JFinal-ext2

2016-12-09 15:55

jfinal 是后端,与前端的 ajax 在本质上并没有关系。所以,只需要将 jfinal 的四种路由规则搞清楚就可以打完收枪了

把路由搞清楚以后,然后再将所谓的 ajax 路由放在浏览器地址栏里面手动请求一下,看请求是否到达了你想到达的地方,如果到达了,再将浏览器地址栏里面刚刚手动请求的 url 再 copy 到所谓的 ajax 请求的地方即可

2016-12-09 15:52

这种检测的性能消耗可以忽略不计,发个很轻量的请求的而已,并且还是在独立的线程之中,丝毫不干扰你正使用的线程