2017-08-03 10:09

起码有两个方向:
1:反射得到 base model 中的 setter 方法,对其遍历,从 map 中得到值并注入
2:调用 model.put(Map map) 方法进行注入,使用这个方法要注意属性类型与数据库字段类型要相匹配,否则可能无法入库

2017-08-03 10:06

把 sql 写好,然后直接扔给 model 的 paginate 方法就可以了,详细介绍看一下手册

2017-08-03 10:04

@Maxwoo cookie 与域名是相关的,而 session 是依赖于 cookie 的,所以必然与跨域有关,先验证对应 session 的 cookie 值是否存在

2017-08-02 22:40

@Maxwoo 上面代码看起来是没问题的,注意检查一下 captchaId 这个变量在两个方法中的个体值是不是一致,大小写也要注意

2017-08-02 21:14

在 login 接口 request 获取不到是什么意思? 建议贴点代码

2017-08-02 17:54

@yiz 这个就不知道了,或许对方不适合学开发,连基础也可学个一两年,也或许对方对开发很有天赋,学一个月就可以掌握基础

在掌握基础的前提下,三天内可以学会用 jfinal。 对于有 java web 基础的人,几个小时内就可以上手 jfinal

2017-08-02 17:38

万丈高楼平地起,做任何事情都要从基础开始

2017-08-02 17:38

不建议零基础的直接学 jfinal,建议如下学习路线:
1:先学习 java 语言基础,会写简单的 java 程序
2:学习数据结构、数据库原理等最基本的与程序开发相关的知识
3:学习 java web 开发中的 servlet 基础
4:开始使用 jfinal

2017-08-02 17:24

由于 TxByActionKeyRegex 被你配置成了全局拦截器,所以在控制台就会有这个输出,但 TxByActionKeyRegex 并不会针对所有 action 开启事务,只会根据你设置的正则表达式参数去开启事务

对 TxByActionKeyRegex 进行单步调试可以知道,哪些方法开启了事务,哪些并没有开启,控制台输出的拦截器信息不是重点,重点是针对哪些 action 才开启了事务

2017-08-02 17:15

@Willson_L index() 方法是不参与“路由组成”的,看一下 jfinal 手册,里面对于路由规则有详细的说明

注意看 index() 在路由中的规则

2017-08-02 17:10

先要用管理员账号登录进去,默认是 test@test.com,然后再访问 locahost/admin 就可以

这个在项目中有一个文档进行过说明,为什么要做成这样

2017-08-02 15:59

@大龙 jfinal 的很多打磨与改进就是这样发生的,大家的应用场景千变万化,只有通过大家的反馈,才能让项目变得越来越好,这就是为啥这个频道叫“反馈”不叫“问答”的根本原因

感谢你的反馈 ^_^

2017-08-02 15:57

这是一个空指针异常,建议单步调试解决一下

2017-08-02 15:57

你应该是用了 Db + Record 模式,对于 Record 对象转 json, 使用 jfinal 自己的 json 转换类可以识别,而 fastjson jackson 对于 record 的转换,是先调用了其 getColumns() 得到 map 后进行的转换

建议尽量使用生成了 getter 方法的 Model 再进行转换,jackson 与 fastjson 会根据它的 getter 方法进行转换

多种转换方式可以自由搭配:
1:使用 jfinal 自己的转换工具 JFinalJson.getJson().toJson(...)
2:使用 jackson 工具 Jackson.getJson().toJson(...)

最后再通过 renderJson(jsonString) 进行输出,因为 renderJson 是可以直接认 String 参数的

me.setJsonFactory(...) 是配置默认 json 转换工具,在此基础上仍然可以灵活搭配来使用,此外, jfinal 还提供了一个 MixedJsonFactory 可以让转 json 时使用 jfinal 实现,而 parse 时使用 fastjson 实现