Hibernate.cfg.xml配置分析讲解

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
RDS MySQL Serverless 高可用系列,价值2615元额度,1个月
云数据库 RDS PostgreSQL,高可用系列 2核4GB
简介: 学习Hibernate时,经常会遇到Hibernate.cfg.xml配置问题,这里将介绍Hibernate.cfg.xml配置问题的解决方法。Hibernate的描述文件可以是一个properties属性文件,也可以是一个xml文件。下面讲一下Hibernate.cfg.xml配置。配置格式如下:

学习Hibernate时,经常会遇到Hibernate.cfg.xml配置问题,这里将介绍Hibernate.cfg.xml配置问题的解决方法。

Hibernate的描述文件可以是一个properties属性文件,也可以是一个xml文件。下面讲一下Hibernate.cfg.xml配置。配置格式如下:


1. 配置数据源

可以Hibernate.cfg.xml配置JDBC,也可以配置JNDI.在本小节中讲述数据源如何配置。

  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!DOCTYPE hibernate-configuration PUBLIC  
  3. "-//Hibernate/Hibernate Configuration DTD 3.0//EN"  
  4. "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
  5. <hibernate-configuration>
  6. <session-factory>
  7. <!-- 各属性的配置-->
  8. <!—为true表示将Hibernate发送给数据库的sql显示出来 -->
  9. <property name="show_sql">true</property>
  10. <!-- SQL方言,这边设定的是MySQL -->
  11. <property name="dialect">net.sf.hibernate.dialect.MySQLDialect</property>
  12. <!-- 一次读的数据库记录数 -->
  13. <property name="jdbc.fetch_size">50</property>
  14. <!-- 设定对数据库进行批量删除 --  
  15. <property name="jdbc.batch_size">30</property>
  16. <!—下面为JNDI的配置 -->
  17. <!-- 数据源的名称 -->
  18. <property name="connection.datasource">java:comp/env/jdbc/datasourcename</property>
  19. <!-- Hibernate的连接加载类 -->
  20. <property name="connection.provider_class">net.sf.hibernate. connection.DatasourceConnectionProvider</property>
  21. <property name="dialect">net.sf.hibernate.dialect.SQLServerDialect</property>
  22. <!—映射文件 -->
  23. <mapping resource="com/amigo/pojo/User.hbm.xml"/>
  24. <mapping resource="com/amigo/pojo/Org.hbm.xml"/>
  25. </session-factory>
  26. </hibernate-configuration>

2. c3p0连接池

c3p0连接池是Hibernate推荐使用的连接池,若需要使用该连接池时,需要将c3p0的jar包加入到classpath中。c3p0连接池的配置示例如下:

  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!DOCTYPE hibernate-configuration PUBLIC  
  3. "-//Hibernate/Hibernate Configuration DTD 3.0//EN"  
  4. "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
  5. <hibernate-configuration>
  6. <session-factory
  7. <!-- 显示实际操作数据库时的SQL -->
  8. <property name="show_sql">true</property>
  9. <!-- SQL方言,这边设定的是MySQL -->
  10. <property name="dialect">net.sf.hibernate.dialect.MySQLDialect</property>
  11. <!--驱动程序,在后续的章节中将讲述mysql、sqlserver和Oracle数据库的配置 -->
  12. <property name="connection.driver_class">……</property
  13. <!-- JDBC URL -->
  14. <property name="connection.url">……</property>
  15. <!-- 数据库用户名 -->
  16. <property name="connection.username">user</property>
  17. <!-- 数据库密码 -->
  18. <property name="connection.password">pass</property>
  19. <property name="c3p0.min_size">5</property
  20. <property name="c3p0.max_size">20</property>
  21. <property name="c3p0.timeout">1800</property>
  22. <property name="c3p0.max_statements">50</property>
  23. <!-- 对象与数据库表格映像文件 -->
  24. <mapping resource="com/amigo/pojo/User.hbm.xml"/>
  25. <mapping resource="com/amigo/pojo/Org.hbm.xml"/>
  26. </session-factory>
  27. </hibernate-configuration>


在上述配置中,Hibernate根据配置文件生成连接,再交给c3p0管理。

