struts2 返回页面数据小测试

用户通过查询,后台得到查询数据,那么struts2这么把查询的数据,在页面显示?做个小测试。

  1. 创建项目
  2. 导入jar包(如果不知道导入哪些jar,参考前面章节)测试jar包为2.5
  3. 配置web.xml
  4. 写测试
  1. 项目结构图

  2. web.xml
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0">
  <display-name>struts2</display-name>
  <welcome-file-list>
    <welcome-file>index.jsp</welcome-file>
  </welcome-file-list>
  
  <!-- 搭建struts2前端控制器,用来过滤用户的请求,提供统一的接口 -->
	<filter>
		<filter-name>struts</filter-name>
		<filter-class>org.apache.struts2.dispatcher.filter.StrutsPrepareAndExecuteFilter</filter-class>
	</filter>
	<filter-mapping>
		<filter-name>struts</filter-name>
		<url-pattern>/*</url-pattern>
	</filter-mapping>
</web-app>

3.ReturnValue Action

package com.struts.action;

import java.util.ArrayList;
import java.util.List;

public class RetunValue {
	private User user;
	private List<User> users;

	public User getUser() {
		return user;
	}

	public void setUser(User user) {
		this.user = user;
	}

	public List<User> getUsers() {
		return users;
	}

	public void setUsers(List<User> users) {
		this.users = users;
	}

	public String listUser(){
		List<User> list = new ArrayList<User>();
		list.add(new User("刘备", "liubei", "三国蜀国君主"));
		list.add(new User("关羽", "guanyu", "关二爷"));
		list.add(new User("张飞", "zhangfei", "张翼德"));
		list.add(new User("诸葛亮", "zhugeliang", "卧龙"));
		this.users = list;
		return "user";
	}

}

4. User测试对象

package com.struts.action;

public class User {

	private String userName;
	private String passWorld;
	private String address;
	public String getUserName() {
		return userName;
	}
	public void setUserName(String userName) {
		this.userName = userName;
	}
	public String getPassWorld() {
		return passWorld;
	}
	public void setPassWorld(String passWorld) {
		this.passWorld = passWorld;
	}
	public String getAddress() {
		return address;
	}
	public void setAddress(String address) {
		this.address = address;
	}
	@Override
	public String toString() {
		return "User [userName=" + userName + ", passWorld=" + passWorld + ", address=" + address + "]";
	}
	public User(String userName, String passWorld, String address) {
		super();
		this.userName = userName;
		this.passWorld = passWorld;
		this.address = address;
	}
	public User() {
		super();
	}
}

5.写过上面的,配置下struts.xml配置

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
        "-//Apache Software Foundation//DTD Struts Configuration 2.5//EN"
        "http://struts.apache.org/dtds/struts-2.5.dtd">

<struts>
	<constant name="struts.enable.DynamicMethodInvocation" value="true"></constant>

	<package name="ac" extends="struts-default" namespace="/uu">
		<global-allowed-methods>regex:.*</global-allowed-methods>
		<action name="*_*" class="com.struts.action.{1}" method="{2}">
			<result name="user">/user.jsp</result>
		</action>
	</package>
</struts>

6. index.jsp页面

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<%
	String path = request.getContextPath();
	String basePath = request.getScheme() + "://"
			+ request.getServerName() + ":" + request.getServerPort()
			+ path;
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>
	<a href="<%=basePath %>/uu/RetunValue_listUser">遍历查询用户</a><br/>
</body>
</html>

7.user.jsp页面

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<%@taglib prefix="s" uri="/struts-tags" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>
	<table style="widows: 300px;" cellspacing="0" border="1px" bordercolor="red" align="center">
		<caption>----user遍历测试----</caption>
		<tr>
			<th>序号</th>
			<th>姓名</th>
			<th>密码</th>
			<th>地址</th>
		</tr>
		<s:iterator value="users" status="e">
			<!-- even为偶数   odd为奇数-->
			<s:if test="#e.even">
				<tr bgcolor="red;">
					<td><s:property value="#e.count"/></td>
					<td><s:property value="userName"/></td>
					<td><s:property value="passWorld"/></td>
					<td><s:property value="address"/></td>
				</tr>
			</s:if>
			<s:else>
				<tr bgcolor="blue">
					<td><s:property value="#e.count"/></td>
					<td><s:property value="userName"/></td>
					<td><s:property value="passWorld"/></td>
					<td><s:property value="address"/></td>
				</tr>
			</s:else>
		</s:iterator>
	</table>
	<h3>分页数字测试</h3>
	<s:iterator begin="1" end="10" var="i">
		<s:property value="#i"/>
	</s:iterator>
	<table style="widows: 300px;" cellspacing="0" border="1px" bordercolor="red" align="center">
		<caption>----user遍历测试----</caption>
		<tr>
			<th>序号</th>
			<th>姓名</th>
			<th>密码</th>
			<th>地址</th>
		</tr>
		<s:iterator value="users" status="e">
			<!-- even为偶数   odd为奇数-->

				<tr <s:if test="#e.even">bgcolor="blue"</s:if> 
					<s:else>bgcolor="red"</s:else>
				>
					<td><s:property value="#e.count"/></td>
					<td><s:property value="userName"/></td>
					<td><s:property value="passWorld"/></td>
					<td><s:property value="address"/></td>
				</tr>
		</s:iterator>
	</table>

</body>
</html>

8.测试结果页面

时间: 2024-12-28 14:41:55

struts2 返回页面数据小测试的相关文章

转载:深入了解Struts2返回JSON数据的原理及具体应用范例

早在我刚学Struts2之初的时候,就想写一篇文章来阐述Struts2如何返回JSON数据的原理和具体应用了,但苦于一直忙于工作难以抽身, 渐渐的也淡忘了此事.直到前两天有同事在工作中遇到这个问题,来找我询问,我又细细地给他讲了一遍之后,才觉得无论如何要抽一个小时的时间来写这篇文章, 从头到尾将Struts2与JSON的关系说清楚. 其实网络中,关于这个问题的答案已是海量,我当初也是从这海量的答案中吸收精华,才将“Struts2返回JSON数据”这个问题搞清楚的.但 是这些海量的答案,有一个共同

springmvc 返回页面数据

springmvc 如何把获取的数据返回到页面呢? 下面进行小测试 通过HttpServletRequest @RequestMapping(value="returnValue1.do") public String returnValue1(HttpServletRequest request){ request.setAttribute("user", "HttpServletRequest"); return "value&qu

Struts2返回Json数据(使用Struts2插件)

这篇我将介绍如何使用Struts2的struts2-json-plugin.jar插件返回JSON数据. 一.其中主要步骤有: 1.将struts2-json-plugin.jar插件拷贝到项目的"/WEB-INF/lib"文件夹下: 2.编写Action类文件: 3.在struts.xml文件中配置这个Action,这个Action所在的"<package.../>"必须继承”json-default“,Action的Result类型为json,即ty

Struts2返回json数据xml中配置

<?xml version="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> <!-- 登陆配置

struts2返回json数据

<!-- ajax注册 --> <package name="jsonstruts2" namespace="/json" extends="json-default"> <action name="jsonResult" method="{1}" class="com.ProfitAction"> <param name="id&qu

spring mvc 返回页面数据

handler package com.stone.controller; import java.util.Map; import javax.servlet.http.HttpServletRequest; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.web.bind.annotation.RequestMap

struts2返回json格式的数据

描述:当前端使用ajax发送请求到action时,如果需要返回json格式的数据,如对象集合.具体做法如下: 前端代码: <%@ page language="java" import="java.util.*" pageEncoding="utf-8"%> <% String path = request.getContextPath(); String basePath = request.getScheme()+"

(转)Struts2返回JSON对象的方法总结

转自:http://kingxss.iteye.com/blog/1622455 如果是作为客户端的HTTP+JSON接口工程,没有JSP等view视图的情况下,使用Jersery框架开发绝对是第一选择.而在基于Spring3 MVC的架构下,对HTTP+JSON的返回类型也有很好的支持.但是,在开发工作中,对功能的升级是基于既定架构是很常见的情况.本人碰到需要用开发基于Struts2的HTTP+JSON返回类型接口就是基于既定框架结构下进行的. Struts2返回JSON有两种方式:1.使用S

JavaEE-stuts2返回json数据简单实现

CSDN的ASK频道,看到关于struts2返回json数据的问题,整理了下struts2的简单demo,完成JSON数据的展示. Action定义 public class ValidateAction extends ActionSupport { private static final long serialVersionUID = 1L; private String username; public Map<String, Object> result = new HashMap&