Maven下的SpringMVC4.2+hibernate4.3整合

SpringMVC与hibernate整合

好久没有动手搭建框架了,还是有点生疏。看了下Spring官网,又出了很多如spring cloud、portlet等新框架和规范。hibernate也有不少的改进,也开始走高度模块化路线了(ORM 、Search、Validator、OGM、Tools、Others)。搭建的过程中还是一点点查作用,还有版本依赖。记录下过程,留做以后参考。

  • POM配置
  • Web.xml配置
  • Spring&hibernate配置文件
  • 目录结构
  • 通用的CRUD
  • 通用的工具类

POM配置

1、添加Spring相关Jar
2、添加Hibernate相关Jar
3、添加依赖辅助Jar和工具类Jar
4、POM环境插件配置

对maven不熟,比较难知道到底怎么把这些Jar按照一定顺序添加到POM中。对依赖辅助的Jar和工具类Jar也是这样。整个过程一直在参考别人的写作规范。大概是分为3-4个部分来分类: main version setting、tools or dependent setting 、Jdbc driver setting、environment setting。

web.xml

1、contextConfigLocation
2、ContextLoaderListener
3、CharacterEncodingFilter
4、OpenSessionInViewFilter
5、IntrospectorCleanupListener
6、DispatcherServlet

web.xml中配置文件也是分这样几部分:
1、加载配置文件并配置监听器
2、设置编码过滤器
3、解决延迟加载时Session会关闭的问题
4、刷新Introspector防止内存泄露
5、SpringMVC前置控制器
如果与shiro和sitemesh配置在SpringMVC之前。如果集成Druid等放到SpringMVC之后。

SpringMVC-Servlet.xml

默认 项目名-servlet.xml;默认地址在WEB-INF目录下
1、开启注解<mvc:annotation-driver>
2、开启类扫面<mvc:component-scan>
3、配置静态资源映射 or 加载properties配置文件
4、InternalResourceViewResolver
5、ExceptionResolver and multipartResolver
可选<mvc:interceptors>

Spring-context.xml

默认名字applicationContext.xml,为了和上面统一,改成spring-context.xml。
主要用于spring的注入和集成其他框架。例如:hibernate、mybatis等ORM框架。
1、加载配置文件,一般是jdbc.properties或者resouce.properties
2、<context:component-scan> 开启后,默认不需要再设置<context:annotation-config/>
3、datasource,3.1后可以用 profile="production" 来隔离生产与测试环境
4、sessionFactory
5、transactionManager

目录结构

完整版:

cn.fly
    --common    //通用的包集合:Utils与第三方插件
    --core      //核心封装类
    --examples  //实例
        --dao
        --model
        --service
        --web
        --webservice
    --generate //代码生成器
    --modules  //业务模块

精简版:

cn.fly
    --common    //通用的包集合,untils
    --core      //核心封装类
    --modules   //业务模块
        --dao
        --model
        --service
        --web
        --webservice

通用的CRUD

hibernate通用的查询模式分类:Query 与 Criteria。集成能节省很多重复代码工作。
**PS**:Spring3.1集成Hibernate4不再需要HibernateDaoSupport和HibernateTemplate了,直接使用原生API即可。
原HibernateDaoSupport与HibernateTemplate是spring实现的继承Hibernate API后封装一次。现在hibernate4,自身实现了这些关闭session和使用同一个session防止重新创建的功能。可直接对接API。

工具类

……

以后补充吧。这边就先写到这里。后期需要补充的是集成shiro、ehcache、redis、JMS等,以及restful的实现。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值