流行的MVC的开模式中,JSP仅负责数据的渲染工作,JSP中的java代码有点“杀鸡用牛刀”,并且使用代码过于混乱,JSTL+EL的组合有效的解决了这个难题,本文从实战的角度出发,阐明其作用。

0、EL:在JSP中,将对象从上下文中取出,并进行输出的简化语言。格式:${[request/session/applicationScope].变量名[index].成员变量},对于集合类型[index]有效。

1、JSTL(JSPStandardTagLibrary)是在JSP中使用,旨在用标签的手段完成页面渲染工作的一套标准标签,即以做网页的方式完成编码工作。

2、使用JSTL的条件:

1)项目中必须引入jstl-1.x.jar(javaEE5规范已经默认支持)

2)在jsp中必须加入指令(<%@tagliburi="http://java.sun.com/jsp/jstl/core"prefix="c"%>
<%@tagliburi="http://java.sun.com/jsp/jstl/fmt"&nbsp;prefix="fmt"%>等)

3、JSTL虽然有很多功能,但其主要的目的是"渲染传入到三大上下文对象的java对象",所以大家在使用时请加以取舍。

4、核心标签:

1)条件判断:<c:iftest="EL条件">html标签、JSTL标签、EL</c:if>其中的“条件”可以放入任何可以返回真假值的EL(注意没有没有else标签,这也反映了JSTL的定位---不处理复杂的业务)

2)循环遍历:

<c:forEachvar="变量"items="EL集合">
html标签
jstl标签
EL
</c:forEach>

其中var表示定义一个在循环内部使用的局部变量名,items表示从上下文对象中取出的集合对象。

5、格式化标签:

1)格式化日期:<fmt:formatDatevalue="EL日期类型对象"pattern="yyyy-MM-ddhh:mm:ss"/>表示格化一个完成的日期时间(可根据情况调整或将“-”进行替换)

2)格式化数字:<fmt:formatNumbervalue="EL数值类型对象"pattern="#,###.##"></fmt:formatNumber>表示数字成为一个3,423,456.23形式的格式。