相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
MySQL数据库入门学习
本课程通过最流行的开源数据库MySQL带你了解数据库的世界。 &nbsp; 相关的阿里云产品:云数据库RDS MySQL 版 阿里云关系型数据库RDS(Relational Database Service)是一种稳定可靠、可弹性伸缩的在线数据库服务,提供容灾、备份、恢复、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼。 了解产品详情:&nbsp;https://www.aliyun.com/product/rds/mysql&nbsp;
相关文章
|
XML Ubuntu Linux
部署08---扩展-Win10配置WSL(Ubuntu)环境,WSL系统是什么意思,是Windows系统上的一个子系统, xml的一大特点是直链系统,直接链接你的CPU,硬盘和内存,如何用 WSL部署
部署08---扩展-Win10配置WSL(Ubuntu)环境,WSL系统是什么意思,是Windows系统上的一个子系统, xml的一大特点是直链系统,直接链接你的CPU,硬盘和内存,如何用 WSL部署
|
9月前
|
XML Java 数据格式
Spring容器Bean之XML配置方式
通过对以上内容的掌握,开发人员可以灵活地使用Spring的XML配置方式来管理应用程序的Bean,提高代码的模块化和可维护性。
229 6
|
12月前
|
XML Java 数据格式
Spring IOC—基于XML配置Bean的更多内容和细节(通俗易懂)
Spring 第二节内容补充 关于Bean配置的更多内容和细节 万字详解!
599 18
Spring IOC—基于XML配置Bean的更多内容和细节(通俗易懂)
|
12月前
|
XML Java 应用服务中间件
springMVC01,springMVC的执行流程【第一个springMVC例子(XML配置版本):HelloWorld】
通过一个HelloWorld实例,介绍了SpringMVC的基本概念、执行流程,并详细讲解了如何创建和配置第一个SpringMVC项目(基于XML)。
springMVC01,springMVC的执行流程【第一个springMVC例子(XML配置版本):HelloWorld】
|
11月前
|
XML 分布式计算 资源调度
大数据-02-Hadoop集群 XML配置 超详细 core-site.xml hdfs-site.xml 3节点云服务器 2C4G HDFS Yarn MapRedece(一)
大数据-02-Hadoop集群 XML配置 超详细 core-site.xml hdfs-site.xml 3节点云服务器 2C4G HDFS Yarn MapRedece(一)
411 5
|
11月前
|
XML 资源调度 网络协议
大数据-02-Hadoop集群 XML配置 超详细 core-site.xml hdfs-site.xml 3节点云服务器 2C4G HDFS Yarn MapRedece(二)
大数据-02-Hadoop集群 XML配置 超详细 core-site.xml hdfs-site.xml 3节点云服务器 2C4G HDFS Yarn MapRedece(二)
448 4
|
11月前
|
分布式计算 资源调度 Hadoop
大数据-01-基础环境搭建 超详细 Hadoop Java 环境变量 3节点云服务器 2C4G XML 集群配置 HDFS Yarn MapRedece
大数据-01-基础环境搭建 超详细 Hadoop Java 环境变量 3节点云服务器 2C4G XML 集群配置 HDFS Yarn MapRedece
274 4
|
11月前
|
XML Java 数据格式
手动开发-简单的Spring基于XML配置的程序--源码解析
手动开发-简单的Spring基于XML配置的程序--源码解析
187 0
|
SQL XML Java
mybatis :sqlmapconfig.xml配置 ++++Mapper XML 文件(sql/insert/delete/update/select)(增删改查)用法
当然,这些仅是MyBatis功能的初步介绍。MyBatis还提供了高级特性,如动态SQL、类型处理器、插件等,可以进一步提供对数据库交互的强大支持和灵活性。希望上述内容对您理解MyBatis的基本操作有所帮助。在实际使用中,您可能还需要根据具体的业务要求调整和优化SQL语句和配置。
189 1
|
XML Android开发 UED
"掌握安卓开发新境界:深度解析AndroidManifest.xml中的Intent-filter配置,让你的App轻松响应scheme_url,开启无限交互可能!"
【8月更文挑战第2天】在安卓开发中,scheme_url 通过在`AndroidManifest.xml`中配置`Intent-filter`,使应用能响应特定URL启动或执行操作。基本配置下,应用可通过定义特定URL模式的`Intent-filter`响应相应链接。
310 12