`
jiagyao
  • 浏览: 95957 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

spring与hibernate集成--关于配置文件

阅读更多
spring对hibernate整合的相当完美,并且spring对hibernate配置文件hibernate.cfg.xml也做了整合,在spring中利用LocalSessionFactoryBean就可以把hibernate.cfg.xml文件的内容整合到spring的配置文件中,这确实相当好,减少了配置文件。其实,LocalSessionFactoryBean最吸引我的原因是mappingLocations属性,这是一个用来配置hibernate映射文件的属性,这个属性的好处是我可以使用通配符,简单一行就可以配置整个项目的映射文件,比如:


<property name="mappingLocations">
    <list>
        <value>
            classpath:/com/company/callcenter/domain/**/maps/*.hbm.xml
        </value>
    </list>
</property>


但是,加入由于某种原因,我需要使用独立hibernate.cfg.xml文件,但是又想保留spring的简单配置映射文件的方法,怎么办呢?
我想要单独列出hibernate.cfg.xml文件的原因是:
1.我使用jboss提供hiberante插件,那就需要一个独立hibernate.cfg.xml文件,因为这个插件的功能比较适用:HQL Editor、Criteria Editor、Code Genration等
2.插件的编辑器对hibernate.cfg.xml提供hibernate属性提示功能,很好用。在spring中,spring的DTD文件列出hibernate属性,这是因为hibernate属性名称可能会变化,而spring团队无法控制hibernate团队对hibernate配置属性名称的变化

基于以上需要,最后我结合了两种配置文件的优点,很好的解决了这个问题
关键点:
1.使用LocalSessionFactoryBean的mappingLocations配置映射文件
2.使用configLocation属性配置hibernate.cfg.xml文件
3.在hibernate.cfg.xml文件中配置除了数据库链接的属性,以及其他可以有spring代替的属性,比如事务
下面是两个文件的部分示例代码
applicationContext.xml


<bean id="sessionFactory"
    class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
    <property name="mappingLocations">
        <list>
            <value>
                classpath:/com/company/project/domain/**/maps/*.hbm.xml
            </value>
        </list>
    </property>
    <property name="configLocation">
        <value>/WEB-INF/spring-config/hibernate.cfg.xml</value>
    </property>
    <property name="dataSource">
        <ref local="dataSource" />
    </property>
</bean>

hibernate.cfg.xml


<hibernate-configuration>
    <session-factory name="CallCenter">
        <property name="hibernate.dialect">
            org.hibernate.dialect.Oracle9Dialect
        </property>
        <property name="hibernate.connection.driver_class">
            oracle.jdbc.driver.OracleDriver
        </property>
        <property name="hibernate.connection.url">
            jdbc:oracle:oci:@test
        </property>
        <property name="hibernate.connection.username">
            test
        </property>
        <property name="hibernate.connection.password">test</property>

        <property name="hibernate.cache.provider_class">
            org.hibernate.cache.EhCacheProvider
        </property>
        <property name="hibernate.show_sql">true</property>
        <property name="hibernate.max_fetch_depth">3</property>
        <property name="hibernate.bytecode.use_reflection_optimizer">
            true
        </property>
        <property name="hibernate.query.substitutions">
            true 1, false 0, yes 'Y', no 'N'
        </property>
    </session-factory>
</hibernate-configuration>

上述配置也有一点小小的缺憾,那就两个地方配置了数据源,系统真正用到的spring配置的数据源,hibernate.cfg.xml中的数据源是留给hibernate插件使用的


本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/wangjian5748/archive/2007/04/26/1585948.aspx
分享到:
评论

相关推荐

    spring整合struts2与hibernate核心配置文件

    spring整合struts2与hibernate核心配置文件

    新SSH(Spring+SpringMVC+Hibernate)框架结构的java web案例实践

    随着struts的安全问题的暴露,原由Struts2+spring+hibernate构成的SSH2已经被越来越多的开发者所弃用,反而,由Spring+SpringMVC+Hibernate构成的SSH框架越来越受欢迎!这里提供了一个案例代码,希望对大家搭建环境...

    struts2-hibernate-spring 集成jar包

    struts2-hibernate-spring 集成jar包,但在使用时要注意struts2的配置文件中的&lt;package&gt; 标签中不要配置 “namespace” 属性 且在页面中访问 Action 的请求要带“.action” 跑。

    spring+springMVC+hibernate集成

    spring+springMVC+hibernate集成,包括配置文件applicationContext.xml、web.xml、springMVC-servlet.xml

    Spring+Hibernate+struts是如何整合起来的

    首先添加一个WEB工程 然后依次添加Struts框架,spring框架,...在添加Hibernate时注意选择现有的Spring配置文件,Hibernate的配置文件集成在Spring的配置文件中 最后在映射表的时候选择Spring的DAO作为IoC的实现

    Spring 2.5 jar 所有开发包及完整文档及项目开发实例

    这个jar文件是所有应用都要用到的,它包含访问配置文件、创建和管理bean以及进行Inversion of Control / Dependency Injection(IoC/DI)操作相关的所有类。如果应用只需基本的IoC/DI支持,引入spring-core.jar及...

    primefaces-spring-hibernate-portlet:primefaces-spring-hibernate-portlet

    primefaces-spring-hibernate-portlet 关联 此示例用于集成框架 环境 创建数据库的脚本可以在:src/main/webapp/WEB-INF/create.sql 它是一个mysql数据库,它的配置在文件中完成:src/main/webapp/WEB-INF/...

    web项目常用jar包及说明.zip

    10.struts2-spring-plugin-2.1.8.jar(struts2与spring集成时使用的) Spring需要的jar包: 1.spring.jar(里面含有spring的所有核心类库) 2.commons-logging-1.1.1.jar(ASF出品的日志包,struts2 2、spring、...

    spring5-hibernate5-with-spring-security

    下面显示了使用Web配置文件启动服务器的命令行: For Linux: JBOSS_HOME/bin/standalone.sh For Windows: JBOSS_HOME\bin\standalone.bat3.构建和部署快速入门注意:以下构建命令假定您已经配置了Maven用户设置。 ...

    springMVC + Hibernate 工程模板

    两种配置:oracle mysql,切换数据库只要把SessionFactory的配置文件改成对应就可以了 c3p0配置:mysql调试通过,oracle由于存在问题,未配置 spring配置式事务管理(jdk动态代理,每个service必须对应一个接口) ...

    集成struts+spring+hibernate 网站后台管理系统

    本人自己动手集成的struts+spring+hibernate 网站后台管理系统,希望对刚学习struts的朋友带来一定的帮助,这是我上传此文件的最大愿望,里面有三个框架所需要的jar包和所有的配置文件,只要下载即可运行,不需要...

    spring_struts2_hibernate_mysql集成

    使用maven集成spring,struts2,hibernate三大框架,mysql数据库 密码账号 都在配置文件里 不懂可以联系我qq:1193298924

    Struts2 + Spring3 + Hibernate3.5 整合(集成测试配套jar包更新构建脚本使用说明)

    本版本全面更新了jar包,全部使用了当前最新版本的jar包,struct2.1.8 spring3 hibernate3.5,全面使用注解取代xm的l配置。 另外增加了一个ant构建脚本,支持使用hudson完成每日构建,持续集成,自动测试,代码规范...

    基于SpringMVC+Hibernate4的考勤管理系统+.zip

    spring-beans-4.0.0.RELEASE.jar 所有应用都要用到的,它包含访问配置文件、创建和管理bean spring-context-4.0.0.RELEASE.jar Spring 核心提供了大量扩展 spring-core-4.0.0.RELEASE.jar Spring 框架基本的核心工具...

    spring jar 包详解

    (2) spring-beans.jar 这个jar文件是所有应用都要用到的,它包含访问配置文件、创建和管理bean以及进行Inversion of Control / Dependency Injection(IoC/DI)操作相关的所有类。如果应用只需基本的IoC/DI支持,...

    spring+springmvc+hibernate框架配置源码

    该demo集成了spring+springmvc+hibernate框架,里面的dao、service、entity均采用注解形式,容易开发,另外该demo中dao采用注解形式,将所有实体dao需要用到的通用方法如insert,update,delete,分页查询等均采用...

    firebird embedded 嵌入式——Spring hibernate 集成连接配置

    你还可以查看 有详细极介绍。我从第一天中午到第二天中午才搞好,早网上查到配置方法我试了试都不行,一直不知道错的什么地方了。 该文件不需要 把dll文件放入 system32 目录下面,完全可迁移。

    Spring hibernate SpringMVC整合对数据库操作

    Spring MVC是Java的web框架,能够将Hibernate集成进去,完成数据的CRUD。Hibernate使用方便,配置响应的XML文件即可。由于spring3.x,基于asm的某些特征,而这些asm还没有用jdk8编译,所以采用Spring 3+JDK8就会报错,...

    HIbernate PPT

    全套的hibernatePPt,hibernate集成Struts2 hibernate集成spring hibernate的HQL注释的方式配置文件 hibernate状态 主键映射

    maven+springmvc+spring+hibernate+freemarker

    maven管理项目+springmvc+spring+hibernate+freemarker 集成框架。其中注解格式清晰,hibernate进行了代码封装,对开发效率有了提高,对异常进行了封装。freemarker也有优化,参考common包下。对日期工具类有各种...

Global site tag (gtag.js) - Google Analytics