作者: hzboy192@192.com
Blog: http://my.csdn.net/peng_hao1988
版本总览:http://blog.csdn.net/peng_hao1988/article/details/9026897

实现步骤:

一、导入Spring3.0、Hibernate3.0、Struts2开发库。

二、配置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" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" version="3.0"><display-name></display-name><welcome-file-list><welcome-file>index.jsp</welcome-file></welcome-file-list><listener><description>Spring core configuration</description><listener-class>org.springframework.web.context.ContextLoaderListener</listener-class></listener><filter><filter-name>struts2</filter-name><filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class></filter><filter-mapping><filter-name>struts2</filter-name><url-pattern>*.action</url-pattern></filter-mapping>
</web-app>

1.如上struts2的核心控制器filter也可配置为如下类

org.apache.struts2.dispatcher.FilterDispatcher

2.FilterDispatcher和StrutsPrepareAndExecuteFilter、StrutsPrepareFilter、

ExecuteFilter的区别参见:http://peng-hao1988.iteye.com/admin/blogs/1472063

三、Spring的配置文件applicationContext.xml的配置内容如下:

<?xml version="1.0" encoding="UTF-8"?>
<beansxmlns="http://www.springframework.org/schema/beans"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xmlns:p="http://www.springframework.org/schema/p"xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd"><bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource"><property name="driverClassName"value="com.mysql.jdbc.Driver"></property><property name="url" value="jdbc:mysql://localhost:3306/myssh"></property><property name="username" value="root"></property><property name="password" value="123"></property></bean><bean id="sessionFactory"class="org.springframework.orm.hibernate3.LocalSessionFactoryBean"><!-- if use the hibernate.cfg.xml as dataSource configuration, cancel the annotations --><!-- remove other properties and dataSource bean. --><!-- <property name="configLocation" value="classpath:hibernate.cfg.xml" />--><property name="dataSource"><ref bean="dataSource" /></property><property name="hibernateProperties"><props><prop key="hibernate.dialect">org.hibernate.dialect.MySQLDialect</prop><prop key="hibernate.hbm2ddl.auto">update</prop></props></property><property name="mappingResources"><list><value>com/hzboy/orm/Userinfo.hbm.xml</value></list></property></bean><bean id="userAct" class="com.hzboy.action.UserManagerAct" scope="prototype"><property name="userService" ref="userService"></property></bean><bean id="userService" class="com.hzboy.service.UserManagerService"><property name="dao" ref="dao"></property></bean><bean id="dao" class="com.hzboy.dao.BaseDao"><property name="sessionFactory" ref="sessionFactory"/></bean>
</beans>

1.Demo默认Hibernate的DataSource、HibernateProperties、  MappingResources信息配置到applicationContext.xml文件中。 如果使用Hibernate.cfg.xml配置这些信息,需要在applicationContext.xml文件中将configLocation这个属性去掉注释,将其他的property注释或删除。

2.applicationContext.xml默认放在webRoot\WEB-INF\路径下,如果想要将spring的配置文件移动到其他文件夹或修改名字,需要在web.xml中添加如下代码:

<context-param><description>我的spring配置文件放在WEB-INF根目录下,文件名为springconfig.xml</description><param-name>contextConfigLoaction</param-name><param-value>/WEB-INF/springconfig.xml</param-value>
</context-param>

3.Demo默认Hibernate的DataSource、HibernateProperties、 MappingResources信息配置到applicationContext.xml文件中。如果使用Hibernate.cfg.xml配置这些信息,需要在 applicationContext.xml文件中将configLocation这个属性去掉注释,并将其他的property注释或删除。 Hibernate.cfg.xml配置如下:

<?xml version='1.0' encoding='UTF-8'?>
<!DOCTYPE hibernate-configuration PUBLIC"-//Hibernate/Hibernate Configuration DTD 3.0//EN""http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd"><!-- Generated by MyEclipse Hibernate Tools. -->
<hibernate-configuration><session-factory><property name="hbm2ddl.auto">update</property><property name="dialect">org.hibernate.dialect.MySQLDialect</property><property name="connection.url">jdbc:mysql://localhost:3306/myssh</property><property name="connection.username">root</property><property name="connection.password">123</property><property name="connection.driver_class">com.mysql.jdbc.Driver</property><property name="myeclipse.connection.profile">MySQL</property><mapping resource="com/hzboy/orm/Userinfo.hbm.xml" /></session-factory>
</hibernate-configuration>

四、配置struts2的配置文件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.objectFactory" value="spring" /><package name="myApp" extends="struts-default"><global-results><result name="error">/WEB-INF/jsp/error.jsp</result><result name="success">/WEB-INF/jsp/success.jsp</result></global-results><action name="userManagerAct" class="userAct" method="doLogin"><result name="login">/index.jsp</result></action><action name="query" class="userAct" method="doQuery" /><action name="delete" class="userAct" method="doDelete" /><action name="edit" class="userAct" method="doEdit"><result name="editUser">/WEB-INF/jsp/editUser.jsp</result></action><action name="add" class="userAct" method="doAdd"><result name="addUser">/WEB-INF/jsp/addUser.jsp</result></action></package>
</struts>

1.当使用spring管理struts2的 action时要注意需在struts2的action配

置文件中添加如下代码:

<constant name="struts.objectFactory" value="spring" />

并且需要将struts2-spring-plugin-2.2.1.jar添加到classpath中去。

2.如要将Struts2的默认配置文件struts.xml文件重命名或移动到WEB-INF 到下去,需要在web.xml的struts2过滤器中添加如下代码:

