EL表达式获取值栈数据
来源:互联网 发布:鸡兔同笼java语言编程 编辑:程序博客网 时间:2024/04/26 01:11
---------------------siwuxie095
EL 表达式获取值栈数据
1、导入JSTL 相关包,下载链接:
(1)http://tomcat.apache.org/taglibs/standard/
(2)http://archive.apache.org/dist/jakarta/taglibs/standard/binaries/
2、使用JSTL 标签 +EL 表达式 获取值栈数据
3、具体实现
(1)编写实体类
User.java:
package com.siwuxie095.entity;
// User实体类
public class User {
private String username;
private String password;
private String address;
public String getUsername() {
return username;
}
publicvoid setUsername(String username) {
this.username = username;
}
public String getPassword() {
return password;
}
publicvoid setPassword(String password) {
this.password = password;
}
public String getAddress() {
return address;
}
publicvoid setAddress(String address) {
this.address = address;
}
@Override
public String toString() {
return"User [username=" + username +", password=" + password
+", address=" + address + "]";
}
}
(2)编写Action
ListAction.java:
package com.siwuxie095.action;
import java.util.ArrayList;
import java.util.List;
import com.opensymphony.xwork2.ActionSupport;
import com.siwuxie095.entity.User;
public class ListActionextends ActionSupport {
/*
* (1)在 Action中定义 List集合对象
*
*因为总归是要 new的,所以就在这里创
*建,而不是声明了
*/
private List<User> list=new ArrayList<User>();
/*
* (2)提供 List集合对象的 get方法即可
*/
public List<User> getList() {
return list;
}
@Override
public String execute()throws Exception {
/*
*如果上面仅仅是声明了List集合对象,
*那么就要在这里创建,即 new出来
*/
/*
* (3)在执行的方法中,向 List集合对象中设置值
*/
User user1=new User();
user1.setUsername("小白");
user1.setPassword("8888");
user1.setAddress("中国");
User user2=new User();
user2.setUsername("小黑");
user2.setPassword("4444");
user2.setAddress("美国");
list.add(user1);
list.add(user2);
return SUCCESS;
}
}
(3)配置Action
struts.xml:
<?xmlversion="1.0"encoding="UTF-8"?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
"http://struts.apache.org/dtds/struts-2.3.dtd">
<struts>
<packagename="demo"extends="struts-default"namespace="/">
<actionname="list"class="com.siwuxie095.action.ListAction">
<resultname="success">/list.jsp</result>
</action>
</package>
</struts>
(4)编写页面
list.jsp:
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!--引入 JSTL标签库 -->
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<!DOCTYPE html PUBLIC"-//W3C//DTD HTML 4.01 Transitional//EN""http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<metahttp-equiv="Content-Type"content="text/html; charset=UTF-8">
<title>List</title>
</head>
<body>
<!--使用 JSTL标签 + EL表达式获取值栈中 List集合的数据 -->
<c:forEachitems="${list }"var="user">
${user.username }
${user.password }
${user.address }
<br/>
</c:forEach>
</body>
</html>
(5)访问路径
http://localhost:8080/工程名/list.action
为什么EL 表达式能获取值栈数据
1、EL 表达式本身是用于获取域对象中的值
2、域对象中值的存取
(1)向域对象中放值使用setAttribute() 方法
(2)从域对象中获取值使用getAttribute() 方法
3、Struts2 底层增强了Request 对象的 getAttribute() 方法
该增强是在Struts2核心过滤器的doFilter() 方法中做的,在
其中调用wrapRequest()方法
4、从Request 域中获取值
(1)如果能获取到,直接返回
(2)如果获取不到,会到值栈中把值获取出来,放到域对象中
5、查看源代码
(1)
(2)
(3)
(4)
6、不建议使用EL 表达式获取值栈数据(性能低下)
【made by siwuxie095】
- EL表达式获取值栈数据
- El表达式获取数据
- el表达式获取数据
- EL表达式获取值栈数据的源码分析
- JSP EL表达式获取数据
- 使用EL表达式获取数据
- 黑马day06 EL表达式获取数据
- jsp中EL表达式获取数据
- EL表达式 JSTL标签获取数据
- EL 表达式的用法(一)--获取数据
- el表达式和获取form表单数据
- EL表达式获取值错误
- EL表达式 获取不到值
- javascript获取el表达式的值
- EL表达式获取集合中的值
- JS获取EL表达式的值
- el表达式不显示获取的值
- EL表达式获取页面属性值
- GitHub如何编写README.md项目自述文件
- IOS逆向--MSHookFunction使用
- Fabled Rooks UVA
- 使用@InitBinder进行数据转换
- 任务2: 肤色检测
- EL表达式获取值栈数据
- maven根据build输入导入不同的配置
- 添加节点
- 选购扫地机器人必须要懂的三件事
- input常用
- solr的IKAnalyzer中文分词器配置
- 个人模板 堆
- 什么是继承
- CAD-DUCT.Solids.v2.28.062\