我的编程空间,编程开发者的网络收藏夹
学习永远不晚

如何在已有spring的基础上集成hibernate

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

如何在已有spring的基础上集成hibernate

小编给大家分享一下如何在已有spring的基础上集成hibernate,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!

1.导入hibernate的包和spring的包

hibernate3、hibernate-jpa-2.0-api-、必须的包,log4j,log4j配置文件

1 导入Spring的依赖包

2 导入log4j的依赖包

3 导入dbcp的依赖包

4 导入hibernate3的依赖包(hibernate3.jar、require文件中的所有,sif4-api.jar,jpa文件夹中的包)

2.创建applicationContext.xml

1 使用DBCP创建dataSource(和集成JDBP一样)

<!-- 配置数据源 --> <bean id="dataSource" destroy-method="close" class="org.apache.commons.dbcp.BasicDataSource">  <property name="driverClassName" value="com.mysql.jdbc.Driver"/>  <property name="url" value="jdbc:mysql://localhost:3306/spring_teach"/>  <property name="username" value="root"/>  <property name="password" value="111111"/> </bean>

2 创建hibernate的sessionFactory

<!-- 配置 Hibernate 的 SessionFactory 实例: 通过 Spring 提供的 LocalSessionFactoryBean 进行配置 --> <bean id="sessionFactory" class="org.springframework.orm.hibernate4.LocalSessionFactoryBean">  <!-- 配置数据源属性 -->  <property name="dataSource" ref="dataSource"></property>  <!-- 配置 hibernate 配置文件的位置及名称 -->   <property name="hibernateProperties" value="classpath:hibernate.cfg.xml"></property>  <!-- 配置 hibernate 映射文件的位置及名称, 可以使用通配符 -->  <property name="packagesToScan"    value="classpath:org/zttc/itat/model/*.hbm.xml"></property> </bean>

其中 hibernate.cfg.xml,其上有引用:

<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE hibernate-configuration PUBLIC  "-//Hibernate/Hibernate Configuration DTD 3.0//EN"  "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd"><hibernate-configuration> <session-factory>  <!-- 配置hibernate基本信息 -->  <!-- 1.数据源配置在IOC容器中,此处不需要额外配置 -->  <!-- 2.关联的.hbm.xml文件也在IOC容器配置SessionFactory时配置 -->  <!-- 3.此处配置hibernate的基本信息:数据库方言、SQL显示及格式化,及生成数据表的策略,二级缓存等 -->  <property name="hibernate.dialect">org.hibernate.dialect.MySQL5InnoDBDialect</property>    <property name="hibernate.show_sql">true</property>  <property name="hibernate.format_sql">true</property>    <property name="hibernate.hbm2ddl.auto">update</property>   </session-factory></hibernate-configuration>

3. 为实体类添加annotation或hbm文件

4.创建基于hibernate的DAO

1 在相应的DAO注入相应的SessionFactory

2 如果通过spring来管理相应的SessionFactory,不再使用factory.openSession(),而应该是factory.getCurrentSession()来打开session,这个session就会被spring管理。

5. 配置spring事务处理

<!-- 配置 Spring 的声明式事务 --> <!-- 1. 配置事务管理器 --> <bean id="transactionManager" class="org.springframework.orm.hibernate4.HibernateTransactionManager">  <property name="sessionFactory" ref="sessionFactory"></property> </bean> <!-- 2. 配置事务属性, 需要事务管理器 --> <tx:advice id="txAdvice" transaction-manager="transactionManager">  <tx:attributes>   <!--<tx:method name="get*" read-only="true"/> -->   <!--<tx:method name="purchase" propagation="REQUIRES_NEW"/> -->   <!-- 让所有方法都加入事务管理 -->   <tx:method name="*"/>  </tx:attributes> </tx:advice> <!-- 3. 配置事务切点, 并把切点和事务属性关联起来 --> <aop:config>  <!-- 设置poincut表示哪些方法要加入事务处理 -->  <aop:pointcut expression="execution(* org.zttc.itat.dao.*.*(..))" id="allMethods"/>  <!-- 通过advisor来确定具体要加入事务控制的方法 -->  <aop:advisor advice-ref="txAdvice" pointcut-ref="allMethods"/> </aop:config>

看完了这篇文章,相信你对“如何在已有spring的基础上集成hibernate”有了一定的了解,如果想了解更多相关知识,欢迎关注编程网行业资讯频道,感谢各位的阅读!

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

如何在已有spring的基础上集成hibernate

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

如何在已有spring的基础上集成hibernate

小编给大家分享一下如何在已有spring的基础上集成hibernate,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!1.导入hibernate的包和spring的包hibernate3、hibernate-jpa-2.0-
2023-05-30

如何进行spring hibernate的集成

如何进行spring hibernate的集成,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。Hibernate有很多值得学习的地方,这里主要介绍Spring H
2023-06-17

基于Docker的Nginx与PHP-FPM的集成部署(如何在Docker中集成Nginx与PHP-FPM?)

Docker集成的Nginx和PHP-FPM简化了Web应用程序部署。Dockerfile中指定配置,构建镜像后,docker-compose.yml文件定义容器配置并启动容器。高级配置包括卷挂载、环境变量和自定义镜像。集成Nginx和PHP-FPM对于可靠且可移植的Web应用程序部署至关重要,可以通过持续集成实现自动化。
基于Docker的Nginx与PHP-FPM的集成部署(如何在Docker中集成Nginx与PHP-FPM?)
2024-04-02

基于Docker的Nginx与MySQL的集成实践(如何在Docker中集成Nginx与MySQL数据库?)

在Docker环境中集成Nginx和MySQL可创建一个可扩展、可维护的应用程序架构。通过创建Docker网络、启动MySQL容器、初始化数据库、启动Nginx容器、配置Nginx服务器块并加载配置,可以实现Nginx与MySQL的集成。优化策略包括数据持久化、监控、备份和更新。这种集成简化了Web开发,提供了可靠和高效的解决方案。
基于Docker的Nginx与MySQL的集成实践(如何在Docker中集成Nginx与MySQL数据库?)
2024-04-02

服务器 IaaS 的最佳实践:如何有效利用基础设施即服务实现业务成功

服务器 IaaS 可以通过提高敏捷性、降低成本和提高安全性来帮助企业实现业务成功。通过遵循最佳实践,企业可以最大限度地利用 IaaS 并实现其业务目标。
服务器 IaaS 的最佳实践:如何有效利用基础设施即服务实现业务成功
2024-02-27

Docker中Nginx与后端服务的通信与集成(Nginx如何在Docker中与后端服务进行有效通信?)

Docker中Nginx与后端服务的通信机制包括容器间网络、服务名称解析、反向代理和健康检查。Nginx根据请求规则将请求转发给后端服务,而后端服务处理请求并返回响应。DockerCompose可简化部署并确保通信正常。优化策略包括负载均衡算法、持久连接、超时设置、健康检查和容器编排工具。
Docker中Nginx与后端服务的通信与集成(Nginx如何在Docker中与后端服务进行有效通信?)
2024-04-02

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录