JSTL和EL

Posted 波涛

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JSTL和EL相关的知识,希望对你有一定的参考价值。

EL表达式

1.EL表达式的全称是Expression Language,它是借鉴了javascript和XPath的表达式语言

EL表达式定义了一系列的隐含对象和操作符,使开发人员能够很方便的访问页面的上下文,以及不同作用域的对象,二无需在jsp页面嵌入java代码,从而使开发人员即使不熟悉java也能轻松的编写jsp程序。

2.EL表达式的特点和使用范围

通常用在某个作用域(page  request  session  appliaction)内取得属性值

特点:

(1)自动转换数据类型

(2)使用简单

3.语法

$(EL 表达式)

两个要素:$  { }  二者缺一不可

JSTL

1.JSTL的全称:Java Server Pages Standard Tag Library   jsp标准标签库

2.在项目中如何使用JSTL?

解析:(1)java类   .tld文件(标签库描述符文件)

           (2)在需要使用JSTL的jsp页面中使用taglib指令导入标签库描述符文件

3.JSTL核心标签库

(1)

语法:

通用标签

<c:set>

<c:set var="name" value="n" scope="scope"/>
var属性的值是设置的变量名
value属性的值是赋予变量的值
scope属性对应的是作用域  例如;page  request  session  appliaction

(2)

<c:out>

<c:out value="value" />

out标签  escapeXml=Y(解析成一个可以点击的超链接)  false(解析成一个可以点击的超链接) true :原样输出 默认值也不做解析原样输出

(3)

<c:remove>:删除指定范围内的变量

<c:remove var="value" scope="scope"/>

条件标签

<c:if>用于实现java语言中if语句的功能
   1.<c:if test="${1==1}">
      execute code here
   </c:if>
  
   并列if
   <c:if test="${1==1}">
      execute code here
   </c:if>
   <c:if test="${1==1}">
      execute code here
   </c:if>

 

<c:choose>

迭代标签库

 实现对集合的遍历

通过迭代标签遍历Map

<%

    Map<String,String> map=new HashMap<String,String>();

    map.put("tom", "美国");

    map.put("lily", "英国");

    map.put("jack","中国");

    request.setAttribute("map", map);

%>

<c:forEach var="entry" items="${map}">

     ${entry.key}

     ${entry.value}<p>

</c:forEach>

 

以上是关于JSTL和EL的主要内容,如果未能解决你的问题,请参考以下文章

JSTL

servlet-el-jstl

Ognl 和 EL 和jstl区别

JSTL和EL

El表达式详解

JSP常用标签——JSTL标签和EL表达式