2017-03-26 20:48

@Xyw jfinal 的大部分组件都是可以扩展的

2017-03-26 17:15

这个表名比较特殊,建议通过创建 MyOracleDialect extends OracleDialect,覆盖掉其中的 forTableBuilderDoBuild() 方法,将下面的这一行改一下:
return "select * from " + tableName + " where rownum < 1";

改成如下:
return "select * from \"" + tableName + "\" where rownum < 1";

最后通过 generator.setDialect(new MyOracleDialect()) 进行方言的切换

2017-03-26 17:11

@linuxea 先确定一下 model 中的 id 字段是什么类型? 如果数据表字段类型为 int 那就 model 中需要是 Integer 才正确,这一步先保障其正确性再往后走

2017-03-25 21:34

clientName 仅仅是构建 JedisPool 这个对象要求的一个参数,jfinal 只是为了重载出更多的构造方法,在底层支持更多的 jedis 构造方法而已

封装二级 cache 自己实现一下就好,很容易的

2017-03-25 20:54

@linuxea id 在数据库表中是什么类型,怎么在 model 中会是 String 呢? 你用的什么数据库?

2017-03-25 15:28

数据是根本,是很严谨的事情,所以 jfinal 只支持从数据结构到 model 的生成,不支持反向生成,你可以设想一下从 model 生成数据表会产生些什么后果

2017-03-25 11:58

此外,如果是做纯 json 服务端,在传参时可以去掉 modelName 前缀,这样来用:
1:客户端将 model.field 改为 field 参数形式
2:服务端使用 getModel(model.class, "")

如果没有创建 model , 还可以使用 getBean(...) ,极为方便

2017-03-25 11:57

去掉 Restful 拦截器,这个拦截器实现了 Roy Fielding 博士论文上建议的 url 风格,比较死板,有一些执行上的约定,为了实现这种风格,restful 拦截器会在服务端做转发,从而也就会在控制台输出中看到多个 action 调用

去掉以后完全按照 jfinal url 风格来走,整个世界清静了

2017-03-24 22:12

在 getConfig() 中切换数据源,这一招格外妙,我以前给小伙伴们的建议没想到这招,用好这一招结合拦截器简直爽得不要不要的了

2017-03-24 22:09

先点赞、收藏,再看,哈哈

2017-03-24 21:52

这个限制应该是针对 GET 的,提交大数据量的时候使用 POST 请求即可

2017-03-24 21:51

jetty 有个配置可以解除这个限制,找找想关的资料

2017-03-24 21:23

@heijie730 我看到你已经加入俱乐部了,这个问题直接来俱乐部专享群里面来问一下,帮你解决一下

2017-03-24 21:15

找不到 JFinalFilter 这个类,环境没配置好,建议仔细看一下 jfinal 手册,如果是部署在 tomcat,注意看一下这个贴子:https://my.oschina.net/jfinal/blog/353062

2017-03-24 21:13

@jerry1216 如果这种重用特别多,抽取一个 BaseController 是值得的,例如 jfinal club 就抽取了 BaseController 专门处理当前登录用户,极其方便,jfinal club 项目的BaseController 中有这些方法:
User getLoginUser()
boolean isLogin()
int getLoginUserId()

这些方法在控制器中直接获取,然后再转头去调用业务层的相关方法极为便利