2017-02-23 20:27

在微信平台关闭加密的配置以后,在项目中也要配置不启动加密,这两者是有关联的

2017-02-23 20:18

@rapin 在发布新版本后写新版本文档时发现了这个需求,在没有发行的版本已经支持了,放开了对 #p 指令参数类型的判断

以前对 #p 指令的参数类型判断严格是为了避免开发者传入错误的数据库类型造成错误,没注意到 #p(map.value) 这种需求的存在

2017-02-23 18:45

有一个非常典型的用法是,传入的条件参数是 map 型,而生成 where 条件的时候,直接对 map 进行迭代,大致是这样的:

select * from table where status = #(statusOK)
#for(cond:condMap)
and #(cond.key) = #p(cond.value)
#end

注意上面的指令,and 后面的第一个是在用输出指令#()输出 map 中的属性名,后面的 #p 指令是将 map 中的属性值放入 paraList 中,并输出一个问号字符 '?' ,这样就起来就完全没阻碍了

2017-02-23 18:41

你是第一个发现 #p 指令只支持 identify 的,这个 p 指令已经删掉了对表达式类型的限制,如果你加入了俱乐部可以找我要最新的代码,如果没加入,去 jfinal 官方群里找我

2017-02-23 18:17

@Ferrari8899 value 不是属性值,只是个示例,你可以样:#(session.a.b.c.d.x.y.z)

2017-02-23 18:09

取的时候加一个 session 前缀: #(session.value) 这样的话 session 中的变量不会污染 request 级的变量

2017-02-23 17:44

@sruz 虽然 jfinal template engine 这才第一版,但功能是非常完善的,很多情况都已经考虑到了

2017-02-23 17:44

@sruz configEngine 中的 devMode 配置如果不动它,默认与 configConstants 中的配置是一样的,如果在 configEngine 中再配置,那么会覆盖掉 configConstants 中的配置

2017-02-23 17:35

jfinal.com 官方网站就是用的这种方式,改 html 上传后立即会生效,很方便。这个配置也可以放在配置文件中:
reloadModifiedTemplate = true;
然后用的时候 engine.setDevMode(PropKit.getBoolean("reloadModifiedTemplate", false));

2017-02-23 17:33

不必这么麻烦,只需要在 configEngine(Engine engine) 这个方法中使用如下代码即可:
engine.setDevMode(true)

2017-02-23 17:06

@Ferrari8899 建议你使用标准的 maven 结构,与标准配置,然后在 pom.xml 中添加 jetty 的 maven 插件,这样应该可以正常运行

以前出错,我怀疑是你没按标准的 maven 规则来

2017-02-23 17:05

@Ferrari8899 原来如此,选择自己习惯和喜欢的来吧,把配置弄好应该可以的,多尝试

2017-02-23 16:56

@越陌度阡_磐定桑田 以前使用老一代开发框架确实很慢,有些人选择了忍受,有些人选择了逃离,jfinal 就是为了简化开发,提升效率的

java 界普遍学术化、过度设计,jfinal 为此做了很多努力,力求将学习成本降到尽可能低、开发效率尽可能高、代码量尽可能少

2017-02-23 16:42

@越陌度阡_磐定桑田 社区功能确实还不完善,好多事情要做,一步步来吧

快速入门先在首页下载 jfinal demo将之跑起来,看看手册,然后在 demo 中写点试验性的代码验证一下学习成果就可以了。当然,最快的方式还是加入俱乐部,获取更多资源,包括本站的所有源代码都在俱乐部能获取到