- 浏览: 160956 次
- 性别:
- 来自: 北京
文章分类
最新评论
-
semmy:
赞一个
displaytag的Excel导出实践 -
李君寻:
...
displaytag的Excel导出实践 -
xiaoz170:
不太明白为嘛包这一层 class ,反而使代码更复杂。难道是为 ...
试读《基于MVC的JavaScript Web富应用开发》— 不一样的JavaScript -
lingceng:
<mirror> <id>U ...
maven usage guide
网上有很多内容讲解,这里只是提一些这次用的的小点,重点关于EL的内容。
EL的几个内置变量[1]
1.默认变量pageScope、requestScope、sessionScope、applicationScope
这4个默认变量包含Scope作用范围的参数集合,相当于被保存在java.util.Map中的某个参数。下面看简单的示例9.2:
例9.2:使用sessionScope变量的EL表达式
<%request.getSession().setAttribute("sampleValue", new Integer(10));%>
${sessionScope.sampleValue}
取得保存在Session中参数的sessionScope变量的EL表达式,“.”是property访问操作符,在这里表示从Session中取得“键”为“sampleValue”的参数,并显示出来。显示结果为“10”。
例如,${requestScope.status}便可获得servlet中通过request.setAttribute()的属性
2.默认变量param、paramValues
这两个默认变量包含请求参数的集合,param表明请求包含的参数为单一控件,paramValues表明请求包含的参数为控件数组。下面看一个简单示例9.3:
例9.3:提交请求的页面和接受的页面
<%@ page contentType="text/html; charset=UTF-8"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<body>
<form action="SampleJsp.jsp">
<input type="text" name="sampleValue" value="10">
<input type="text" name="sampleValue" value="11">
<input type="text" name="sampleValue" value="12">
<input type="text" name="sampleSingleValue" value="SingleValue">
<input type="submit" value="Submit">
</form>
</body>
</html>
在这个页面中定义了两组控件,控件名为“sampleValue”的是一套控件数组,控件名为“sampleSingleValue”的是单一控件,通过递交将请求参数传送到SampleJsp.jsp。
<%@ page contentType="text/html; charset=UTF-8"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<body>
${paramValues.sampleValue[2]}
${param.sampleSingleValue}
</body>
</html>
这是请求转发到的页面,通过EL表达式的paramValues变量得到控件数组中最后一个控件的递交参数,通过EL表达式的param变量得到单一控件的递交参数。控件数组参数的EL表达式使用“[]”来指定数组下标。本示例将显示控件数组中最后一个控件的值“12”和单一控件的值“SingleValue”。
3.默认变量header、headerValues
这两个默认变量包含请求参数头部信息的集合,header变量表示单一头部信息,headerValues则表示数组型的头部信息。
4.默认变量cookie
包含所有请求的cookie集合,集合中的每个对象对应javax.servlet.http.Cookie。
比如,这次项目中使用到${cookie.TL_CN.value}从cookie获取登录的用户名
5.默认变量initParam
包含所有应用程序初始化参数的集合。
6.默认变量pageContext
等价于page环境类javax.servlet.jsp.PageContext的实例,用来提供访问不同的请求参数。
11个默认变量几乎包含了Web应用的所有基本操作,若一个表达式不使用这些变量而直接使用参数名,那么就采用就近原则。该表达式将使用最近取得的参数值。
三个必须区别的运算符[2]
The [ ] Operator:
The restriction with the EL dot ( . ) operator is that it works only when the value on its right side is either a bean property or a map key for the value on the left. The [ ] operator on the other hand provides much flexibility as by using it we can have a List or an Array in addition to Map and Bean on the left side. So thing on the right or rather inside the [ ] operator can be - A key to some Map, a bean property or an index into some array or list that is on the left side of the operator.
Example : Using [ ] operator
Let we set an array as an attribute in a servlet as -
.......... String [ ] bigFive = {"U.S.A", "Russia", "France", "China","U.K"};
request.setAtribute{"bigFive", bigFive};
Now in a JSP having access to scope, we can write - First one is ${bigFive[0]} and that will print U.S.A
() - Used to change the precedence of operators.
[1]很全面,EL表达式和标签库介绍,几乎每个知识点都有例子,文本模式
http://www.javawind.net/help/html/jstl_el.htm
[2]重点对EL失效情况、EL运算符讲解,条理清晰
http://www.roseindia.net/jstl/jstl-el.shtml
[3]官方网站,大牛必读,貌似很卡
http://jstl.java.net/
EL的几个内置变量[1]
1.默认变量pageScope、requestScope、sessionScope、applicationScope
这4个默认变量包含Scope作用范围的参数集合,相当于被保存在java.util.Map中的某个参数。下面看简单的示例9.2:
例9.2:使用sessionScope变量的EL表达式
<%request.getSession().setAttribute("sampleValue", new Integer(10));%>
${sessionScope.sampleValue}
取得保存在Session中参数的sessionScope变量的EL表达式,“.”是property访问操作符,在这里表示从Session中取得“键”为“sampleValue”的参数,并显示出来。显示结果为“10”。
例如,${requestScope.status}便可获得servlet中通过request.setAttribute()的属性
2.默认变量param、paramValues
这两个默认变量包含请求参数的集合,param表明请求包含的参数为单一控件,paramValues表明请求包含的参数为控件数组。下面看一个简单示例9.3:
例9.3:提交请求的页面和接受的页面
<%@ page contentType="text/html; charset=UTF-8"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<body>
<form action="SampleJsp.jsp">
<input type="text" name="sampleValue" value="10">
<input type="text" name="sampleValue" value="11">
<input type="text" name="sampleValue" value="12">
<input type="text" name="sampleSingleValue" value="SingleValue">
<input type="submit" value="Submit">
</form>
</body>
</html>
在这个页面中定义了两组控件,控件名为“sampleValue”的是一套控件数组,控件名为“sampleSingleValue”的是单一控件,通过递交将请求参数传送到SampleJsp.jsp。
<%@ page contentType="text/html; charset=UTF-8"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<body>
${paramValues.sampleValue[2]}
${param.sampleSingleValue}
</body>
</html>
这是请求转发到的页面,通过EL表达式的paramValues变量得到控件数组中最后一个控件的递交参数,通过EL表达式的param变量得到单一控件的递交参数。控件数组参数的EL表达式使用“[]”来指定数组下标。本示例将显示控件数组中最后一个控件的值“12”和单一控件的值“SingleValue”。
3.默认变量header、headerValues
这两个默认变量包含请求参数头部信息的集合,header变量表示单一头部信息,headerValues则表示数组型的头部信息。
4.默认变量cookie
包含所有请求的cookie集合,集合中的每个对象对应javax.servlet.http.Cookie。
比如,这次项目中使用到${cookie.TL_CN.value}从cookie获取登录的用户名
5.默认变量initParam
包含所有应用程序初始化参数的集合。
6.默认变量pageContext
等价于page环境类javax.servlet.jsp.PageContext的实例,用来提供访问不同的请求参数。
11个默认变量几乎包含了Web应用的所有基本操作,若一个表达式不使用这些变量而直接使用参数名,那么就采用就近原则。该表达式将使用最近取得的参数值。
三个必须区别的运算符[2]
The [ ] Operator:
The restriction with the EL dot ( . ) operator is that it works only when the value on its right side is either a bean property or a map key for the value on the left. The [ ] operator on the other hand provides much flexibility as by using it we can have a List or an Array in addition to Map and Bean on the left side. So thing on the right or rather inside the [ ] operator can be - A key to some Map, a bean property or an index into some array or list that is on the left side of the operator.
Example : Using [ ] operator
Let we set an array as an attribute in a servlet as -
.......... String [ ] bigFive = {"U.S.A", "Russia", "France", "China","U.K"};
request.setAtribute{"bigFive", bigFive};
Now in a JSP having access to scope, we can write - First one is ${bigFive[0]} and that will print U.S.A
() - Used to change the precedence of operators.
[1]很全面,EL表达式和标签库介绍,几乎每个知识点都有例子,文本模式
http://www.javawind.net/help/html/jstl_el.htm
[2]重点对EL失效情况、EL运算符讲解,条理清晰
http://www.roseindia.net/jstl/jstl-el.shtml
[3]官方网站,大牛必读,貌似很卡
http://jstl.java.net/
发表评论
-
Hack struts2 json plugin: dynamically set includeProperty
2013-07-26 11:27 1296Here is not basic use of stru ... -
Calender to Date snip
2013-05-30 10:25 945The format is not stored in the ... -
Gson切面日志实践
2013-02-26 17:47 2399背景 应用切面做日志记录,记录操作实体详情时可以使用JSO ... -
读《深入分析Java Web技术内幕》
2013-01-16 21:37 3346这里这本书的预读章节,看完预读部分,解答了一些疑惑 ... -
Java泛型
2012-11-08 23:57 1623Java的泛型是5.0的特性,自己的业务代码中或许较少使用 ... -
lucene全文索引
2012-11-08 01:45 1512总听说lucene,总听到“全文检索”,一直不大明白什么意 ... -
displaytag的汇总功能
2012-11-07 10:39 1083displaytag 有列汇总功能,以前不知道step1:需要 ... -
native2ascii使用
2012-10-29 13:56 1220native2ascii -[options] [inputf ... -
有效使用Java异常
2012-10-26 15:58 931Java的异常机制是一大优点,可以快速定位错误。但在实际开 ... -
从springside看到的
2012-10-26 00:27 1175springside是一个JAVAEE的开发框架,作者运用 ... -
JSP关于设置页面属性的理解
2012-10-18 14:59 2857想在代码中设置了一个属性,然后再页面中可以用${nam ... -
memcache simple practice in Java
2012-09-24 17:58 1665Memcache is C/S structure, serv ... -
displaytag中使用struts的国际化资源
2012-07-30 19:09 1409使用displaytag打印表格的时候,表头有时需要使 ... -
newInstance() and new
2012-07-11 14:00 1054相同点 newInstance() and new can ... -
Java Decompile
2012-07-05 15:58 996较早的eclipse的Java反编译是jad.exe ... -
Use JUnit
2012-07-05 13:20 933Junit A programmer-oriented te ... -
Use JUnit (2)
2012-07-05 13:04 904Junit3 diff Junit4 包命名从 ... -
JSP中相对路径问题
2012-05-13 16:35 92572012-11-2修改: 在IE8上有时出问题:IE8有时会忽 ... -
《Java语言精粹》读书笔记(3)
2012-04-27 15:13 929集合 数据结构中的关于大型结构在java.util中提 ... -
《Java语言精粹》读书笔记(2)
2012-04-27 14:37 1029Package Like most objec ...
相关推荐
JSTL,全称JavaServer Pages Standard Tag Library,是一个用于JSP页面的开源标签库,由Apache Jakarta项目维护。它旨在提高JSP开发的效率,通过提供一系列预定义的标签来简化常见任务,如控制流、迭代、XML处理、...
10.1 JSP标准标签库 10.2 核心标签库 10.3 其他JSTL标签库 10.4 使用标签文件 10.5 小 结
#### 小结 通过上述介绍可以看出,JSTL为JSP开发者提供了强大的功能,可以极大地简化页面逻辑的编写工作。通过使用这些标签,可以实现更为清晰、简洁的代码结构,同时也有助于提高程序的可读性和可维护性。在实际...
### 小结 本文详细介绍了JSTL中的几种常用标签库及其主要标签的功能与用法。通过这些标签的合理运用,可以极大地提高JSP页面的可读性和可维护性,同时也能有效地减少JSP页面中的Java脚本代码量,让开发者能够更加...
1.5 小结 13 第2章 使用Jakarta Commons来简化开发 14 2.1 Jakarta Commons的功能和用法 14 2.2 小结 18 第3章 Java EE容器 19 3.1 什么是容器 19 3.2 Tomcat的安装和使用 20 3.3 小结 25 第4章 在...
你需要确保在项目的类路径下包含了JSTL的jar文件,或者在Maven/Gradle等构建工具中添加对应的依赖。 6. **Struts工作流程**: - 用户发送请求到达Servlet容器。 - 请求被Struts2 Filter截获。 - Filter根据`...
第9章 页面控制利器——JSTL标签库 186 ?视频讲解:85分钟9.1 JSTL标签库简介 186 9.2 JSTL的下载与配置 187 9.2.1 下载JSTL标签库 188 9.2.2 配置JSTL 188 9.3 表达式标签 ...211 9.8 小结 213 9.9 习题 213
视图部分则通过丰富的标签库呈现用户界面,这些标签使用OGNL(Object Graph Navigation Language)表达式作为基础,不仅支持OGNL,还兼容JSTL, Groovy和Velocity等表达式。Struts2的标签库定义在URI为 `/struts-tags...
对 JSP 的 简单总结 ,看到这个就可以 回忆起 你学习的jsp 的经历 ...
1.11 小结 36 第2章 xml名称空间 38 2.1 声明名称空间 38 2.2 名称空间在元素和属性中的运用 39 2.2.1 名称空间在元素中的运用 39 2.2.2 默认名称空间 41 2.2.3 名称空间在属性中的运用 42 2.3 名称空间和dtd...
1.11 小结 36 第2章 xml名称空间 38 2.1 声明名称空间 38 2.2 名称空间在元素和属性中的运用 39 2.2.1 名称空间在元素中的运用 39 2.2.2 默认名称空间 41 2.2.3 名称空间在属性中的运用 42 2.3 名称空间和dtd...
1.11 小结 36 第2章 xml名称空间 38 2.1 声明名称空间 38 2.2 名称空间在元素和属性中的运用 39 2.2.1 名称空间在元素中的运用 39 2.2.2 默认名称空间 41 2.2.3 名称空间在属性中的运用 42 2.3 名称空间和dtd...
1.11 小结 36 第2章 xml名称空间 38 2.1 声明名称空间 38 2.2 名称空间在元素和属性中的运用 39 2.2.1 名称空间在元素中的运用 39 2.2.2 默认名称空间 41 2.2.3 名称空间在属性中的运用 42 2.3 名称空间和dtd...
第一部分 Strut 2:一个全新的框架 第1章 Struts 2:现代Web框架 2 1.1 Web应用程序:快速学习 2 1.1.1 构建Web应用程序 2 1.1.2 基础技术简介 3 1.1.3 深入研究 6 1.2 Web应用程序框架 7 ...15.7 小结 332
**小结:** 确保开发环境(如IDE)中的JDK版本与项目实际使用的版本保持一致是避免此类问题的关键。 --- #### 2. JSP标签库配置问题 **异常表现:** 当出现类似 `org.apache.jasper.JasperException: The ...
1.8 小结 第2章 快速入门 2.1 实例功能概述 2.1.1 比Hello World更适用的实例 2.1.2 实例功能简介 2.2 环境准备 2.2.1 创建库表 2.2.2 建立工程 2.2.3 类包及Spring配置文件规划 2.3 持久层 2.3.1 建立领域对象 ...
1.8 小结 第2章 快速入门 2.1 实例功能概述 2.1.1 比Hello World更适用的实例 2.1.2 实例功能简介 2.2 环境准备 2.2.1 创建库表 2.2.2 建立工程 2.2.3 类包及Spring配置文件规划 2.3 持久层 2.3.1 建立领域对象 ...
### 小结 通过上述介绍,我们可以了解到EL 和 JSTL 在JSP页面开发中的重要作用。EL 使得开发者能够更加简洁地访问各种作用域内的对象,而 JSTL 标签库则提供了一系列功能强大的标签,大大提高了页面开发的效率和可...
这是一个非常小的全栈Web应用程序,仅用作示例,仅用于演示目的。 发展 本地运行 结帐代码 git clone https://github.com/colinbut/sales-order-system.git 进行本地构建 mvn clean package ...将编译源代码,打包...