spring4+hibernate4+struts2项目整合的步骤及注意事项
2016-03-18 22:17
531 查看
首先,在整合框架之前,我们需要知道Spring框架在普通Java project和Web project中是略有不同的.
这个不同地方就在于创建IOC容器实例的方式不同,在普通java工程中,可以在main方法中直接创建,可是web工程就不一样了,在Web项目工程中应该在服务器加载时就创建IOC容器.也就是说,我们需要web容器能自动加载applicationcontext.xml并初始化.最常用的一种方式,就是在web.xml中添加ContextLoaderListener监听器.
先讲一下,在WEB环境下,使用Spring的注意事项:
注意一定要有这两个jar包,spring-web-4.2.5.RELEASE.jar和spring-webmvc-4.2.5.RELEASE.jar
Spring的配置文件,和在普通java project的配置文件相同.
需要在web.xml中加入以下代码:
下面介绍ssh整合和步骤,这里只做简单介绍,详细的步骤,之前的博文中,已经做了详细的介绍.
首先我们选择先加入Spring,因为Spring需要管理另外两个框架.
加入Spring
加入Spring的jar包
配置web.xml文件(代码见上面)
配置applicationContext.xml
[b] 加入hibernate[/b]
加入hibernate的jar包
配置hibernate.cfg.xml文件(也可以省略这个配置文件,这里选择保留)
建立持久化类及对应hbm.xml文件
和spring进行整合
(1) 加入c3p0和mysql的驱动(jar包),这里选择使用mysql数据库和c3p0数据库池
在spring中配置,数据源,sessionFactory,声明式事务.
(2) 启动项目,检查自动生成的表结构
[b] 加入struts2(注意额外需要一个struts2-spring-plugin-2.3.16.1.jar,若有重复的jar包,javasist.jar,则删除版本较低的那个jar包)[/b]
导入struts2的jar包
web.xml中配置struts的filter
创建struts2的配置文件struts.xml
注意:
在applicationContext.xml中配置Action的bean时,要将scrope设置为prototype,即每次都创建一个新的实例.
在struts.xml中配置Action的class需要指向IOC容器中该Bean的id(以前class的值是该bean的全类名)
这个不同地方就在于创建IOC容器实例的方式不同,在普通java工程中,可以在main方法中直接创建,可是web工程就不一样了,在Web项目工程中应该在服务器加载时就创建IOC容器.也就是说,我们需要web容器能自动加载applicationcontext.xml并初始化.最常用的一种方式,就是在web.xml中添加ContextLoaderListener监听器.
先讲一下,在WEB环境下,使用Spring的注意事项:
注意一定要有这两个jar包,spring-web-4.2.5.RELEASE.jar和spring-webmvc-4.2.5.RELEASE.jar
Spring的配置文件,和在普通java project的配置文件相同.
需要在web.xml中加入以下代码:
<!-- 配置Spring配置文件的名称和位置 --> <context-param> <param-name>contextConfigLocation</param-name> <param-value>classpath:applicationContext.xml</param-value> <!--<param-value>/WEB-INF/applicationContext.xml</param-value>--> </context-param> <listener> <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class> </listener>
下面介绍ssh整合和步骤,这里只做简单介绍,详细的步骤,之前的博文中,已经做了详细的介绍.
首先我们选择先加入Spring,因为Spring需要管理另外两个框架.
加入Spring
加入Spring的jar包
配置web.xml文件(代码见上面)
配置applicationContext.xml
[b] 加入hibernate[/b]
加入hibernate的jar包
配置hibernate.cfg.xml文件(也可以省略这个配置文件,这里选择保留)
建立持久化类及对应hbm.xml文件
和spring进行整合
(1) 加入c3p0和mysql的驱动(jar包),这里选择使用mysql数据库和c3p0数据库池
在spring中配置,数据源,sessionFactory,声明式事务.
(2) 启动项目,检查自动生成的表结构
[b] 加入struts2(注意额外需要一个struts2-spring-plugin-2.3.16.1.jar,若有重复的jar包,javasist.jar,则删除版本较低的那个jar包)[/b]
导入struts2的jar包
web.xml中配置struts的filter
创建struts2的配置文件struts.xml
注意:
在applicationContext.xml中配置Action的bean时,要将scrope设置为prototype,即每次都创建一个新的实例.
在struts.xml中配置Action的class需要指向IOC容器中该Bean的id(以前class的值是该bean的全类名)
相关文章推荐
- 可恶的Eclipse 一天崩几百遍我都不惊诧
- [疯狂Java]多线程:线程组、线程/组内异常处理
- java(jsp)简单实现数据库学生信息的增删改查案例
- Java学习-用正则表达式判断email是否合法
- [常用maven配置]scala配置以及打包可运行JAR
- java动态代理的实现
- 在windows下,用eclipse链接hadoop遇到的问题。
- 最短路径算法之Dijkstra算法_Java实现
- java面向对象中四种权限(private,protected,public,友好型)详解
- 搭建Java环境
- Java面向对象04-继承,访问控制修饰符,static和final
- json字符串和java对象的相互转化
- Spring学习笔记(1-2)
- java基础之关键字篇
- java动态代理
- 7. Java 注释类型
- SSH整合时执行hibernate查询报错:java.lang.ClassCastException: com.ch.hibernate.Department_$$_javassist_0 cannot be cast to javassist.util.proxy
- Leetcode:228. Summary Ranges(JAVA)
- java中变量的几种名称fileds,parameters,arguments
- 深入Java集合学习系列:HashMap的实现原理