干净的JSP页面
jsp页面的开发过程中应该尽量减少“脚本标签”的使用,通过引入其他技术达到目的。
对于表达式脚本:EL技术
对于普通脚本:JSTL技术
EL
EL:表达式语言,获取表达式结果,并输出到浏览器上。
语法:${el代码获取数据}
功能
功能1:计算表达式的结果
${1+1} //<%= 1+1>
${age == null} //判断是否为null
${empty a} //判断是否为存在
功能2:获取请求参数
通过el关键字param获取
${param.请求参数}
功能3:获取作用域里的命名属性
关键字获取:
pageScope
requestScope
sessionScope
applicationScope
语法:${XxxScope.命名属性}
注意:如果el里的变量前没有任何修饰,则变量默认为“命名属性”,按照作用域生命周期由短到场的顺序查找,找到第一个返回。
功能4:获取命名属性对象的属性
如果获取到的明明属性是一个对象,可以通过EL进一步访问对象的各个属性。
语法:${XxxScope.对象名.属性名}
底层原理:el会将给定的对象属性名首字符变成大写,前面加还是那个get,利用对象调用getXxx()方法获取属性值,el不在乎类里有哪些实例变量,只要类里由getXxx()方法,el就能通过.xxx形式访问。
注意:EL语法里支支持jsp中pageContext这个隐含对象。
功能5:获取当前应用名
${pageContext.request.contextPath}
JSTL
jsp标砖标签库(core子库)apache组织定义的一组标签,应用在jsp技术力,用来替换普通脚本标签。
1)引入jstl.jar(标签的支持程序)
2)jsp文件中声明使用——标签库指令
<%@taglib uri="http://java.sum.com/jsp/jstl/core" prefix="c">
3)使用标签