【详解】EL表达式和JSTL标签库的使用

      EL表达式和JSTL标签库是JSP与后端数据操作的手段或者方式。

      EL表达式和JSTL标签库都是为JSP服务的,简化了JSP界面对数据的处理。

      EL表达式是简化JSP的输出的,简化获取域中的值的方式。

      JSTL是集合了判断、遍历JSP的内置对象的内容,EL表达式取域中的值

      学jQuery,Ajax更加简便。                          

一、EL(Expression Language)表达式

1、EL表达式语言,用于简化JSP的输出,主要是对JSP的内置对象里面的域内容进行输出。

     EL表达式的基本语法:${表达式}。比如向request存入一个集合list:

List<Student> list = new ArrayList<Student>();
Student stu = new Student();
stu.setName("zhangsan");
stu.setAge(18);
list.add(stu);
request.setAttribute("list",list);

     此时使用EL表达式取出来其中的值   ${list},相当于JSP里面的输出<%=request.getAttribute("list")%>

2、作用域对象:

     EL表达式内置的四种作用域对象。 

    

     他们可以读取使用jsp内置对象pageContext、request、session、以及application的setAttribute()方法所设定的对象的数值,即获取域中的值getAttribute(String name)。

     Page:PageScope。使用的方式${pageScope.request_name}

     Request:RequestScope,使用方式${requestScope.request_name},相当于<%=request.getAttribute("request_name")%>

     Session:SessionScope,使用方式${sessionScope.session_name},相当于<%=session.getAttribute("session_name")%>

     Application:ApplicationScope,使用方法${applicationScope.application_name},相当于<%=application.getAttribute("application_name")%>

3、EL表达式的输出:

    语法:${作用域.属性名.子属性名},EL表达式支持运算结果的输出,本质实行的是toString()。EL表达式为空的话,输出的结果也为空。

二、JSTL标签库

    jstl是JSP的第三方标签库,需要引入第三方jar包。

    核心标签库(core)是JSTL最重要的标签库,提供了JSTL的基础功能。

<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>

    ①判断标签:

             1)单分支判断:<c:if>   </c:if>

             2)多分支判断:

<c:choose> 
     <c:when> 
       代码段                
     </c:when>  
     <c:otherwise>
       代码段
     </c:otherwise>
</:choose>

     ②遍历集合

// var 是给items的元素起别名 , items是获取域中的值
<c:foreach var="list" items="${list}">
    
</c:foreach>

  

 

    

猜你喜欢

转载自blog.csdn.net/Sunshineoe/article/details/111603814
今日推荐