`
sassds
  • 浏览: 154274 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

el + jstl 入门

阅读更多

 

一、el + jstl 入门

1. EL 全名为Expression Language。它是一种数据访问语言

    el 表达式

2. EL 能实现如下功能:

    1) 使用变量访问web域中存储的对象    ${user }  从page, request, session, application

    2) 访问javabean的属性 ${user.address.city }  usr为javabean对象存于域中

    3) 执行基本的逻辑运算,  如大于小于的比较

    4) 直接使用隐式对象, 有11个隐式对象

    5) 调用 el 函数, 可以自定义函数

3. el 表达式用在哪里

    1) 在 jsp 页面直接输出数据

    2) 在标签中使用el直接为属性赋值

 

4. el 表达式获取数据

    在jsp页面使用el表达式可以轻松地获得web域中的对象

    并对 javabean 、 数组、 list 、 map 进行取值

 

5. 需要对 web 域中的 list 和map 集合进行迭代就需要结合 jstl 迭代标签

 

JSTL是sun公司开发的一套标签库

使用JSTL可以在页面中实现一些简单的逻辑,从而替换页面中的脚本代码

 

在页面中使用JSTL标签需完成以下2个步骤:

1) 导入jstl.jar和standard.jar这两个JSTL的jar文件。

2) 在JSP页面中使用<%@ taglib url=“”  prifix=“” %>元素导入标签库。

 

最常用的 jstl 标签为 forEach 和 if 标签

<c:foreach var=”” items=””>

<c:if test=””>

 

6. el表达式可以进行逻辑运算

 

7. el表达式中的保留关键字

 

重点: el 取值  从四个域中取

                取出javabean的属性

                取出容器的内容  数组  list map

        jstl标签

                导入jar包

                在jsp页面通过taglib指令导入标签库

                forEach迭代标签   if条件判断

 

二、 el 中的11 个隐式对象

 

隐含对象名称                    描       述

pageContext        对应于JSP页面中的pageContext对象

pageScope        代表page域中用于保存属性的Map对象[page对象中有一个保存属性(通常由getAttribute函数获得)的 map 成员变量 ]

requestScope    代表request域中用于保存属性的Map对象

sessionScope    代表session域中用于保存属性的Map对象

applicationScope    代表application域中用于保存属性的Map对象

param                表示一个保存了所有请求参数的Map对象

paramValues            表示一个保存了所有请求参数的Map对象,它对于某个请求参数,返回的是一个string[]

header                表示一个保存了所有http请求头字段的Map对象

headerValues    同上,返回string[]数组。注意:如果头里面有“-” ,例Accept-Encoding,则要headerValues[“Accept-Encoding”]

cookie            表示一个保存了所有cookie的Map对象

initParam        表示一个保存了所有web应用初始化参数的map对象

 

隐式对象的具体用途

1. pageContext 

    获得servlet上下文路径 (web应用名)

 

2. pageScope、requestScope、sessionScope、applicationScope

    准确地获得四个域中的对象

 

3. param、paramValues

    获得请求参数,一般用于做表单的回显

 

4. header、headerValues

    获得请求参数 

 

5. cookie

    获得浏览器发送的cookie

6. initParam

    获得web 初始化参数

 

三、 el 函数

1. 我们可以开发自定义函数,用于调用java类的方法

    案例: 对页面输出的内容进行 html 转义

    实现步骤:

    1) 编写一个java类, 定义一个静态方法

    去tomcat的例子中拷贝一个现成的

    %tomcat安装目录%\webapps\examples\WEB-INF\classes

    2) 编写标签库描述符(tld)文件,在tld文件中描述自定义函数

    找个现成的修改一下

    %tomcat安装目录%\webapps\examples\WEB-INF\jsp2

    3) 在jsp页面中导入标签库 即可使用函数

    <%@ taglib prefix="myfn" uri="/WEB-INF/myfn.tld" %>

<%@ taglib prefix="myfn" uri="http://www.itcast.cn/myfn" %>

 

帖子的内容 :  ${myfn:transfer(requestScope.data) }

 

2. sun 公司针对常用的字符串处理在jstl技术中提供了el函数中

 

==============el表达式==============

   数据访问语言  用于取数据

   从四个域取对象

   取javabean的属性

   取容器的元素 arr list map

 

   11个隐式对象

   pageContext、param、paramValues、header、headerValues

   pageScope、requestScope、sessionScope、applicationScope

   cookie、initParam

 

   el自定义函数

   1) 写一个java类,定义一个静态方法

   2) 在 WEB-INF目录下写 tld文件

   3) 在jsp页面引入tld标签库 直接使用

 

-------el的应用------

1, el表达式生成正确的链接

<form action="${pageContext.request.contextPath }/servlet/Servlet1"

 

project->properties->web project settings

    修改 Context root

    之后链接依然正确

 

 

2, requestScope等于request的所有属性, getAttributes()可以遍历出

    requestScope中所有内容

 

-----------------------------------

============ jstl标签==================

    导入两个jar包 Jstl.jar   Standard.jar

 

    在jsp页面要声明引入标签库

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

 

    forEach 迭代标签

    if 条件判断

 

 ----------------------

 

el表达式:

 

request.setAttribute("name","xx");

 

${name}会去4个域对象中查找page,request,session,applicaion

如果找不到显示 "" 空串

 

${usr.usrname} 调用usr.getusrname()

 

el表达式是一种表现层的技术

 

集合与数组都: ${list[3]}

map : ${map.key}

map : ${map["1"]}

 

----------------------------------

jstl简单逻辑:

 

jstl.jar

standard.jar

 

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

 

迭代items中指定的元素, 每次将元素以var为关键字存入page域

标签体执行次数为容器的长度

<c:foreach var="element" items="${arr}">

    ${element}

</c:foreach>

 

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

    ${entry.key} = ${entry.value}

</c:foreach>

 

 

<c:if test="true">

    statments

</c:if>

 

<c:if test=${1>1}>

    statments

</c:if>

 

<c:if test=${usr==null}>

    请登录

</c:if>

<c:if test=${usr!=null}>

    你好 ${usr.usrname} .

</c:if>

 

重点:

    el取值, 从4个域中取, 取出javabean的属性

    取出容器的内容, 数组,list,map

    ${ 3 mod2 }

 

    jstl标签:

        导入jar包, 在jsp页面,通过tablib指令导入标签库

        foreach迭代, if判断

--------------------------

request内置了3个map,  attributes, parameters, headers

                                                |            |

                                   requestScope   param

------------------

el:

    ${pageContext}

 

    从url中取出参数

    ${param}

    ${paramValues}

 

    取出请求头

    ${header}

    ${headerValues}

 

    ${pageScope}

    ${sessionScope.usr.usrname}

    ${requestScope} request中map

    ${applicationScope}

 

    ${cookie} 

    ${cookie.JSESSIONID.name} 

    ${cookie.JSESSIONID.value}  Map<name,cookie>

 

    所有初始化参数

    ${initParam}

 

---------------------

request.getContextPath()获得webapp名称

${pageContext.request.contextpath}

-----------------------

 

${pageContext.request.parameter}

${param}

 

------------------------------

 

native2ascii命令

往properties里, 写的中文要经过ascii编码

ResouceBoundle

 

----------------------

使用超链接提交时, 可以使用javascript

生成一个表单, 转为post方式

---------------

 

www.sina.com

sina.com    域名

www            主机名

mail        主机名

---------------------------

分享到:
评论

相关推荐

    EL&JSTL从入门到精通.zip

    EL(Expression Language)和JSTL(JavaServer Pages Standard Tag Library)是Java Web开发中的重要技术,它们在构建动态Web应用程序时发挥着关键作用。EL主要用于简化页面中的数据访问,而JSTL则提供了一系列标签...

    jstl入门示例源码

    在"jstl入门示例源码"中,你可以找到一系列展示JSTL基本功能的编译成功示例。这些示例将帮助初学者快速掌握JSTL的核心概念和用法。下面我们将深入探讨JSTL的关键组件和主要功能: 1. **Core标签库**:这是JSTL中最...

    JSTL入门IBM文档

    IBM作为Java技术的重要贡献者,提供了丰富的学习资源,包括这份“JSTL入门IBM文档”。这份文档详细介绍了JSTL的基础知识,帮助开发者快速上手。 **1. 基本语法** JSTL的基本语法主要由标签组成,它们以`开头,例如`...

    JSTL 入门:表达式语言

    ### JSTL 入门:表达式语言 #### 引言 JSTL(JavaServer Pages Standard Tag Library,即JavaServer Pages标准标记库)是一种专为简化JavaServer Pages(JSP)应用程序开发与维护而设计的技术。JSTL提供了一系列预...

    JSTL入门标准教程

    **JSTL(JavaServer Pages Standard Tag Library)入门标准教程** **一、JSTL概述** JSTL是由Apache软件基金会开发的一个JavaServer Pages(JSP)标准标签库,它提供了一系列标签来简化JSP页面的开发,使代码更加...

    maven + springmvc 入门实例

    在JSP中,可以使用EL(Expression Language)和JSTL标签来展示数据。 5. **运行与测试**: 将项目部署到Tomcat等应用服务器,通过浏览器访问配置的URL,查看SpringMVC是否正常工作。 **三、整合Maven与SpringMVC** ...

    JSTL 入门 表达式语言.mht

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

    jstl标签和el教程(基础入门)

    通过学习"jstl标签和el教程(基础入门)",你可以掌握如何在JSP页面中有效地使用JSTL和EL,提高开发效率,使代码更易于理解和维护。这个教程可能包含示例代码、解释和练习,帮助初学者快速上手。在"Jstl Learn"这个...

    JSTL入门详解

    ### JSTL入门详解 **一、JSTL1.0概述** JSTL(JavaServer Pages Standard Tag Library,JavaServer页面标准标签库)1.0版本发布于2002年6月,旨在简化JSP(JavaServer Pages)页面的开发过程,减少对脚本代码的...

    JSTL标签入门帮助文档

    **JSTL(JavaServer Pages Standard Tag Library)**是Java Web开发中的一种标准标签库,它为JSP页面提供了一套强大的、可..."JSTL入门帮助文档"会详细讲解这些概念和用法,对初学者来说是一份非常有价值的参考资料。

    Java高手真经+网络开发卷Source源码

    3. **emis16(JSP+JavaBean+Servlet+EL+JSTL+Taglib).zip** - 这部分涵盖了Java服务器页面(JSP)、JavaBean、Servlet、表达式语言(EL)和JavaServer Pages Standard Tag Library(JSTL)的综合运用。JSP用于创建...

    jstl30分钟入门

    1. 添加JSTL和EL(Expression Language)的JAR文件到Web应用的`WEB-INF/lib`目录。 2. 在JSP页面中引入JSTL库,例如:`&lt;%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%&gt;`。 3. 使用指定前缀的标签...

    JSTL简明教程,入门学习

    - EL表达式只能在支持EL的标签(如JSTL标签)中使用。例如,`${sessionScope.myname}" /&gt;`会输出session范围内的myname变量的值。 - EL可以组合使用,如`${user.firstName} ${user.lastName}!" /&gt;`会输出用户的名字...

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

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

    jstl相关教程及笔记

    **一、JSTL入门** JSTL的引入旨在减少JSP页面中的脚本let和内联Java代码,使页面更加清晰,便于维护。核心标签库`core`提供了许多基本的控制结构和操作,如迭代、条件判断、URL处理等。 1. **核心标签库(core)**...

    JSTL中英文文档

    这份"JSTL入门BIM文档"可能是针对初学者的,详细介绍了JSTL的基础知识,包括如何安装、配置和使用JSTL,以及各种标签的实例演示。通过学习,开发者可以快速掌握JSTL的基本用法,提升JSP开发效率。而"chm"格式的文档...

    JSTL中文帮助文档

    JSTL的一个关键优点是它鼓励使用表达式语言(Expression Language,EL)而不是脚本元素。EL是一种简洁的语法,可以方便地访问JavaBean属性、JSP作用域中的变量以及执行基本的算术和逻辑运算。通过使用EL,JSP页面...

    IDEA版JavaWeb从入门到精通之EL&JSTL第9天

    课程涵盖:Servlet程序、Filter过滤器、Listener监听器、JSP页面、EL表达式、JSTL标签库、jQuery框架、Cookie技术、Session会话、JSON使用、Ajax请求等全部Web开发核心技术点,并在讲解知识点过程中带领大家完成一个...

    JSP EL表达式 代码案例快速入门

    在实际开发中,结合使用EL和JSP标准标签库(JSTL),可以进一步提升代码的可维护性和可扩展性。JSTL提供了更多的标签来处理循环、条件判断、XML操作等复杂任务,与EL一起,它们共同构成了JSP 2.0之后推荐的最佳实践...

    JSTL标签详解入门首选

    最后,我们讨论**FN标签库**,即EL(Expression Language)的函数库。这些函数提供了一些额外的字符串处理、数组操作等实用功能。例如,`&lt;fn:length&gt;`可以计算字符串或数组的长度,`&lt;fn:split&gt;`可以将字符串按照指定...

Global site tag (gtag.js) - Google Analytics