- 浏览: 7204071 次
- 性别:
- 来自: 北京
-
文章分类
- 全部博客 (397)
- 架构研究 (44)
- 网络协议-TCP/HTTP (20)
- SPRING (23)
- HIBERNATE 3 (30)
- STRUTS 2 (20)
- Java/J2se (25)
- Servlet/Jsp (9)
- 开发工具IDE (10)
- WEB服务器 (17)
- 前端--Java Script (33)
- 前端--CSS (7)
- OS--Linux (31)
- OS--MAC OS (19)
- MySQL数据库 (19)
- Oracle数据库 (11)
- 项目管理工具 (12)
- 数据报表技术 (4)
- 图像处理技术 (10)
- 其它综合技术 (13)
- 权限管理 (1)
- MyBatis (1)
- 网络安全 (6)
- IO (21)
- PostgreSQL (2)
- Eclipse RCP (1)
- GWT (1)
- 算法 (3)
- Storm (2)
- zookeeper (3)
- 消息 (1)
最新评论
-
bukebuhao:
已解决,打开文件太多。ulimit -n 上次临时生效后再次s ...
TFS(Taobao File System)配置dataServer、分区、挂载数据盘 -
bukebuhao:
ds重启后启动不了。报错信息如下,请大神帮助[2018-08- ...
TFS(Taobao File System)配置dataServer、分区、挂载数据盘 -
墨上清:
感谢,看完有了一个完整的知识网络。
Spring MVC 教程,快速入门,深入分析 -
云卷云舒灬:
谢谢,学到很多
Spring MVC 教程,快速入门,深入分析 -
luozhy:
非常感谢非常感谢
Project Web Access ActiveX控件 安装
在一些特殊情况下,我们可能会把数据库连接信息保存在config.properties 文件中, 例如做一个install.jsp 来修改config.properties文件 ,实现对数据库信息的在线配置.这时 数据库连接信息保存在hibernate.cfg.xml就不方便.所以要单独保存到properties文件 中.
config.properties文件内容如下 :
#数据库IP dbhost = localhost #端口号 dbport=3306 #用户名 dbuser = root #密码 dbpw = 1234 #数据库名 dbname = test
hibernate.cfg.xml 文件 无数据库配置信息, 如下:
<!DOCTYPE hibernate-configuration PUBLIC "-//Hibernate/Hibernate Configuration DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd"> <hibernate-configuration> <session-factory > <property name="show_sql">true</property> <property name="hibernate.hbm2ddl.auto">update</property> <property name="hibernate.dialect">org.hibernate.dialect.MySQLInnoDBDialect</property> <property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property> <!-- 注释了, 不起作用 //<property name="hibernate.connection.url">jdbc:mysql:///test</property> //<property name="hibernate.connection.username">root</property> //<property name="hibernate.connection.password">1234</property> --> <mapping resource="dao/po/User.hbm.xml"/> </session-factory> </hibernate-configuration>
我们这样结合使用:
package dao; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.InputStream; import java.io.UnsupportedEncodingException; import java.net.URLDecoder; import java.util.Properties; import org.hibernate.HibernateException; import org.hibernate.Session; import org.hibernate.SessionFactory; import org.hibernate.cfg.Configuration; /** * 这是一个工具类, 快速取得session * */ public class HibernateUtil { static SessionFactory sessionFactory = null; static { try { final String path = URLDecoder.decode(Thread.currentThread().getContextClassLoader().getResource( "config.properties").getPath(), "UTF-8"); //config.properties保存的真实路径 final Properties properties = new Properties(); final InputStream fis = new FileInputStream(path); //config.properties 文件对象,里面有数据库的连接信息, properties.load(fis); fis.close(); //关流 final String dbhost = properties.getProperty("dbhost"); //数据库IP(从config.properties读) final String dbport = properties.getProperty("dbport"); //端口(从config.properties读) final String dbname = properties.getProperty("dbname"); //数据库名(从config.properties读) final String dbuser = properties.getProperty("dbuser"); //用户名(从config.properties读) final String dbpw = properties.getProperty("dbpw"); //密码(从config.properties读) final Properties extraProperties = new Properties(); extraProperties.setProperty("hibernate.connection.url", "jdbc:mysql://" + dbhost + ":" + dbport + "/" + dbname + "?zeroDateTimeBehavior=convertToNull"); extraProperties.setProperty("hibernate.connection.username", dbuser); extraProperties.setProperty("hibernate.connection.password", dbpw); final Configuration cfg = new Configuration(); cfg.addProperties(extraProperties); cfg.configure("hibernate.cfg.xml"); //路径可以改变 sessionFactory = cfg.buildSessionFactory(); } catch (final UnsupportedEncodingException e) { //不支持字符编码。 e.printStackTrace(); } catch (final FileNotFoundException e) { //config.properties文件没找到 e.printStackTrace(); } catch (final HibernateException e) { //cfg.configure("hibernate.cfg.xml");时异常 e.printStackTrace(); } catch (final Exception e) { //创建SessionFactory 异常 e.printStackTrace(); } } public static SessionFactory getSessionFactory() { return sessionFactory; } /** * 取得session * * @return session */ public static Session getSeesion() { return sessionFactory.openSession(); } }
- My-Hibnate.rar (16.8 KB)
- 下载次数: 85
发表评论
-
Hibernate二级缓存 ---- 最佳实践
2010-11-08 10:17 39329作者:赵磊 博客:ht ... -
Hibernate--泛型DAO
2010-06-27 19:49 5094泛型DAO(翻译) http://www.iteye.com ... -
Hibernate--空位
2010-06-27 15:41 1837原文章已合并整理到: http://elf8848.itey ... -
Hibernate二级缓存 ---- 入门示例
2010-06-27 15:34 4180一. 我们使用oscache来演示 , 引入oscache的j ... -
Hibernate 操作Blob Clob
2010-06-14 16:50 5284Photo.java import java.sql.Bl ... -
Hibernate ---- 控制日志
2010-06-06 11:46 3064Hibernate版本 3.3或3.4 Hibernate ... -
Hibernate悲观锁定与乐观锁定
2010-05-17 15:08 2275悲观锁定 由数据库方面实现. 可见:Hibernate悲观锁 ... -
Hibernate懒加载深入分析
2010-05-14 11:22 8333[size=small] ------------------ ... -
Hibernate批量操作(JDBC批量操作)
2009-03-30 14:52 8432部分内容转自 :http://ga ... -
Hibernate分页查询与泛型
2009-03-26 19:03 7379JE有两篇文章,关于分页查询 与泛型 的,写的很好.这里收藏一 ... -
20 Hibernate 1+N问题的原理与解决
2009-03-04 09:44 13097什么时候会遇到1+N的问题? 前提:Hibernate默认表 ... -
19 Criteria查询,DetachedCriteria离线查询 --做综合查询
2009-03-04 09:35 3754通过Session得到Criteria类的对象 /** ... -
空位空位
2009-03-03 10:22 2363空位空位空位空位 -
17 继承(四)每一个具体的类 映射到一张表
2009-03-02 13:54 2329类(Person) , 男人(Men)继 ... -
16 继承(三)(把前面14,15讲的情况结合起来)
2009-03-02 13:30 2116人类(Person) , 男人(Men)继承"人& ... -
15 继承(二)(每个子类扩展的属性单独保存在一张表中)
2009-03-02 13:07 2091人类(Person) , 男人(Men)继承" ... -
14 继承(一)(整个继承树映射到一张表)
2009-03-02 11:00 2260人类(Person) , 男人(Men)继承" ... -
13 级联和关系维护(Cascade 和Inverse)
2009-03-01 17:58 3071Cascade用来说明当对主对象进行某操作时, 是否对其关联的 ... -
12 映射-- 集合类的映射(Set,List,Map,Array)
2009-03-01 16:18 2649部门类Department , 他有 empa1, emp ... -
11 映射-- 组件映射(人类与姓名类)
2009-03-01 15:26 2378User类: 注意他的name属性 package ...
相关推荐
在压缩包文件`ssh_inte2`中,可能包含了示例代码或者更详细的配置文件,用于展示如何不使用`hibernate.cfg.xml`完成SSH整合。如果你需要深入理解这个过程,建议查看这些文件,结合本文中的解释进行学习。 总的来说...
在IT行业中,XML文件是常用于配置和存储数据的格式,尤其在Java世界里,比如Hibernate框架的配置文件`hibernate.cfg.xml`。本文将深入探讨如何使用DOM4J库来生成和读取`hibernate.cfg.xml`,这是一个强大的Java XML...
首先,`Hibernate.cfg.xml`文件有两种形式,即基于属性的.properties文件和基于XML的配置文件。本文主要讨论基于XML的配置方式,因为其更具有可读性和灵活性。 ### 1. 数据源配置 在`Hibernate.cfg.xml`中,数据源...
在这个场景中,我们关注的是Hibernate的配置文件——`hibernate.cfg.xml`。这个文件是Hibernate应用的核心,它定义了数据源、SessionFactory、实体类映射等关键信息,使得Java对象可以直接与数据库进行交互。 首先...
在本文中,我们将深入探讨如何将Spring Boot框架与Hibernate ORM集成,特别是在不使用JPA(Java Persistence API)的情况下。Spring Boot以其便捷的自动配置和简化Java应用开发而广受欢迎,而Hibernate作为Java领域...
`hibernate-configuration-3.0.dtd`是Hibernate 3.0版本的配置文件格式的规范,它规定了`hibernate.cfg.xml`文件中元素和属性的语法。例如,`<session-factory>`是配置文件中的核心元素,它可以包含如`<property>`...
接下来,您需要生成 hibernate.cfg.xml 文件,这是 Hibernate 的配置文件。您可以使用 HibernateSynchronizer 插件来生成该文件。在 Eclipse 中,您可以选择 File->New->Other->Hibernate->Hibernate Configuration ...
本文将详细讨论`hibernate.properties`和`hibernate.cfg.xml`这两种配置文件的使用。 1. **hibernate.properties**: - 这是Hibernate的一种配置方式,通常用于较简单的设置。在Hibernate 3.1的`etc`目录下提供了...
使用 `hibernate.cfg.xml` 文件时,可以直接在配置文件中添加或修改`hbm`映射文件,而`hibernate.properties`则需要在程序初始化时手动添加映射。尽管如此,这两种方式配置的项本质上是相同的。 ### hibernate....
本讲主要探讨了如何配置Hibernate系统以实现数据库连接,涵盖了两种主要的配置文件格式:`hibernate.properties`和`hibernate.cfg.xml`。 首先,Hibernate配置文件有两类型:`hibernate.properties`和`hibernate....
本讲将深入探讨如何配置Hibernate系统,主要包括hibernate.properties文件和hibernate.cfg.xml文件的使用。 首先,Hibernate的默认配置参数使其能够在多种环境下工作。默认配置样例文件hibernate.properties位于...
在 Hibernate 中,C3P0 的配置主要通过 `hibernate.properties` 或 `hibernate.cfg.xml` 文件中的属性进行设置。这些配置项对于控制连接池的行为至关重要。 #### 3. 关键配置参数详解 ##### 3.1 hibernate....
本文将详细介绍如何利用反射机制来修改已经加载到内存中的`hibernate.cfg.xml`配置文件中的信息,并将这些配置信息提取到其他路径下的过程。 #### 一、了解Hibernate配置文件 在Hibernate框架中,`hibernate.cfg....
1. **XML配置文件**:如`hibernate.cfg.xml`。 2. **程序代码中的Properties对象**:如本文档中所示。 3. **注解**:在实体类中使用注解进行配置。 4. **程序代码中的Configuration对象**:设置各种属性值。 #### ...
这个文件是Hibernate配置文件的文档类型定义(DTD),用于验证配置文件`hibernate.cfg.xml`的格式是否正确。它规定了如数据库连接信息、缓存设置、实体类加载路径等配置项的结构和属性。例如,其中 `...
绝版作品!一切都只是曾经,神马都是浮云!...运行先改jdbc.properties和hibernate.cfg.xml里面的数据库配置!数据库最好事先存在。 再运行test包的testCreateDB-》testData(插入数据!)即可运行!
另一种配置方式是通过`hibernate.cfg.xml`文件,它提供了更全面的配置选项,包括: - `<property name="dialect">`: 同`hibernate.dialect`,指定数据库方言。 - `<property name="hbm2ddl.auto">`: 设置自动建表...
`Configuration`类是Hibernate配置的核心,它负责读取并解析`hibernate.cfg.xml`和`hibernate.properties`文件中的配置信息,将这些信息转换为`Settings`对象,供`SessionFactory`创建时使用。 #### SessionFactory...
在你的`hibernate.cfg.xml`配置文件中,找到或添加以下行: ```xml <property name="hibernate.show_sql">true ``` 这将让Hibernate在控制台打印出执行的SQL语句,但它们仍然是带有问号占位符的形式。 要显示不带...