1.前面几个章节已经集成了SSH2了, 这一章节讨论测试action类 和3个框架整合是否正常使用。
2.贴一下完整需要的jar
3.1.添加Action 类和 相关jsp
package com.lysoft.web.action.user; import java.util.Date; import java.util.List; import javax.annotation.Resource; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import com.lysoft.bean.user.User; import com.lysoft.service.user.UserService; import com.opensymphony.xwork2.ActionSupport; /** * 用户管理 * @author liang * */ public class UserAction extends ActionSupport { private static final long serialVersionUID = 1L; private static Log LOG = LogFactory.getLog(UserAction.class); private User user; private Integer[] ids; private List<User> userList; @Resource private UserService userService; public String userList() { try { userList = userService.listAll(); } catch (Exception e) { e.printStackTrace(); LOG.debug("获取用户列表失败!"); } return SUCCESS; } public String add() { try { user.setCreateTime(new Date()); userService.add(user); } catch (Exception e) { e.printStackTrace(); LOG.debug("添加用户失败!"); } return SUCCESS; } public String updateInput() { user = userService.find(user.getId().intValue()); return SUCCESS; } public String update() { try { User oldUser = userService.find(user.getId()); oldUser.setUserName(user.getUserName()); oldUser.setFirstName(user.getFirstName()); oldUser.setCreateTime(new Date()); userService.update(oldUser); } catch (Exception e) { e.printStackTrace(); LOG.debug("更新用户失败!"); } return SUCCESS; } public String delete() { try { userService.delete(ids); } catch (RuntimeException e) { e.printStackTrace(); LOG.debug("删除用户成功!"); } return SUCCESS; } public User getUser() { return user; } public void setUser(User user) { this.user = user; } public Integer[] getIds() { return ids; } public void setIds(Integer[] ids) { this.ids = ids; } public List<User> getUserList() { return userList; } public void setUserList(List<User> userList) { this.userList = userList; } public String addInput() { return SUCCESS; } }
struts.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> <constant name="struts.devMode" value="true" /> <constant name="struts.action.extension" value="do" /> <constant name="struts.i18n.encoding" value="UTF-8" /> <constant name="struts.objectFactory" value="spring" /> <constant name="struts.configuration.xml.reload" value="true" /> <constant name="struts.enable.DynamicMethodInvocation" value="false" /> <package name="globalcfg" extends="struts-default" namespace="/"> <!-- exception page--> <global-results> <result name="exceptionPage"> <param name="location">/common/error.jsp</param> </result> </global-results> <!-- global exception--> <global-exception-mappings> <exception-mapping name="exception" result="exceptionPage" exception="java.lang.Exception"></exception-mapping> </global-exception-mappings> </package> <package name="user" namespace="/user" extends="globalcfg"> <action name="userList" class="com.lysoft.web.action.user.UserAction" method="userList"> <result name="success">/WEB-INF/page/user/user_list.jsp</result> </action> <action name="addInput" class="com.lysoft.web.action.user.UserAction" method="addInput"> <result name="success">/WEB-INF/page/user/add_input.jsp</result> </action> <action name="add" class="com.lysoft.web.action.user.UserAction" method="add"> <result name="success" type="redirectAction">userList</result> </action> <action name="updateInput" class="com.lysoft.web.action.user.UserAction" method="updateInput"> <result name="success">/WEB-INF/page/user/update_input.jsp</result> </action> <action name="update" class="com.lysoft.web.action.user.UserAction" method="update"> <result name="success" type="redirectAction">userList</result> </action> <action name="delete" class="com.lysoft.web.action.user.UserAction" method="delete"> <result name="success" type="redirectAction">userList</result> </action> </package> </struts>
jsp 代码
在WEB-INF下面添加page目录,并且在page目录下面添加 add_input.jsp
update_input.jsp user_list.jsp 3个jsp页面.
user_list.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <%@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" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>用户管理</title> </head> <body> <form id="form1" name="form1" action="delete.do" method="post"> <table width="40%" align="center" border="1"> <tr align="center"> <td>序号</td> <td>账号</td> <td>姓名</td> <td>时间</td> <td>操作</td> </tr> <s:iterator value="userList"> <tr align="center"> <td><s:property value="id"/></td> <td><s:property value="userName"/></td> <td><s:property value="firstName"/></td> <td><s:property value="createTime"/></td> <td> <a href="updateInput.do?user.id=<s:property value="id"/>">更新</a> <a href="delete.do?ids=<s:property value="id"/>">删除</a> </td> </tr> </s:iterator> <s:if test="null == userList || userList.isEmpty()"> <tr> <td colspan="7" align="center">没有可显示的记录!</td> </tr> </s:if> </table> </form> <table align="center" border="0"> <tr> <td> <input type="button" onclick="javascript:window.location.href='addInput.do'" value="添 加"/> </td> </tr> </table> </body> </html>
add_input.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>添加用户</title> </head> <body> <form action="add.do" method="post"> <table align="center" border="1"> <tr> <td align="center">添加用户</td> </tr> </table> <br/> <table align="center" border="1"> <tr> <td align="center">账号</td> <td align="center">姓名</td> </tr> <tr> <td align="center"><input type="text" name="user.userName" /></td> <td align="center"><input type="text" name="user.firstName" /></td> </tr> </table> <table align="center" border="0"> <tr> <td> <input type="submit" value="保 存" id="saveId"/> </td> </tr> </table> </form> </body> </html>
update_input.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <%@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" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>更新用户</title> </head> <body> <form action="update.do" method="post"> <input type="hidden" name="user.id" value="<s:property value="user.id"/>" /> <table align="center" border="1"> <tr> <td align="center">更新用户</td> </tr> </table> <br/> <table align="center" border="1"> <tr> <td align="center">账号</td> <td align="center">姓名</td> </tr> <tr> <td align="center"><input type="text" name="user.userName" value="<s:property value="user.userName"/>" /></td> <td align="center"><input type="text" name="user.firstName" value="<s:property value="user.firstName"/>" /></td> </tr> </table> <table align="center" border="0"> <tr> <td> <input type="submit" value="更 新" id="saveId"/> </td> </tr> </table> </form> </body> </html>
3. 启动tomcat,在浏览器中输入你的访问地址如::
http://localhost:8080/SSH2/user/userList.do
添加一条记录
测试成功! 删除记录也没有问题,此致已经完成所有整合操作。可以在此模板上方便加入jpa2.0 或其他框架整合。
总结:
写一下第一次写博客的感受吧, 发觉写博客很麻烦,特别是写技术博客,有需要贴源代码,还有提供图片参考, 每个例子都是自己辛苦的做过实验的,还要整合在一起。我写了4篇文章就话了我5个小时, 而且前提是这些代码都是之前已经弄好了, 我在写博客的时候又重新操作了一次, 我这些都是先写在word里面,然后再上传到iteye的比较麻烦。
不知道其他大大们,平时写技术博客是不是这样子,如果有好的办法请告知! 写的过程中有好几次都想放弃不写了,不过最后还是坚持下来了, 以后在看别人写的博客的时候,得尊重别人的成果,感谢他们的无私的分享。
相关推荐
Struts2.3 + Spring3.2 + Hibernate4.1 + HTML5 + CSS3开发示例代码。 其中包括如下文件: 介绍文档 Struts2.3 + Spring3.2 + Hibernate4.1 + HTML5 + CSS3开发示例.docx Eclipse工程文件 SSH2.zip Zip包是Eclipse...
总结来说,这个demo项目提供了一个学习和实践Struts1.2、Spring2.5和Hibernate3.2集成的平台,涵盖了MVC设计模式、依赖注入、面向切面编程和对象关系映射等多个关键概念。通过深入研究和修改这个项目,开发者能够...
Struts2、Spring2.5和Hibernate3.2是Java Web开发中经典的三大框架,它们的整合使用在过去的许多年里被广泛应用于企业级应用系统。这个完整的项目提供了从开发环境到运行环境的所有必要组件,包括数据库脚本,使得...
前几天更换了最新版本的ssh,发现这次变化还是挺大的,费了很大劲才整理好,这是我整理的struts2.3.12+spring3.2+hibernate4.1.9 web网站框架,希望大家用的时候可以省点事吧,里面有用spring代理写的接口调用。
Struts2.12、Spring3.2和Hibernate4.2是Java开发中经典的MVC框架集合,常用于构建企业级Web应用。这个集成示例代码提供了如何将这三个框架协同工作的详细步骤,使得开发者能够更好地理解和掌握它们的交互机制。 ...
cdst ssh代码生成器,免费的,功能强悍的struts2+spring2.5+hibernate3.2的一套 代码生成系统。.zip cdst ssh代码生成器,免费的,功能强悍的struts2+spring2.5+hibernate3.2的一套 代码生成系统。.zip cdst ssh代码...
这个"struts2.5.0+spring4.1.6+hibernate4.2jar包"包含了这三个框架的特定版本,为开发者提供了一个集成的开发环境。下面将详细阐述这三个框架及其整合的关键知识点。 Struts2是MVC(Model-View-Controller)设计...
Struts2.3、Spring3.2和Hibernate4.2是三个非常重要的Java Web开发框架,它们在企业级应用中广泛使用。这篇文章将详细介绍这三个框架的整合过程以及各自的核心功能。 Struts2是一个基于MVC(Model-View-Controller...
Struts2.1、Spring 2.5 和 Hibernate 3.2 是经典的Java Web开发框架组合,用于构建高效、可维护的企业级应用。这个详细例子将深入探讨如何使用这三个框架协同工作,实现数据库的增(Add)、删(Delete)、改(Modify...
struts2+spring2.5+hibernate3.2 + freemarker 全新功能实现的增删改查+freemarker 摸版 struts2 的方式自己去看简单。 spring2.5 是用注释来注入 hibernate3.2 是用ejb3注解映射关系 hibernate3 +个属性可以自动...
Struts2、Spring和Hibernate是Java Web开发中的三...以上就是关于“Struts2+Spring2.5+Hibernate3.2整合示例”的主要知识点,这个整合实例涵盖了Java Web开发中的重要技术,对于开发者来说,深入学习和实践将非常有益。
Struts2+spring2.0+hibernate3.2整合带全部jar包 Struts2+spring2.0+hibernate3.2整合带全部jar包 Struts2+spring2.0+hibernate3.2整合带全部jar包
本demo采用struts2+spring4.0+hibernate4.2框架集成(内部包含所有jar包),有最dao最底层的代码,可在项目中直接使用,并实现了一个简单的登陆和查询,代码均测试通过,为打ssh框架的同学提供方便哦
Struts2+Spring2.5+Hibernate3.2集成实例开发2 Struts2+Spring2.5+Hibernate3.2集成实例开发2
1、可以运行(发布后,删除\Tomcat 6.0\webapps\ssh\WebRoot\WEB-INF\lib下的asm-2.2.3.jar) 2、采用Struts1.2 + Spring2.5 + Hibernate3.2 整合开发 3、SSH入门级实例
最新版SSH整合(Spring3.2+Struts2.3.12+Hibernate4.2)学习最新版SSH整合(Spring3.2+Struts2.3.12+Hibernate4.2)学习最新版SSH整合(Spring3.2+Struts2.3.12+Hibernate4.2)学习最新版SSH整合(Spring3.2+Struts...
同时使用了Struts2、Spring4、Hibernate4、log4j、slf4j、junit4、ehcache等库或框架,搭建一个最基本的项目原型。 三、 三大框架最新版本下载:截止2014-10-01 Struts2.3.6:发布于2014-05-03,目前的最新版本。...
struts2.1.6 +spring2.5 +hibernate3.2 整合开发的 jar包 _ 01部分 struts2.1.6 +spring2.5 +hibernate3.2 整合开发的 jar包 _ 02部分 大家只要将这两个部分的包全部下载下来,就可以搭建struts2 + spring + ...