一、JSPEL的起源
JSP EL(JSP Expression Language)起源于JSTL1.0,从JSP2.1开始,JSP EL既可以用在JSP中,也可以用在JSTL和JSF中。
核心作用:
1、减少JSP页面的Java代码
2、方便JSP中代码的修改,也方便美工修改页面的外观
如:${2008+2009}、<h2>The Way Of Java, ${user.name}</h2>
二、JSPEL的运算符
算术型:+、-、*、/、div、%、mod
逻辑型:and、&&、or、||、!、not
关系型:==、eq、!=、ne、>、gt、<、lt、>=、ge、<=、le
条件型:a?b:c
空:empty
三、使用JSPEL读取JavaBean等属性
类型
示例
对应的调用方法
JavaBean
${user.userName}
user.getUserName()
数组
${array[1]}
array[1]
List
${address[2]}
address.get(2)
Map
${address.home}
phone.get("home")
四、JSPEL的内置对象
pageContext、pageScope、requestScope、sessionScope、applicationScope
param、paramValue、header、headerValues、cookie、initParam
例如:
<%session.getAttribute("username")%> 等价于 ${sessionScope.username}
五、设定JSP不使用JSP EL
1.使用page指令的isELIgnored属性
<%@ page language="java" pageEncoding="UTF-8" isErrorPage="true"%>
2.或者通过修改web.xml文件使所有的JSp不使用JSP EL
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
<jsp-config>
<jsp-property-group>
<url-pattern>*.jsp</url-pattern>
<el-ignored>true</el-ignored>
</jsp-property-group>
</jsp-config>
</web-app>