- 浏览: 229886 次
- 性别:
- 来自: beijing
文章分类
很多朋友不知道两者的区别,我在这里详细说说吧。
如果是使用hibernate.properties作为配置文件的话,配置文件的内容大概是这样的:
--------------------------------------------------------------
hibernate.dialect=org.hibernate.dialect.MySQLDialect
hibernate.connection.driver_class=com.mysql.jdbc.Driver
hibernate.connection.url=jdbc:mysql://localhost:3306/work
hibernate.connection.username=root
hibernate.connection.password=1234
hibernate.show_sql=true
===============================================
而我们想用hibernate.cfg.xml的话,内容大概是这样的:
<hibernate-configuration>
<session-factory>
<property name="connection.driver_class">org.gjt.mm.mysql.Driver</property>
<property name="dialect">org.hibernate.dialect.MySQLDialect</property>
<property name="connection.url">jdbc:mysql://localhost:3306/work</property>
<property name="connection.username">root</property>
<property name="connection.password">1234</property>
<mapping resource="bean/Note.hbm.xml"/>
<mapping resource="bean/User.hbm.xml"/>
</session-factory>
</hibernate-configuration>
大家有没有发现什么不同的地方呢?对了,以hibernate.properties配置的话,没有配置被映射的类。那hibernate不能在hibernate.properties中知道需要映射的类,在哪里我们能让它知道呢?答案就在源文件里了。
当我们使用hibernate.properties作为配置文件的时候,我们的源文件中需要这样构造一个config:
这个方法用静态的方法修饰,或者放在构造函数中。
static{ try{ // Create a configuration based on the properties file we've put Configuration config = new Configuration(); config.addClass(Company.class) .addClass(HourlyEmployee.class) .addClass(SalariedEmployee.class); // Get the session factory we can use for persistence sessionFactory = config.buildSessionFactory(); }catch(Exception e){e.printStackTrace();} }
这里的config我们必须调用addClass()方法,这就是我们使hibernate知道映射类的地方了。当然使用hibernate.cfg.xml来配置的话,我们就可以这样写:
Configuration config = new Configuration();
SessionFactory sf = config.configure("/hibernate.cfg.xml").buildSessionFactory();
//这里调用了configure()方法来指定hibernate.cfg.xml的位置
Session session = sf.openSession();
我们就不用再配置需要映射的类了,重复配置的话会出现重复映射异常。
总之,我们要使用两种方法其中一种就行了,就是说如果hibernate.cfg.xml中没有说明映射关系的话,在源文件中使用addClass()方法就可以了,但不能重复!。
hibernate.properties 文件是默认读取的。
另外,在hibernate的启动过程中,会先找hibernate.properties,然后读取hibernate.cfg.xml,后者会覆盖前者相同的属性
发表评论
-
二进制 授权管理 java
2013-09-09 12:52 906package org.qincy.binary; ... -
com.richfit.bi.quartz 定时执行示例
2013-04-12 15:39 01 内含jetty 配置,下载jetty 依赖包,算了,还是提 ... -
利用工具将shp文件导入到oracle spatial中
2012-05-21 14:20 43901 下载shp2sdo 工具,将工具放在 oracle按照目录 ... -
Arcgis object for java 访问栅格数据,使用GP工具,进行栅格矢量化---栅格矢量化面。
2012-06-20 09:17 4137直接贴代码了,不多解释了。 1、栅格数据的 ... -
svn 删除注册表
2012-02-11 12:02 1552svn 删除注册表 -
arcgis server 服务
2012-01-06 17:58 1182package com.hdmap.fymas; imp ... -
Flex BlazeDS java 项目
2011-12-12 17:21 1096根据网上的例子 ,写的 flex BlazeDS 框架与 ... -
工具类
2011-02-18 14:05 977英文数字转换为 中文数字 public class Mon ... -
junit 4 spring 自动化测试
2010-12-13 16:08 16391 添加jar ,依赖jar 包围 spring-test, ... -
在tomcat 发布,去掉项目名称
2010-11-17 09:53 19641 找到 server.xml 配置= ... -
掉字段内容包含的空格
2010-09-27 10:17 980使用replace函数去掉字段内容包含的空格,例子如下: up ... -
无聊的jsti 的fn 函数(资料备份)
2010-09-25 17:16 978无聊的jsti 的fn 函数(资料备份) ... -
无聊写Code
2010-09-25 09:38 1004package edu.qdkj.main; impor ... -
Spring Quartz 学习
2010-09-20 09:27 1172Quartz 是一个 定时执行的框架,可以设定规定时执行,或者 ... -
kaptcha 例子
2010-09-13 15:09 3022kaptcha 简单例子 与 产生中文字符 kaptch ... -
myEclipse 下的项目不能编译
2010-09-09 14:21 948查看 是否有的错误的jar 1.项目----prope ... -
关于VLSM 例子
2010-08-31 16:57 1495未经测试,不知道理解是否正确。 VLSM(可变长子网掩码) ... -
jwebmail的配置
2010-08-16 16:59 2493jwebmail的配置说明 ... -
Solaris10下Nagios安装
2010-08-16 08:48 971发 -
java JDK 下载页面
2010-08-13 16:32 1008全部JDK 下载,从 1.1 到 jdk 6 下载 http ...
相关推荐
在这个场景中,我们关注的是不通过传统的`hibernate.cfg.xml`文件来配置Hibernate,而是借助Spring框架的`LocalSessionFactoryBean`进行整合。 首先,`hibernate.cfg.xml`是Hibernate传统配置文件,它包含了数据库...
通过这样的方式,我们可以将`hibernate.cfg.xml`中的配置分散到多个`.properties`文件中,提高代码的可维护性和安全性。这在大型项目或团队协作中尤其重要,因为它允许团队成员更专注于业务逻辑,而不是反复修改配置...
`hibernate-configuration-3.0.dtd`是Hibernate 3.0版本的配置文件格式的规范,它规定了`hibernate.cfg.xml`文件中元素和属性的语法。例如,`<session-factory>`是配置文件中的核心元素,它可以包含如`<property>`...
在IT行业中,XML文件是常用于配置和存储数据的格式,尤其在Java世界里,比如Hibernate框架的配置文件`hibernate.cfg.xml`。本文将深入探讨如何使用DOM4J库来生成和读取`hibernate.cfg.xml`,这是一个强大的Java XML...
在Java Web开发中,SSH(Struts、Spring、Hibernate)是...下载提供的`hibernate.cfg.xml`文件,可以作为参考模板,根据自己的数据库和应用需求进行修改,从而快速搭建Hibernate环境,实现Java对象与数据库的无缝交互。
首先,`Hibernate.cfg.xml`文件有两种形式,即基于属性的.properties文件和基于XML的配置文件。本文主要讨论基于XML的配置方式,因为其更具有可读性和灵活性。 ### 1. 数据源配置 在`Hibernate.cfg.xml`中,数据源...
在 Hibernate 中,C3P0 的配置主要通过 `hibernate.properties` 或 `hibernate.cfg.xml` 文件中的属性进行设置。这些配置项对于控制连接池的行为至关重要。 #### 3. 关键配置参数详解 ##### 3.1 hibernate....
`hibernate.cfg.xml`是另一种常用的Hibernate配置方式,相比`hibernate.properties`,它提供了更灵活的XML结构来配置Hibernate。`hibernate-configuration-3.0.dtd`中包含了如`session-factory`、`property`、`...
本讲将深入探讨如何配置Hibernate系统,主要包括hibernate.properties文件和hibernate.cfg.xml文件的使用。 首先,Hibernate的默认配置参数使其能够在多种环境下工作。默认配置样例文件hibernate.properties位于...
本文将详细讨论`hibernate.properties`和`hibernate.cfg.xml`这两种配置文件的使用。 1. **hibernate.properties**: - 这是Hibernate的一种配置方式,通常用于较简单的设置。在Hibernate 3.1的`etc`目录下提供了...
【hibernate.properties】与【hibernate.cfg.xml】配置 在 Hibernate 框架中,配置文件主要有两种形式:`hibernate.properties` 和 `hibernate.cfg.xml`。两者的主要区别在于管理映射文件的方式。使用 `hibernate....
本讲主要探讨了如何配置Hibernate系统以实现数据库连接,涵盖了两种主要的配置文件格式:`hibernate.properties`和`hibernate.cfg.xml`。 首先,Hibernate配置文件有两类型:`hibernate.properties`和`hibernate....
Eclipse 上使用 Hibernate ...在 hibernate.cfg.xml 文件的首部,您需要添加 DOCTYPE 声明,以便 Hibernate 能够正确地解析配置文件。 通过以上步骤,您就能够在 Eclipse 环境中使用 Hibernate 完成持久层的开发。
在本文中,我们将深入探讨如何将Spring Boot框架与Hibernate ORM集成,特别是在不使用JPA(Java Persistence API)的情况下。Spring Boot以其便捷的自动配置和简化Java应用开发而广受欢迎,而Hibernate作为Java领域...
这个文件是Hibernate配置文件的文档类型定义(DTD),用于验证配置文件`hibernate.cfg.xml`的格式是否正确。它规定了如数据库连接信息、缓存设置、实体类加载路径等配置项的结构和属性。例如,其中 `...
在你的`hibernate.cfg.xml`配置文件中,找到或添加以下行: ```xml <property name="hibernate.show_sql">true ``` 这将让Hibernate在控制台打印出执行的SQL语句,但它们仍然是带有问号占位符的形式。 要显示不带...
在加载配置文件时,`Configuration`类会优先考虑`hibernate.cfg.xml`中的配置,如果存在相同的配置项,那么`hibernate.cfg.xml`中的值将覆盖`hibernate.properties`中的值。此外,通过`Configuration`类提供的方法,...
1. **XML配置文件**:如`hibernate.cfg.xml`。 2. **程序代码中的Properties对象**:如本文档中所示。 3. **注解**:在实体类中使用注解进行配置。 4. **程序代码中的Configuration对象**:设置各种属性值。 #### ...
C3P0的配置通常有两种方式,通过`hibernate.properties`或`hibernate.cfg.xml`文件。在`hibernate.properties`中,你需要定义一系列以`hibernate.c3p0.`开头的属性,例如: ``` hibernate.connection.driver_class ...
XML配置文件(`hibernate.cfg.xml`) - `hibernate.cfg.xml`是另一种配置方式,包含所有Hibernate的配置信息以及数据库连接参数。 - `dialect`属性定义数据库方言,与`hibernate.properties`中的`hibernate.dialect...