`
BradyZhu
  • 浏览: 246991 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

使用EL表达式获取数据和使用JSTL标签库迭代容器

 
阅读更多

为了避免在JSP页面中出现Java代码和显示Servlet处理完成带过来的数据并且显示,使用EL表达式会非常容易而且简介,但是对于存放在容器中的数据,EL表达式不能单独完成迭代输出,所以必须使用JSTL标签库配合使用,这个是JavaEE附带的一个非常强大的标签库,估计在以后还会用到。

首先是EL表达式的几个不同情况的用法

<%@page import="com.bird.domain.Db"%>
<%@page import="com.bird.domain.Address"%>
<%@page import="com.bird.domain.Person"%>
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8" contentType="text/html; charset=UTF-8"%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <title>EL表达式的应用</title>
    
  </head>
  
  <body>
  <%
  	String date = "abcd";
  	request.setAttribute("date",date);
   %>
   
   ${date} <!-- 会被翻译成pageContext.findAttribute("date")分别从page,request,session,servletcontext查找
   如果寻找不到,则返回“”空字符串
    -->
    
    
    <%
    Person p = new Person();
    p.setName("小白");
    request.setAttribute("person",p);
     %>
     
     ${person.name}
     
     
     <%
     Person p1= new Person();
     Address a  = new Address();
     a.setCity("北京");
     p1.setAddress(a);
     request.setAttribute("p1",p1);
      %>
      
     ${p1.address.city}
     
     
     
     
     <%
     	List<Db> list = new ArrayList<Db>();
     	list.add(new Db("aaaaaa"));
     	list.add(new Db("bbbbbb"));
     	list.add(new Db("cccccc"));
     	
     	request.setAttribute("list",list);
      %>
      
      ${list[1].name }
      
      
      
      <%
      Map map = new HashMap();
      map.put("aa",new Db("aaaa"));
      map.put("bb",new Db("bbbb"));
      map.put("cc",new Db("cccc"));
      map.put("dd",new Db("dddd"));
      
      request.setAttribute("map",map);
      
       %>
       
       ${map.aa.name }<%--用表达式一般用点号,点号不行用[] --%>
       
       
       ${pageContext.request.contextPath }
  </body>
</html>

下面的是使用El表达式和JSTL标签库配合使用来完成容器的迭代

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8" contentType="text/html; charset=UTF-8"%>
<%@page import="com.bird.domain.Db"%>
<%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"  %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <title>使用JSTL+EL表达式完成集合迭代</title>
    
  </head>
  
  <body>
   <%
     	List<Db> list = new ArrayList<Db>();
     	list.add(new Db("aaaaaa"));
     	list.add(new Db("bbbbbb"));
     	list.add(new Db("cccccc"));
     	
     	request.setAttribute("list",list);
      %>
      
      <c:forEach var="person" items="${list }">
      ${person.name }
      </c:forEach>
      
      <br/>
      
       <%
      Map map = new HashMap();
      map.put("aa",new Db("aaaa"));
      map.put("bb",new Db("bbbb"));
      map.put("cc",new Db("cccc"));
      map.put("dd",new Db("dddd"));
      
      request.setAttribute("map",map);
      
       %>
       
       <c:forEach var="entry" items="${map }">
       ${entry.key } : ${entry.value.name }
       </c:forEach>
  </body>
</html>


分享到:
评论

相关推荐

    EL表达式 (详解)

    EL表达式 (详解) EL表达式 1、EL简介 1)语法结构 ${expression} 2)[]与.运算符 EL 提供.和[]两种运算符来存取数据。 当要存取的属性名称中包含一些特殊字符,如.或?等并非字母或数字的符号,就一定要使用 ...

    JSP中EL表达式用法_动力节点Java学院整理

    当然,EL表达式还能配合JSTL标签,进行其他一些功能的显示,例如迭代等等。  我们先来看使用EL表达式来获取数据  在JSP页面中使用${标识符}的形式,就是通知JSP引擎在Servlet中调用pageContext.findAttribute(...

    JSTL 入门 表达式语言.mht

    JSP 标准标记库(JSP Standard Tag Library,JSTL)是一个实现 Web 应用程序中常见的通用功能的定制标记库集,这些功能包括迭代和条件判断、数据管理格式化、XML 操作以及数据库访问。在 developerworks 上其新系列...

    JSTL 表达式 入门 访问SQL和XML内容

    JSP 标准标记库(JSP Standard Tag Library,JSTL)是一个实现 Web 应用程序中常见的通用功能的定制标记库集,这些功能包括迭代和条件判断、数据管理格式化、XML 操作以及数据库访问。在developerWorks 上其新系列的...

    jstl 两个jar包

    jstl需要导入的两个jar包:...Jstl.jar包是一款java中项目中如果要使用JSTL和EL表达式,就必须导入jstl.jar和standard.jar文件,可以让程序猿们在日常生活中更节约时间。需要的童鞋可以下载学习使用,下载地址安全无误!

    jstl表达需要的jar

    jstljar包,jsp页面使用jstl...Jstl.jar包是一款java中项目中如果要使用JSTL和EL表达式,就必须导入jstl.jar和standard.jar文件,可以让程序猿们在日常生活中更节约时间。需要的童鞋可以下载学习使用,下载地址安全无误!

    jstl.jar、standard.jar

    JSP 标准标记库是一个实现 Web 应用程序中常见的通用功能的定制标记库集,这些功能包括迭代和条件判断、数据管理格式化、XML 操作以及数据库访问。jstl语言,el表达式必需的包

    老杜javaweb教程配套资料JavaEE帮助文档分享

    主要内容包括:Servlet、JSP、EL表达式、JSTL标签库、Filter过滤器、Listener监听器。在讲解过程中采用的手法是从0到1,让小白学会源码分析,让大牛眼前一亮。总之,不管你是小白,还是已经在从事Java开发的工作者,...

    动力节点老杜最新Javaweb教程学习文档分享

    主要内容包括:Servlet、JSP、EL表达式、JSTL标签库、Filter过滤器、Listener监听器。在讲解过程中采用的手法是从0到1,让小白学会源码分析,让大牛眼前一亮。总之,不管你是小白,还是已经在从事Java开发的工作者,...

    JAVA WEB 开发详解:XML+XSLT+SERVLET+JSP 深入剖析与实例应用.part2

    第17章 jsp标准标签库(jstl) 490 17.1 jstl简介 490 17.2 配置jstl 491 17.3 core标签库 491 17.3.1 一般用途的标签 492 17.3.2 条件标签 496 17.3.3 迭代标签 498 17.3.4 url相关的标签 501 17.4 i18n...

    JAVA WEB 开发详解:XML+XSLT+SERVLET+JSP 深入剖析与实例应用.part5

    第17章 jsp标准标签库(jstl) 490 17.1 jstl简介 490 17.2 配置jstl 491 17.3 core标签库 491 17.3.1 一般用途的标签 492 17.3.2 条件标签 496 17.3.3 迭代标签 498 17.3.4 url相关的标签 501 17.4 i18n...

    JAVA WEB 开发详解:XML+XSLT+SERVLET+JSP 深入剖析与实例应用.part4

    第17章 jsp标准标签库(jstl) 490 17.1 jstl简介 490 17.2 配置jstl 491 17.3 core标签库 491 17.3.1 一般用途的标签 492 17.3.2 条件标签 496 17.3.3 迭代标签 498 17.3.4 url相关的标签 501 17.4 i18n...

    JAVA WEB 开发详解:XML+XSLT+SERVLET+JSP 深入剖析与实例应用.part3

    第17章 jsp标准标签库(jstl) 490 17.1 jstl简介 490 17.2 配置jstl 491 17.3 core标签库 491 17.3.1 一般用途的标签 492 17.3.2 条件标签 496 17.3.3 迭代标签 498 17.3.4 url相关的标签 501 17.4 i18n...

    Java学习笔记-个人整理的

    {3.4}正则表达式}{71}{section.3.4} {3.5}StringBuffer}{75}{section.3.5} {3.6}StringBuilder}{76}{section.3.6} {3.7}StringBuilder与StringBuffer的缺点}{76}{section.3.7} {3.8}内部类}{77}{section.3.8} ...

Global site tag (gtag.js) - Google Analytics