`
chaoyi
  • 浏览: 309550 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

SSH action+struts.xml+jsp

 
阅读更多

StandardsAction 控制类

package cn.action;
import java.util.List;
import cn.biz.StandardsBiz;
import cn.entity.Standards;
import com.opensymphony.xwork2.ActionSupport;
@SuppressWarnings("serial")
public class StandardsAction extends ActionSupport {
	private StandardsBiz standardsBiz;
	private List<Standards> standards;
	private Standards standard;
	private int pageIndex;
	private int pagecount;
	private Integer stdId;
	private String stdNum;
	private Integer[] stdIds; 
	public String toList() throws Exception{
		Integer pageSize = 4;
		pagecount = (int)Math.ceil((double)standardsBiz.findAll().size()/pageSize);
		if(pageIndex <= pagecount){
			if(stdNum == null){
				standards = standardsBiz.findByPage(pageIndex, pageSize);
			}else{
				standards = standardsBiz.findByPageOfsearch(pageIndex, pageSize, stdNum);
			}
		}else{
			if(stdNum == null){
				standards = standardsBiz.findByPage(pagecount, pageSize);
				pageIndex = pagecount;
			}else{
				standards = standardsBiz.findByPageOfsearch(pagecount, pageSize, stdNum);
				pageIndex = pagecount;
			}
		}
		return SUCCESS;
	}
	public String toUpdate() throws Exception{
		if(standard != null){
			standardsBiz.update(standard);
			return "tolist";
		}
		standard = standardsBiz.findById(stdId);
		return SUCCESS;
	}
	public String toAdd() throws Exception{
		if(standard != null){
			standardsBiz.insert(standard);
			return "tolist";
		}
		return SUCCESS;
	}
	public String toDelete() throws Exception{
		System.out.println(stdIds);
		standardsBiz.deleteByIds(stdIds);
		return SUCCESS;
	}
	public StandardsBiz getStandardsBiz() {
		return standardsBiz;
	}
	public void setStandardsBiz(StandardsBiz standardsBiz) {
		this.standardsBiz = standardsBiz;
	}
	public List<Standards> getStandards() {
		return standards;
	}
	public void setStandards(List<Standards> standards) {
		this.standards = standards;
	}
	public Standards getStandard() {
		return standard;
	}
	public void setStandard(Standards standard) {
		this.standard = standard;
	}
	public Integer getPageIndex() {
		if(pageIndex<=0){
			return 1;
		}
		return pageIndex;
	}
	public int getPagecount() {
		return pagecount;
	}
	public void setPagecount(int pagecount) {
		this.pagecount = pagecount;
	}
	public String getStdNum() {
		return stdNum;
	}
	public void setStdNum(String stdNum) {
		this.stdNum = stdNum;
	}
	public void setPageIndex(int pageIndex) {
		this.pageIndex = pageIndex;
	}
	public Integer getStdId() {
		return stdId;
	}
	public void setStdId(Integer stdId) {
		this.stdId = stdId;
	}
	public Integer[] getStdIds() {
		return stdIds;
	}
	public void setStdIds(Integer[] stdIds) {
		this.stdIds = stdIds;
	}
}

 

struts.xml 配置

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC 
"-//Apache Software Foundation//DTD Struts Configuration 2.1//EN" 
"http://struts.apache.org/dtds/struts-2.1.dtd">
<struts>
	<constant name="struts.i18n.encoding" value="utf-8"></constant>
	<constant name="struts.ui.theme" value="simple"></constant>  
	<constant name="struts.configuration.xml.reload" value="true"></constant>  
	<package name="cn.action" extends="struts-default" namespace="/">
		<!-- 显示列表 -->
		<action name="toList" class="cn.action.StandardsAction" 
			method="toList">
			<result name="success">list.jsp</result>
		</action>
		<!-- 修改 -->
		<action name="toUpdate" class="cn.action.StandardsAction"
			method="toUpdate">
			<result name="success">update.jsp</result>
			<result name="tolist">index.jsp</result>
		</action>
		<!-- 增加 -->
		<action name="toAdd" class="cn.action.StandardsAction"
			method="toAdd">
			<result name="success">add.jsp</result>
			<result name="tolist">index.jsp</result>
		</action>
		<!-- 删除 -->
		<action name="toDelete" class="cn.action.StandardsAction"
			method="toDelete">
		</action>
	</package>
</struts>    

 

index.jsp 页面

<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<base href="<%=basePath%>">
<title>My JSP 'index.jsp' starting page</title>
</head>
<body>
<!-- 跳转页面 -->
<c:redirect url="toList.action"/>
</body>
</html>

 

list.jsp 页面

<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<%@ taglib uri="/struts-tags" prefix="s"%>
<%
	String path = request.getContextPath();
	String basePath = request.getScheme() + "://"
			+ request.getServerName() + ":" + request.getServerPort()
			+ path + "/";
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<base href="<%=basePath%>">
<title>标准信息列表</title>
<style type="text/css">  
*{ margin:0; padding:0; }  
body{ font-family:"宋体"; color:#333; font-size:14px; background:#fff;}  
a{ color:#069; text-decoration:underline;}  
a:hover{ color:#f60; text-decoration:underline;}  
h3{ text-align:center; line-height:40px;}  
table{ margin:0 auto; line-height:23px;}  
table tr th{ background:#B8860B;}  
table tr td{ padding:0 8px;}  
table .tdBg td{ background:#999}  
</style>  
<script type="text/javascript">
	function $(id) {
		return document.getElementById(id);
	}
	//全选  
	function checkAll(val) {
		var arr = document.getElementsByName("stdIds");
		//循环全选和非全选  
		for ( var i = 0; i < arr.length; i++) {
			arr[i].checked = val;
		}
	}
	//删除多行  
	function delRow() {
		var stdIds = document.getElementsByName("stdIds");
		var count = 0;
		var arr = new Array();
		for ( var i = 0; i < stdIds.length; i++) {
			if (stdIds[i].checked == true) {
				arr[count] = i;
				count++;
			}
		}
		if (count == 0) {
			alert("请选择你要删除的行");
		} else {
			if (confirm("你确定要删除第" + arr + "条吗?")) {
				for ( var i = 0; i < arr.length; i++) {
					//调用 ajax
					ajaxDelete(stdIds[arr[i]].value);
				}
				alert("删除成功");
				window.location.href="toList.action";
			}
		}
	}
	//删除 ajax
	function ajaxDelete(stdIdsVal) {
		var xmlHttp = new XMLHttpRequest();
		var url = "toDelete.action?stdIds=" + escape(stdIdsVal);
		xmlHttp.open("GET", url);//设置一个请求  
		xmlHttp.onreadystatechange = function() { //设置请求完成之后处理的回调函数    
			if (xmlHttp.readyState == 4) {//数据返回完毕    
				if (xmlHttp.status == 200) {//HTTP操作正常    
					var text = xmlHttp.responseText;//接收返回的内容    
					if (text != null && text != "") {
						alert(text);
					}
				}
			}
		};
		xmlHttp.send(null);//发送请求,不传递任何参数    
	}
</script>
</head>
<body>
	<div style=" border: 1px solid #333; padding: 8px; width: 780px; margin: 0 auto;">
		<h3>标准信息列表</h3>
		<form action="toList.action" method="post">
			<table border="1" align="center">
				<tr>
					<td colspan="7"><input type="text" name="stdNum"> <input
						type="submit" value="提交检索"> <input type="button"
						onclick="window.open('toAdd.action')" value="新增标准"> <input
						type="button" onclick="delRow();" value="删除标准"></td>
				</tr>
				<tr>
					<th><input type="checkbox" onclick="checkAll(this.checked)">
					</th>
					<th>标准号</th>
					<th>中文名称</th>
					<th>版本</th>
					<th>发布日期</th>
					<th>实施日期</th>
					<th>操作</th>
				</tr>
				<s:iterator value="Standards" status="st">
					<tr <s:if test="#st.even">class="tdBg"</s:if>>
						<td><input type="checkbox" name="stdIds"
							value="<s:property value='stdId'/>" /></td>
						<td><a
							href="toUpdate.action?stdId=<s:property value='stdId'/>"><s:property
									value="stdId"></s:property>
						</a>
						</td>
						<td><s:property value="stdNum"></s:property>
						</td>
						<td><s:property value="zhname"></s:property>
						</td>
						<td><s:date name="releaseDate" format="yyyy-MM-dd"></s:date>
						</td>
						<td><s:date name="implDate" format="yyyy-MM-dd"></s:date>
						</td>
						<td><a
							href="toUpdate.action?stdId=<s:property value='stdId'/>">修改</a>
						</td>
					</tr>
				</s:iterator>
				<tr>
					<td colspan="7"><a href="toList.action?pageIndex=1">首页</a>| <a
						href="toList.action?pageIndex=<s:property value='pageIndex-1'/>">上一页</a>|
						<a
						href="toList.action?pageIndex=<s:property value='pageIndex+1'/>">下一页</a>|
						<a href="toList.action?pageIndex=<s:property value='pagecount'/>">末页</a>
						&nbsp;&nbsp; 第<s:property value="pageIndex" />页/共<s:property
							value="pagecount" />页</td>
				</tr>
			</table>
		</form>
	</div>
</body>
</html>

 

效果图:

 

update.jsp 页面

<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<%@ taglib uri="/struts-tags" prefix="s"%>
<%
	String path = request.getContextPath();
	String basePath = request.getScheme() + "://"
			+ request.getServerName() + ":" + request.getServerPort()
			+ path + "/";
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<base href="<%=basePath%>">
<title>修改标准信息</title>
<style type="text/css">  
*{ margin:0; padding:0; }  
body{ font-family:"宋体"; color:#333; font-size:14px; background:#fff;}  
h3{ text-align:center; line-height:40px;}  
table{ margin:0 auto; line-height:23px;}  
table input[type="text"]{ border:1px solid #333; height:18px; line-height:18px; padding-left:6px;}  
table select{ border:1px solid #333; }  
</style>  
</head>
<body>
	<div style=" padding: 8px; border: 1px solid #333; width: 480px; margin: 0 auto;">
		<form action="toUpdate.action" method="post">
			<h3>修改标准信息</h3>
			<table>
				<tr>
					<td>*标准号:<input type="hidden"
						value="<s:property value='standard.stdId'/>" name="standard.stdId">
					</td>
					<td><input type="text"
						value="<s:property value='standard.stdNum'/>"
						name="standard.stdNum">
					</td>
				</tr>
				<tr>
					<td>*中文名称:</td>
					<td><input type="text"
						value="<s:property value='standard.zhname'/>"
						name="standard.zhname">
					</td>
				</tr>
				<tr>
					<td>*版本:</td>
					<td><input type="text"
						value="<s:property value='standard.stdVersion'/>"
						name="standard.stdVersion">
					</td>
				</tr>
				<tr>
					<td>*关键字/词:</td>
					<td><input type="text"
						value="<s:property value='standard.keys'/>" name="standard.keys">
					</td>
				</tr>
				<tr>
					<td>*发布日期(yyyy-MM-dd):</td>
					<td><input type="text"
						value="<s:date name='standard.releaseDate' format='yyyy-MM-dd'></s:date>"
						name="standard.releaseDate">
					</td>
				</tr>
				<tr>
					<td>*实施日期(yyyy-MM-dd):</td>
					<td><input type="text"
						value="<s:date name='standard.implDate' format='yyyy-MM-dd'></s:date>"
						name="standard.implDate">
					</td>
				</tr>
				<tr>
					<td>*附件:</td>
					<td><input type="text"
						value="<s:property value='standard.packagePath'/>"
						name="standard.packagePath">
					</td>
				</tr>
				<tr>
					<td colspan="2"><input type="submit" value="保存">&nbsp;<input
						type="button" value="取消">
					</td>
				</tr>
			</table>
		</form>
	</div>
</body>
</html>

 

效果图:

 

add.jsp 页面

<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<%@ taglib uri="/struts-tags" prefix="s"%>
<%
	String path = request.getContextPath();
	String basePath = request.getScheme() + "://"
			+ request.getServerName() + ":" + request.getServerPort()
			+ path + "/";
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<base href="<%=basePath%>">
<title>新增标准信息</title>
<style type="text/css">  
*{ margin:0; padding:0; }  
body{ font-family:"宋体"; color:#333; font-size:14px; background:#fff;}  
h3{ text-align:center; line-height:40px;}  
table{ margin:0 auto; line-height:23px;}  
table input[type="text"]{ border:1px solid #333; height:18px; line-height:18px; padding-left:6px;}  
table select{ border:1px solid #333; }  
</style>  
</head>
<body>
	<div style=" padding: 8px; border: 1px solid #333; width: 480px; margin: 0 auto;">
		<form action="toAdd.action" method="post">
			<h3>新增标准信息</h3>
			<table>
				<tr>
					<td>*标准号:</td>
					<td><input type="text" name="standard.stdNum">
					</td>
				</tr>
				<tr>
					<td>*中文名称:</td>
					<td><input type="text" name="standard.zhname">
					</td>
				</tr>
				<tr>
					<td>*版本:</td>
					<td><input type="text" name="standard.stdVersion">
					</td>
				</tr>
				<tr>
					<td>*关键字/词:</td>
					<td><input type="text" name="standard.keys">
					</td>
				</tr>
				<tr>
					<td>*发布日期(yyyy-MM-dd):</td>
					<td><input type="text" name="standard.releaseDate">
					</td>
				</tr>
				<tr>
					<td>*实施日期(yyyy-MM-dd):</td>
					<td><input type="text" name="standard.implDate">
					</td>
				</tr>
				<tr>
					<td>*附件:</td>
					<td><input type="text" name="standard.packagePath">
					</td>
				</tr>
				<tr>
					<td colspan="2"><input type="submit" value="保存">&nbsp;<input
						type="button" value="取消">
					</td>
				</tr>
			</table>
		</form>
	</div>
</body>
</html>

 

效果图:

 

 

 

 

  • 大小: 42 KB
  • 大小: 58.8 KB
  • 大小: 43.3 KB
分享到:
评论

相关推荐

    struts.xml和applicationContext.xml、web.xml的配置

    总结来说,`struts.xml` 负责Struts2的Action配置,`applicationContext.xml` 管理Spring的Bean和依赖,而`web.xml` 定义了Web应用的基本结构和组件。这三个文件共同协作,构建了一个功能完善的Java Web应用,实现了...

    ssh_TestStruts.rar

    1. **struts.xml**: 这是Struts 2框架的核心配置文件,定义了Action类、结果类型、拦截器等关键元素。 2. **Action类**: 代表业务逻辑,通常会处理HTTP请求,调用服务层方法,并将结果转发到特定的结果视图。 3. *...

    JSP三大框架笔记(SSH struts+hibernate+spring.rar)

    Struts配置文件(struts-config.xml)定义了Action和ActionForm,以及它们与视图之间的映射,使得代码结构清晰,易于维护。 **Hibernate框架** Hibernate是一个流行的ORM框架,它允许开发者用Java对象来表示数据库...

    SSH集成代理2.0版和struts.xml中DelegatingActionProxy代理搭配

    总结起来,SSH集成代理2.0版与Struts.xml中的DelegatingActionProxy代理搭配,提供了一种高效、灵活的MVC框架解决方案,允许开发者在不改动业务逻辑代码的情况下,通过配置文件实现对Action的各种增强功能。...

    SSH2(Struts2+spring.x+hibernate.x)

    Struts2通过Action类和配置文件定义了业务逻辑和视图之间的映射,同时支持多种结果类型,如JSP、FreeMarker、Velocity等。 Spring框架则是一个全面的后端解决方案,它包含了依赖注入(DI)、面向切面编程(AOP)、...

    SSH集成代理2.0版和struts.xml中控制器搭配

    总的来说,SSH集成代理2.0版与Struts.xml中控制器的搭配,为Java Web开发提供了一套强大且优化的解决方案。通过理解这些框架的核心原理和整合方式,开发者能够更好地构建高效、可扩展的企业级应用程序。

    jsp136酒店管理系统ssh+mysql.zip

    【标题】"jsp136酒店管理系统ssh+mysql.zip"是一个包含Java Web应用程序的压缩包,主要用于实现酒店管理系统的功能。SSH在这里指的是Spring、Struts和Hibernate三个开源框架的组合,它们是Java开发中常见的MVC...

    基于Java设计的移动网站ssh项目(struts+spring+hibernate+oracle)源码+数据库.zip

    **项目结构**:一个标准的SSH项目通常会包含多个模块,如Web层(包括JSP页面和Struts2配置)、控制层(Struts2 Action)、服务层(Spring Service)、持久层(Hibernate Entity和DAO)以及配置文件(如struts.xml、...

    SSH三大框架整合mini案例 struts 2(xml配置)+hibernate(注解)+spring(xml配置)

    5. **响应**:Struts 2根据Action执行的结果,决定跳转到哪个JSP页面或者返回JSON等格式的数据。 这个简单的SSH整合案例有助于理解它们各自的功能以及如何相互配合。在实际项目中,SSH框架可以处理更复杂的业务逻辑...

    JSP源码——移动ssh项目(struts+spring+hibernate+oracle).zip

    《深入解析JSP SSH项目:基于Struts、Spring和Hibernate的移动应用开发》 SSH(Struts、Spring、Hibernate)是Java开发中的经典MVC框架组合,尤其在企业级应用中广泛使用。在这个名为“移动ssh项目”的源码中,我们...

    ssh框架实例过程(MyEclipse+struts+spring+hibernate整合)

    然后,定义Action类来处理业务逻辑,创建Struts2配置文件(struts.xml)来映射URL请求和Action。最后,制作JSP视图页面,用于用户交互。 2. **Spring**:Spring框架的核心在于依赖注入(DI)和面向切面编程(AOP)。...

    SSH集成代理1.2版第二种和struts.xml中DelegatingActionProxy代理搭配

    在`struts.xml`中配置`DelegatingActionProxy`,可以方便地对Action进行动态代理,添加拦截器以实现诸如事务控制、权限验证等功能,同时结合SSH集成代理1.2版的特定搭配,可以更好地适应项目的需求并优化整体架构。

    SSH框架技术试卷+答案.pdf

    在Struts2中,一个核心的配置文件是struts.xml,用于配置action映射,包含namespace、action、result等元素。它使用拦截器(interceptor)机制来管理请求的流程,处理输入验证、文件上传等功能。 1. 核心概念: - ...

    SSH项目(hibernate+spring+struts)

    在这个SSH项目中,你可能会看到诸如Action类、配置文件(如struts.xml、spring.xml、hibernate.cfg.xml)、实体类(Entity)、DAO(数据访问对象)接口和服务类(Service)等不同组成部分。每个部分都有其特定的职责...

    基于注解的spring+hibernate+struts2.rar

    **sshdemo**:这个压缩包中的sshdemo项目可能是包含了一个简单的SSH整合示例,可能包括了web.xml、struts.xml、spring配置文件、hibernate配置文件、DAO、Service、Controller层的Java类,以及相关的HTML和JSP页面。...

    jsp144新疆人保助贷部贷款申请系统ssh+mysql.zip

    它通过Action类处理用户请求,并使用配置文件(struts.xml)来定义这些Action的映射。 2. Spring:Spring框架提供了一种强大的依赖注入机制,使得对象之间的依赖关系可以被外部化,增强了代码的可测试性和可维护性...

    SSH项目(spring+hibernate+struts2)

    SSH项目是一种经典的Java Web开发框架组合,由Spring、Hibernate和Struts2三个开源框架组成。这个项目示例提供了一个基于这些技术的简单应用,帮助开发者理解如何将它们整合在一起进行实际开发。 **Spring框架**是...

Global site tag (gtag.js) - Google Analytics