2018-06-12 21:11

@hj rm 之前,建议先 copy 备份一次,以防万一

2018-06-12 21:07

renderNull() 了没有?

2018-06-12 18:45

@jasonbob handler 天然就是接管所有请求的,没有接管,应该是你没配置:
me.add(new MyHandler())

2018-06-12 18:26

@hj 那就用下面的办法解决一下:
http://www.jfinal.com/share/411

这个纯属某些 linux 版本缺少字体文件导致

2018-06-12 18:10

升级到 jfinal 3.4 来解决,部分 linux 版本缺少字体文件导致的

2018-06-12 18:06

这个设计可以很容易去推广到使用 ehcache

2018-06-12 18:06

使用 reids 的好处是可以持久化数据,以及有丰富的数据结构和 API 支持,但缺点是需要跑一个 server ,以及网络通信会有一定的延迟

谢谢分享

2018-06-12 18:03

@蓝色忧恋 jfinal 这头的事是可以排除的,请求 99.99% 的可能性是外部发起的,但找到这个源头并不容易

2018-06-12 18:02

还没玩过 webjars,建议找找相关资料

或者不使用 webjars,而是用下面这几种方式:
http://www.jfinal.com/share/860
http://www.jfinal.com/share/786
http://www.jfinal.com/share/422

2018-06-12 16:38

@hankingxu 最后在使用的时候这样来用:
render(new MyFileRender(...));

2018-06-12 16:09

@hankingxu 照着 jfinal 的 FileRender 做一个 MyFileRender 出来即可,大致方法如下:
1: 先拷贝 FileRender 中所有的代码到 MyFilRender 中去

2:删掉 rangeRender() 这个方法(这个是用于断点续传的)

3:关键点在于改造 normalRender() 方法中的new BufferedInputStream(...) , 将原来的从 FileInputStream 中读取数据改成从你数据来源的那个流里面读取。

这样做的好处就是可以避免掉你以往的构建实体文件的环节

当然,上面是主要过程,里头可能有一些小细节,都不重要了

记得搞定后,回来在分享频道分享出来

2018-06-12 15:38

还可以做成一个 Render , 然后用的时候:
render(new ITextRender());

2018-06-12 15:36

jfinal 中的 com.jfinal.template.ext.directive.EscapeDirective.java 中有一个 escape 转义方法,可以 copy 出来直接使用

转义这个事本身并不难,照着 EscapeDirective 写个工具类就可以了

2018-06-12 15:36

一个方法搞定挺简洁,谢谢分享

2018-06-12 15:29

已修正,谢谢反馈