EL表达式的目的是为了让JSP页面书写起来更加简单而产生的:
1.格式:
${expression}
2、[ ]与.运算符
EL 提供“.“和“[ ]“两种运算符来存取数据。
当要存取的属性名称中包含一些特殊字符,如.或?等并非字母或数字的符号,就一定要使用“[ ]“。
例如:
${ user. My-Name}应当改为${user["My-Name"]}
如果要动态取值时,就可以用“[ ]“来做,而“.“无法做到动态取值。
例如:
${sessionScope.user[data]}中data 是一个变量
3.原理:
在得到页面请求的时候,Tomcat服务器会把JSP文件转换成.java文件存放在work\Catalina目录下,然后将他们编译成.class文件执行。当读取.jsp文件的时候如果发现页面中有“ ${ ” 开头的样式就表明这是EL表达式,Tomcat将会${expression}进行转换,如果书写的时候没有 } (反括号),Tomcat则会抛出异常来提示。
4.使用范围:
EL表达式只有写在JSP页面中才可以被正确执行。如果你在JSP页面中引用了一个外部文件(如:.js文件),在外部文件中使用EL表达式是无法被服务器识别的,因为服务器不会去加载他们的内容,没有对其进行编译,在.jsp文件里面无论什么地方都可以使用EL表达式(如:标签里面,JavaScript里面,字符串里面,双引号里面等)。