EL+JSTL

EL
1.EL(Expression Language)
JSP脚本代码:结构混乱,脚本与HTML混合,容易出错代码不易于维护。
为了解决这些问题推出了EL表达式.使用EL表达式来优化程序代码,增加程序可读性。
2.EL表达式的作用:
1.获取域中数据(重点)
2.执行运算(重点)
3.获取web常用对象(重点)
4.调用java方法(了解)

例:
取得JavaBean对象的属性
${news.title}
取得数组、List、Map类型对象的元素
${list[0]}
使用各类运算符对原始数据进行简单处理
${totalRecordCount/pageSize}
屏蔽一些常见的异常
${username}
能实现简单的自动类型转换
$ {news}相当于(News)request.getAttribute("news")


3.语法:
EL表达式(Expression Language)
${EL 表达式} 例如:${username}
EL操作符
操作符“.”
获取对象的属性,例如:${news.title}
操作符“[]”
获取对象的属性,例如:${news["title"]}
获取集合中的对象,例如:${newsList[0]}

EL严格区分大小写,初学者严格按规范书写,有利于养成好的编码习惯

4.El表达式获取域中数据(访问作用域)
使用jsp中使用小脚本获取servlet传送过来数据内容
  <%=request.getAttribute("rname")%>
  <%=pageContext.getAttribute("pname")%>
  <%=session.getAttribute("sname")%>
  <%=application.getAttribute("aname")%>
使用El表达式接受Servlet传送过来数据内容
  ${requestScope.rname} 等同于${rname} //请求作用域
  ${pageScope.pname} //页面作用域
  ${seesionScope.sname} //会话作用域
  ${applicationScope.aname} //程序作用域


通过request的.getSession()方法.setAttribute()方法设置session的内容

5.EL四个域对象及生命周期
request 域范围是整个请求链
application 域范围是整个应用
session:域范围是整个会话
pageContext:域范围是一个jsp页面

6.EL运算符
( )                  改变执行的优先级,   例如${3*(4+5)}
+,-,*,/,%              算术运算符,                例如${3+2}
==,!=,>,>=,<,<= 关系运算符,              例如${a==b}或${a eq b}
&&,||,!                 逻辑运算符,             例如${true&&false}
?:                        条件运算符,             例如${a>b?1:2}
empty 用于检测变量名是否为空,是否等于NULL,例如${empty name}

empty有两个作用 1.判断是否为null 2.判断容器是否为null或者长度是否为0

EL在做多个对象运算时,要全写在一个{}内
${ param.password1 == param.password2 } √
${param.password1} == ${param.password2} ×
${ ${param.password1 } == ${ param.password2 } } ×



JSTL
1.JSTL(Java Page Standard Tag Library),JSP标准标签库。
该库包含了一系列开发JSP时用到的一系列标准标签。

Jstl标签库一共包含了四大标签库
core:核心标签库,重点
fmt:格式化标签库,两个主要标签
sql:数据库标签库,已过时
xml:xml标签库,已过时

猜你喜欢

转载自www.cnblogs.com/jiayiblog/p/10987619.html