3 4 5 6 关于ognl+struts-tag与el+jstl互相代替,以及el和jstl的学习笔记 - 11GX
首页 > 关于ognl+struts-tag与el+jstl互相代替,以及el和jstl的学习笔记

关于ognl+struts-tag与el+jstl互相代替,以及el和jstl的学习笔记

昨晚在晚上看了许多文章,众多大牛说OGNL性能不行云云,乍一看似乎惨不忍睹,如下图:

于是考虑是否能使用EL+JSTL代替实现前台的标签。

以最近测试用的简单留言板的查看文章页面为例,以下皆省略getter,setter方法:

ViewArticle:

复制代码
public class ViewArticle extends ActionSupport { 



private static final long serialVersionUID = 77L;

private ArticleService as;

private int page = 1;



@Override

public String execute() throws Exception {

ActionContext ctx = ActionContext.getContext();

ctx.put("articles", as.getAllArticle(page));

return SUCCESS;

}
复制代码

前台页面,OGNL+Struts-tags实现:

复制代码




  

















删除
复制代码

EL+JSTL实现:

复制代码




   


















删除
复制代码

可以看出,两者的复杂度和可读性并没有多大的差别,可能我这个Demo比较简单,从代码上来看EL+JSTL并没有简洁多少,不过Struts-Tgas若不使用simple风格的话,自动生成的HTML代码有点惨不忍睹,从生成的代码简介角度来看,我并不很倾向于使用Strust-Tags。

但是Sturts-Tags在国际化方面有着很大的优势,如下图:



可以很方便的读取出国际化文件中的资源,而不使用此方法的话要如何实现还没有深入研究。

考虑到之前的ONGL效率问题,以及EL和JSTL的官方性,在之后的项目中可能更加倾向于使用EL+JSTL的方式构建前台页面。

转载于:https://www.cnblogs.com/qwangwei/p/4997940.html

更多相关:

  • 蒙特卡洛法和时序差分学习Note 10 蒙特卡洛法和时序差分学习 Monte Carlo and Temporal Difference10.1 蒙特卡洛法和时序差分学习 (Monte Carlo and Temporal Difference)10.2 Q中的TD学习(TD Learning in QQQ )10.3 资格迹(Eli...

  • 强化学习(五) - 时序差分学习(Temporal-Difference Learning)及其实例5.1 TD预测例5.1 回家时间的估计5.2 TD预测方法的优势例5.2 随机移动5.3 TD(0)最优性例5.3:批量更新下的随机行走例5.4: You are the Predictor5.4 Sarsa:策略 TD控制例 5.5...

  • 新建一个login文件,里面存放的就是用户登录的模块。 在body...

  • 练习1:Ecshop  录制登录后退出业务  打开系统  存储页面的标题     a.点击"登录"按钮     b.输入用户名:testing      存储输入的用户名     c.输入密码:123456     d.点击"立即登录"按钮      存储登录成功的提示信息      存储登录成功后页面显示的用户名     e.选择...

  •  翻页器

  •     在src/main/resources/springmvc-servlet.xml中加入

  • 本篇仅仅是一个记录 MergeOperator 的使用方式。 Rocksdb 使用MergeOperator 来代替Update 场景中的读改写操作,即用户的一个Update 操作需要调用rocksdb的 Get + Put 接口才能完成。 而这种情况下会引入一些额外的读写放大,对于支持SQL这种update 频繁的场景来说实在是不划...

  • 看了很多人写的好几个去重方法,我在这里精简组合下,适用于已排序与未排序的数组。 废话不多说,上代码。 数组去重