2016-10-09 10:11

写写 Mock 类就可以了,参考一下 jfinal ext2 或者 jfinal extension 项目,在这里:https://git.oschina.net/brucezcq/JFinal-ext2/tree/master/src/test/java/com/jfinal/ext/test?dir=1&filepath=src%2Ftest%2Fjava%2Fcom%2Fjfinal%2Fext%2Ftest&oid=ac70574ccb68d79f6c72d4ab93a8b03d593e8824&sha=0385c4cb305ec05ac29d95fb3a028645f6df33cd

2016-10-09 10:05

@xRhbN jfinal 手册里就有 qq 群号,此外,在 qq 里搜索 jfinal 群,出来一大堆

2016-10-08 19:59

@xRhbN ajax 提交数据到后端,后端也是 key value 形式,验证方式丝毫不会变

2016-10-08 19:58

初次来社区先看看如何玩转社区的分享啊: http://www.jfinal.com/share/1

2016-10-08 12:09

@云云 有些地方适合用弹出层,看情况

2016-10-08 12:08

有人这么玩过,小心地处理好所有 jar 的依赖,还要在启动时候可以正确加载 web.xml,去群问问

2016-10-08 12:07

Validator 主要用于 POST 提交的表单请求,尤其是表单域多的请求。对于每一个字段的验证本质上就一行代码,如:validateInteger(...)

Validator 中可以获取 actionKey、controllerKey 等数据,所以可以将大量的验证写在同一个 Validator 中,然后用 actionKey 做一个统一的分发,不需要为每一个 action 写 Validator

再退一步,你可以利用 Validator 或 Interceptor 加载外部用于验证的配置文件,这就回退到了 SSH 时代

此外,假如是 GET 或者请求中的字段很少,直接在 action 中做个简单的判断 render 到特定的地方就好,不需要创建Validator

jfinal 的 Validator 有还有很多考虑,例如 API 引导式验证,你在敲入 validateString(...) 这类代码时如果出现手误 eclipse 会提示你,比 SSH 时代用 xml 配置验证要舒服很多,其它一些考虑在此就不赘述了

2016-10-07 15:57

设想一下,如果 model 没有主键,那么 model.save()、model.update() 怎么可能知道操作的是哪条数据表记录?

2016-10-07 15:56

jfinal 的 model 是 Active Record 设计模式,该模式的核心特征就是一条数据表记录唯一对应一个 model 对象,而该对应关系靠的就是主键,所以只要是使用该模式就必须有主键

如果确实没有主键值就不用映射该数据表,直接用一下 Db + Record 模式来操作这张表。最后,让生成器略过该表的方法是 generator.setExcludeTable(tableName)

2016-10-06 23:27

这个得用 String json = HttpKit.readData(getRequest());

2016-10-06 23:25

将来开源不? 以后有好的项目也多多分享出来,感谢支持

2016-10-06 21:00

@zjchxj 试过我建议的方法没? 是否可以解决?

2016-10-06 17:24

不知道楼主看过社区分享频道置顶文件没有,在这里:http://www.jfinal.com/share/1

jfinal 社区是一个专注于 jfinal 生态的站点,希望做一个专注的社区,所以这里面的项目、分享都是与 jfinal 有关的,其它的资源也不是不欢迎,只是这样做不符合社区的初心,希望你能发布生态圈内的项目,在本篇资源上改下内容就可以,非常抱歉

2016-10-06 10:58

@lyh061619 始终记得 jfinal 是通过监控 classes 目录下的文件变化来热加载就好,一切问题都明白了

2016-10-05 17:57

将这里 Field[] fields = ClassLoader.getSystemClassLoader() 改成如下试试:
Field[] fields = Thread.currentThread().getContextClassLoader()

应该是你的代码使用的是 system 的 classload,而 web 项目使用的是其它的 class load,造成里面加载的类文件不认为是同一个