9
回答
jfinal在什么地方可以拦截action执行产生的html ?
滴滴云服务器,限时包月0.9元,为开发者而生>>>   
jfinal在什么地方可以拦截action执行产生的html ?
举报
jfinal2
发帖于5年前 9回/438阅
共有9个答案 最后回答: 5年前

引用来自“农夫三拳”的答案

这个问题我也想知道 ,你是不是想在这个HTML里干点什么?
是的。

如何生成html是模板决定的,模板是固定的。

你想问的是不是拦截请求统一做额外处理那个在handler里面

    写个 Render,在此 Render中将HTML生成结果缓存到内存中,而非直接输出到 response中去。 JFinal 提供的 Render 全部是直接输出给客户端的,要拦截输出就需要干预 Render。

    假如你想对输出的逻辑进行控制,可以使用 FreeMarker 相关控制语句。此外还可以在 FreeMarker中调用对象方法来实现很强大的功能,或许就不需要拦截 HTML生成了

引用来自“JFinal”的答案

    写个 Render,在此 Render中将HTML生成结果缓存到内存中,而非直接输出到 response中去。 JFinal 提供的 Render 全部是直接输出给客户端的,要拦截输出就需要干预 Render。

    假如你想对输出的逻辑进行控制,可以使用 FreeMarker 相关控制语句。此外还可以在 FreeMarker中调用对象方法来实现很强大的功能,或许就不需要拦截 HTML生成了

比如说我用的是 BeetlRenderFactory,或者FreeMarkerRenderFactory

执行某个action后产生的html是:

<li>@domain</li> ps:(@domain你先不要管我domain为什么不在action中setAttr处理掉)

----------

我想拦截到html去替换@domain这个值。


有什么好的办法吗?


顶部