Springmvc+Spring+hibernate基于注解的整合和单元测试.docx
- 文档编号:25125341
- 上传时间:2023-06-05
- 格式:DOCX
- 页数:14
- 大小:1.40MB
Springmvc+Spring+hibernate基于注解的整合和单元测试.docx
《Springmvc+Spring+hibernate基于注解的整合和单元测试.docx》由会员分享,可在线阅读,更多相关《Springmvc+Spring+hibernate基于注解的整合和单元测试.docx(14页珍藏版)》请在冰豆网上搜索。
Springmvc+Spring+hibernate基于注解的整合和单元测试
Springmvc+Spring+hibernate基于注解的整合和单元测试
以一个简单的用户为列,描述关于springmvc+spring+hibernate的整合和单元测试
1、创建user表,表名为test_user
2、创建user实体类,代码如下
3、写一个dao接口
4、写dao的实现
5、applicationContext.xml,数据源和sessionFactory的配置
spring组件扫描的方式来实现自动注入bean,注意这里在整合springmvc时候会出问题,解决思路在最后有说明
6、dao层的junit测试的编写
7、service的接口
8、Service的实现
9、applicationContext.xml的事务配置
10、写service层的junit单元测试
11、整合springmvc,建立dispatcher-servlet.xml配置文件,该文件主要是springmvc所用,而上面的applicationContext.xml是spring所用,注意返回类型的配置
12、配置web.xml文件
13、控制层代码编写
14、页面的编写,js是jquery的用法
15、包结构,可以根据自己的需求建立,只要注意配置的时候路径问题和请求路径问题,这里是根据我自己整合测试建立的包结构
16、要注意几个问题
(1)、在使用Springmvc+Spring+Hibernate4配置的时候,总是出现NoSessionfoundforcurrentthread,仔细检查applicationContext.xml和dispacter-servlet.xml文件,注解、事务配置都没有问题,当试着把dispacter-servlet.xml和applicationContext.xml合并,或者是在dispacter-servlet.xml中引入applicationContext.xml就不会出问题。
原因是spring的context是父子容器,所以会产生冲突,Controller会首先被扫描装配,而此时的Service还没有进行事务的配置,获得的将是原样的Service(没有经过事务装配,故而没有事务处理能力),最后才是applicationContext.xml中的扫描设备进行事务处理。
为了让两个文件分开,让结构更清晰,又不想用引入的方式,那么可以用以下方式解决,让配置文件各自干自己的事
①在Spring主容器中applicationContext.xml,用 exclude-filter/>将Controller的注解过滤掉,不扫描装配它,如下。 ②而在springMVC配置文件中(dispatcher-servlet.xml)将Service和Dao的注解给过滤掉,只扫描装配Controller。 (2)、当前端用ajax请求,返回类型为json的时候,springmvc需要return的对象在ajax请求成功的data中为json数据,有两种处理方法,一种是在Controller层把结果转化为json字符串,一种是引入jackson-mapper-lgpl-1.9.13.jar和jackson-core-lgpl-1.9.13.jar两个jar包,在dispacter-servlet.xml配置文件中加上一下配置(红色部分)
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Springmvc Spring hibernate 基于 注解 整合 单元测试