2017-09-02 15:14

从来没碰到过这种事,参考一下这里:
http://www.duanzhihe.com/575.html
http://blog.csdn.net/wangjun5159/article/details/46912803
http://blog.xinshangshangxin.com/2015/04/20/%E8%A7%A3%E5%86%B3provisional-headers-are-shown%E7%9A%84%E8%BF%87%E7%A8%8B/

2017-09-01 20:39

https://gitee.com/jfinal/jfinal-weixin

2017-09-01 15:16

这个与 PropKit 的关系是什么? PropKit 拿到了你想要的数据时,工作就完成了,与 这个 url 是不是可以访问完全没有关系

2017-09-01 15:15

问题是?

2017-09-01 11:04

@hotsmile 很多年前就支持

2017-09-01 10:28

@jiaxiang 只要知道jfinal 模板引擎与 java 是直接打通的,足够实现很多功能

2017-08-31 23:48

sitemesh 是否需要与 servlet 绑定,例如,是不是要在 web.xml 中添加一个 Filter,而 enjoy 是不与任何其它 api 绑定的,这样就可以用于非 web 开发环境

而且利用过滤的方式还得去区分哪些该应用 head 与 body 部分,性能肯定好不到哪里去,而 enjoy 则使用的是任何语言中都有的 function 概念来实现这个功能的,学习成本会更低

sitemesh 想必会有一些约定需要去学习,而 enjoy 中模板函数是现成已有的功能,不需要学习就能用上她来实现 layout 的功能

当然, sitemesh 或许有它的优点,做框架性的东西最终还是一个利弊的权衡结果,希望你能先尝试一下 enjoy 的用法,感受一下再回头来对比一下

2017-08-31 23:17

spring 的 form:from 这种标签必定是使用了某种模板引擎,切换过来是分分钟的事情

标签的量就那么点,将这几个标答用 enjoy 的模板函数定义在一个类似于 tag.html 的文件中,然后调用就好:
#@form(p1, p2, ..., pn)

用起来就跟调用函数一样简洁,而且理解起来比标签要方便,记得搞定后回来分享一下

2017-08-31 20:38

三个参数,就必须有三个问号占位,这个是 jdbc 要求的, jfinal 并未干预过

2017-08-31 17:49

@ttjs2013 这个配置会在 jfinal 3.3 中默认给加上去

2017-08-31 17:36

@ttjs2013 在 spring 中获取 request 这个早就忘了,spring 是一定有一种回调方式,让你自己的代码做初始化的,建议找找相关资料

此外,你可以通过 JFinalViewResolver.engine.addSharedObject(....) 等方法来配置在 spring 用到的这个 engine 对象,只要找个合适的初始化回调的地方就可以了

你是怎么解决的在模板中得到 request 数据的,如何配置的?

2017-08-31 17:33

第一个问题, getSession() 默认是调用转调了 HttpServletRequest 的 getSession(),而这个方法在 session 没有被创建时,会默认给你创建一个,所以永远不可能为 null 值,这个行为是 java web 规范,所以与 jfinal 毫无关系

你可以通过 getSession(false) 让 HttpServletRequest 在 session 不存在时不去创建 session,但是这也不太保险,因为你要确保所有地方是 getSession(false) ,否则不管登录没登录,只要 getSession() 都不可能是 null 值

第二个问题是个纯前端的事, jfinal 是后端框架,是没法干预到前端的事的,只要你将 html、js、css 处理好就可以了

2017-08-31 17:29

jspstudy 不了解,没法帮到你

始终记住一件事:jfinal 开发的项目是标准的 java web 项目或者普通的 java 项目,以前你的所有 java web 配置、部署、开发的相关积累直接用上就好,不要特殊看待 jfinal 开发出来的项目

因此,使用以前你已掌握的常规方法部署就好

2017-08-31 17:26

Controller 刚被 new 出来的时候 request 还没有被注入进去,自然就无法使用

不要在 controller 构造方法中使用 request 对象,用拦截器就好

2017-08-31 17:23

如果场景比较容易的话,还可以用下面的方式使用:
#for ( img : (post.images).split(",") )
#(img)
#end

因为 jfinal 模板引擎与 java 是直接打通的,你的 post.images 如果是一个 String 型的话,直调用它的 split 方法即可