2018-01-29 14:23

感谢分享,点赞支持

2018-01-29 14:21

CommonUserAcount 生成了 setter 方法没有? 应该是可以的,用一下 FastJson.getJson().parse(...) 方法试试

2018-01-27 12:08

@燕龙910 看下 druid 的文档,将限制取消掉,通常会提供相应的配置

2018-01-26 21:09

最简单的办法是下面的办法获取到一个 boolean 来判断:
boolean ret = Db.tx(...);

还可以通过使用下面的方式来返回很多数据:
1:final Ret ret = new Ret();
2:在 Db.tx 的 run() 方法中直接操作 ret 这个对象,例如:
ret.set("isRollback", true);
ret.set("isCommit", false);

注意上面的 Ret 对象前面需要使用 final 关键字

2018-01-26 18:27

其实最新版本的文档已经建议使用这种方式配置了:
http://www.jfinal.com/doc/5-13

你碰到的问题可以是路径不对,也可能是大写问题, linux 下区分大小写,而 windows 不区分,无论什么原因,都建议使用:ClassPathSourceFactory

2018-01-26 18:24

将 arp.setBaseSqlTemplatePath(...) 改成下面的代码:
Engine engine = arp.getEngine();
engine.setSourceFactory(new ClassPathSourceFactory());
arp.addSqlTemplate("sql/all.sql");

ClassPathSourceFactory 会去 class path 以及 jar 包中读模板文件,即便你将来将 sql 打在 jar 包中都可以使用

2018-01-26 18:22

使用 jfinal 最新版本,在 configRoute(Routes me) 中通过 me.setActionMapping(....) 来切换成自己的 ActionMapping 实现

ActionMapping 中可以完全控制路由。

还有一个建议是,开发过程中可以将 Routes 分成子的 Routes,开发某个模块的时候,先将另外模块的 Routes 先在 configRout(...) 方法中注释掉,这样能加快启动

2018-01-26 18:13

检查是否配置了方言: OracleDialect

如果确实配置了,那么是 sql 语法错误,老老实实将 sql 改正确即可

2018-01-26 18:11

生成的字典文件里头用到了这个 remarker 字段,没有在 getter 方法中生成备注是因为有些数据库并不支持备注的读取,为了保障主流程的可靠性,则选择不为 getter 方法生成 remark

如果希望生成,可以继承 MetaBuilder 以及 BaseModelGenerator,生成一下备注

备注信息的获取代码在 DictionaryGernerator.java 中是现成的,拿去即用

2018-01-26 18:08

在 BaseModel 中重写 save() update() 是很好的方案

2018-01-25 22:01

单步调试,找到发生乱码的源头,再解决

2018-01-25 18:51

@我要做菜鸟 贴子的内容比较多,而我时间很有限,每个贴子通常也就一二十秒的阅读时间,所以其实我不太理解你全部的建议,先只是凭那一二十秒获取的信息量凭直觉回复你

非常希望你能给出具体的建议用法的例子,代码是最好的,信息量足,阅读速度快

2018-01-25 16:22

@dafeizi 都可以使用,注意如下几点:
1:所有数据库操作需要是针对同一个数据源的,不能一行代码针对数据源a,另一行针对 b
2:Db.tx 也要与内部数据库操作的那些代码指向同一个数据源。本条与第一条如果使用的是默认数据源,则不需要关注
3:注意事务级别要与你当前的 sql 匹配,jfinal 默认为你设置成为了 4

2018-01-25 15:49

@dafeizi 用 Db.tx(...) 做事务,然后 return false 回滚就可以了

2018-01-25 15:40

jfinal 并不提倡充血模式, model 仅仅为作承载数来用,dao 仅用于查询数据库,而所有业务全部放在 service 层,一定要养成好习惯

jfinal 的业务层并不要求有接口、也不要求有抽象类,所以创建业务层是很变便捷的事情,当然,在确实需要抽象,或者要开放 service 层给外界时,可以为业务层添加抽象类或者接口