首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 其他教程 > 开源软件 >

Spring 3.0 + Struts 2.1 + Hibernate 3.3 框架调整小结

2012-07-20 
Spring 3.0 + Struts 2.1 + Hibernate 3.3 框架整合小结?引言:?学习SSH框架有一阵了,今天对SSH框架整合做

Spring 3.0 + Struts 2.1 + Hibernate 3.3 框架整合小结

?引言:

?

学习SSH框架有一阵了,今天对SSH框架整合做一个小结。

我的操作步骤是? Spring? à? Hibernate? à? Sturts 2

环境是MyEclipse 9.0 主要采用添加功能支持的方式:( MyEclipse à? add xxxx capabilities )

?

?

创建Web Project略。

?

?

?

1. 添加jar包到项目中

?

?Spring 3.0 + Struts 2.1 + Hibernate 3.3 框架调整小结

?

?

这里选择的是Spring 3.0 ,其中Library的添加视情况而定。

因为需要 对业务进行 事务管理 和 数据库信息 的持久化操作 所以这里添加了前4个库。

为了方便,还选择了将jar包拷贝到了WEB-INF/lib目录下。

?

?

2. 创建Spring的bean配置文件applicationContext.xml

?

方案一:

?

?

Spring 3.0 + Struts 2.1 + Hibernate 3.3 框架调整小结?

?

方案二:

?

?

Spring 3.0 + Struts 2.1 + Hibernate 3.3 框架调整小结?

方案一的方式,将配置文件放在了src源目录下,

方案二的方式,将配置文件放在了WEB-INFO目录下。

?

?

两种方案的区别在于,后续web.xml配置时,有所不同。详看第四部分:web.xml配置信息

?

?

?

?

1. 添加Hibernate支持

?

?

Spring 3.0 + Struts 2.1 + Hibernate 3.3 框架调整小结?

?

这里选择了Hiberante 3.3 版本。

jar包选择为默认的前2项, 同样将jar包拷贝到了WEB-INF/lib目录下。

?

?

?

Spring 3.0 + Struts 2.1 + Hibernate 3.3 框架调整小结

?

?

因为之前创建了Spring的配置文件applicationContext.xml

这里选择将Hibernate的配置信息集成存放到Spring的配置文件中。

?

?

2. 定义Spring和Hibernate配置文件集成

?

?

Spring 3.0 + Struts 2.1 + Hibernate 3.3 框架调整小结

?

选择已经存在的applicationContext.xml集成即可。

?

?

?

?

Spring 3.0 + Struts 2.1 + Hibernate 3.3 框架调整小结

?

这里用到了提前在Database窗口中配置好的数据源。在DB Driver中选择好即可。

?

4. 定义SessionFactory属性文件

?

Spring 3.0 + Struts 2.1 + Hibernate 3.3 框架调整小结

?

这里选择不创建SessionFactory的帮助类。因为有Spring的SessionFactory注入。

?

?

?

?

?

?

?

Spring 3.0 + Struts 2.1 + Hibernate 3.3 框架调整小结?

?

?

?

Spring 3.0 + Struts 2.1 + Hibernate 3.3 框架调整小结

?

这里选择上Struts 2 Spring Libraries 这一项,比较重要。

因为它里面包含有spring-web-2.5.6.jar这个架包,我们稍后需要在web.xml配置文件中配置spring的监听,会用到其中的ContentLoaderListener类。

另外一个就是,它还含有struts2-spring-plugin-2.2.1.jar。这个是struts2和spring集成的关键。

?

?

?

?

通过上述3个步骤的操作,

在项目的/WebRoot/WEB-INF/web.xml中会自动生成Struts2的配置信息。如下:

?

?

Spring 3.0 + Struts 2.1 + Hibernate 3.3 框架调整小结

?

但是,我们还需要配置一下Spring 的监听。

?

在这里就涉及到创建Spring的bean配置文件applicationContext.xml时的两种方案了。

?

如果是方案一的方式,将配置文件放在了src源目录下:

?

此时,需要配置上下文环境的参数,指定一下配置文件的位置

?

?

Spring 3.0 + Struts 2.1 + Hibernate 3.3 框架调整小结

?

如果是方案二的方式,将配置文件放在了WEB-INFO目录下。

?

此时,可以省略上下文环境指定配置文件位置的步骤

?

?

Spring 3.0 + Struts 2.1 + Hibernate 3.3 框架调整小结

?

?

?

在整合过程中最常见的异常问题除了配置信息有误,就是jar包冲突。

比如antlr这个架包。在有的Struts 2版本中会有一个antlr-2.7.2.jar。

而Hibernate中,则会有一个antlr-2.7.6.jar。

如果项目中同时存在这两个jar包,一般会在控制台中报异常。

?

推荐解决方案:

?

在Window à Preferences 中键入strtus 2 找到antlr-2.7.2.jar并Remove掉即可。

?

?

Spring 3.0 + Struts 2.1 + Hibernate 3.3 框架调整小结

?

在applicationContext.xml配置文件中会根据Hibernate的配置自动生成dataSource和sessionFactory的信息,但是偶尔也会有一些问题,比如通过数据源的表生自动生成实体类后,在此配置文件中却没有自动生成mappingResources的映射信息。

?

?

Spring 3.0 + Struts 2.1 + Hibernate 3.3 框架调整小结

?

其他的一些问题就不多描述了。此次主要是对SSH框架整合过程的一个小结。


热点排行