<init-param><description>我的struts配置文件放在WEB-INF根目录下,文件名为action.xml</description><param-name>config</param-name><param-value>struts-default.xml,struts-plugin.xml,../action.xml</param-value>
</init-param>

五、基本配置已经弄完了,在用工具添加MyEclipse和Eclipse添加开发库是要注意,尽量使用高版本的,如果是工具自带的库,一般不会出现问题,如果有错误的话,一般是JAR包冲突,把一些名字一样版本号不一样的包删除低版本的。如果是用户自定义的开发库最好不要随意添加JAR包,去官方下载完整的开发库,根据需要添加,如果是在不知道那些是需要的,那就全部添加进去。

注意:有部分网友反馈示例代码报错,原因是之前使用的是myeclipse,自带的lib下有servlet-api.jar文件,所以打包代码是没有吧这个jar弄进去,所以在eclipse或其他IDE下可能会报错,解决办法将将Tomcat\lib下的servlet-api.jar文件添加的WEB-INF\lib文件夹中。

示例代码:http://download.csdn.net/detail/peng_hao1988/4191421

》》》》》》》》》》》》》》》》转载请注明出处《《《《《《《《《《《《《《《《

转载于:https://www.cnblogs.com/pocter/archive/2012/04/01/3684506.html

【Struts2+Spring3+Hibernate3】SSH框架整合实现CRUD_1.0相关推荐

  1. 【struts2+spring+hibernate】ssh框架整合开发

    SSH框架整合 1 Struts2+Spring+Hibernate导包 Struts2导入jar包: * struts2/apps/struts2-blank.war/WEB-INF/lib/*.j ...

  2. MyEclipse搭建SSH(Struts2+Spring2+Hibernate3)框架项目教程

    对Struts.spring.hibernate大体上了解一遍后,就是针对这个几个框架的整合了. 怎样整合,请看以下: 第一:Struts2的jar和xml配置文件: jar包: commons-fi ...

  3. SSH框架整合-慕课课程

    SSH框架整合-慕课课程 学习时间:2018年12月3日 慕课链接:基于SSH实现员工管理系统之框架整合篇 内容:Struts2+Hibernate+Spring框架整合,分为Struts2整合Spr ...

  4. SSH框架整合——基于注解

    SSH框架整合--基于注解 @(Spring)[Spring, hibernate, struts2, 框架整合] SSH框架整合基于注解 SSH框架整合 第一步导入Jar包 第二步导入配置文件 第三 ...

  5. SSH框架整合——基于XML配置文件

    SSH框架整合--基于XML配置文件 @(Spring)[spring, struts2, hibernate, 框架整合, ssh, Spring] SSH框架整合基于XML配置文件 SSH框架整合 ...

  6. SSH框架整合开发(SSH框架整合过程)

    SSH框架整合过程 第一步 导入需要用到的jar包 第二步 搭建struts2环境 (1) 创建action ,创建struts.xml配置文件,配置action (2) 配置struts2 的过滤器 ...

  7. 6.SSH框架整合及简单使用示例

    6.SSH框架整合 ssh:spring+spring-mvc+hibernate 6.1 整合的场所 :web.xml 跟 5.ssm框架 整合类似,可以对照学习,通过监听器配置hibernate, ...

  8. SSH框架整合过程(Struts2+Spring+Hibernate)

    (尊重劳动成果,转载请注明出处:http://blog.csdn.NET/qq_25827845/article/details/53929601 冷血之心的博客) 在学习java框架的过程中,我总结 ...

  9. SSH框架整合(代码加文字解释)

    一.创建数据库并设置编码. A) create database oa default character set utf8. 二.MyEclipse工程 A) 在Myeclipse里创建web工程, ...

最新文章

  1. VIM技巧:显示行号
  2. 南大新规:博士生在公众号发文且阅读量超1万即可参评国奖!
  3. JHipster生成微服务架构的应用栈(二)- 认证微服务示例
  4. 美容院会籍管理,看着简单,其实很复杂
  5. onvif_discover虚拟摄像头
  6. android viewpager动态加载图片,Android使用ViewPager加载图片和轮播视频
  7. .NET Core 3.0 中的数据库驱动框架 System.Data
  8. 模拟进程创建、终止、阻塞、唤醒原语_操作系统第二章--进程的描述与控制
  9. Ubuntu文本检索神器——SearchMonkey
  10. bzoj1925地精部落——数学
  11. 华为云PB级数据库GaussDB(for Redis)揭秘第五期:高斯 Redis 在IM场景中的应用
  12. SQL基本语法 case when 应用
  13. linux mysql emoji_Linux宝塔面板MySQL存储emoji,非服务器命令方法
  14. android 电视开机广告,电视广告饶过谁?国外用户亦未幸免 Android TV智能电视加入广告...
  15. DirectX11--ComPtr智能指针
  16. Alien Skin Exposure新版X8功能介绍
  17. h5 数字变化_那些H5用到的技术(6)——数字滚动特效
  18. 计算机组成原理_选择
  19. 用微信小游戏实现龙舟大战-打粽子
  20. js中公有方法、特权方法、静态方法

热门文章

  1. 【奇淫巧技】XSS绕过技巧
  2. 半斤八两中级破解 (四) TCP_UDP协议转向本地验证
  3. 动画代码Android动画学习笔记动画代码
  4. 企业云计算指南:在安全前提下获得利益
  5. PHP后期静态绑定概念和用法
  6. 【Java基础】Java基本数据类型与位运算
  7. H5 中的 new FileReader() 以及 识别上传的文件是否为图片
  8. 《github一天一道算法题》:分治法求数组最大连续子序列和
  9. 站点某些网页想显示母版页内的用户控件,某些网页不想显示,怎样实现
  10. jsp+mysql开发论坛程序