Your Ad Here
首页 | 编程语言 | 网站建设 | 游戏天堂 | 冲浪宝典 | 网络安全 | 操作系统 | 软件时空 | 硬件指南 | 病毒相关 | IT 认证
软讯网络 > 编程语言 > Java > Hibernate学习笔记一(HIBERNATE配置)--以HIBERNATE_REFERENCE为参考
【标  题】:Hibernate学习笔记一(HIBERNATE配置)--以HIBERNATE_REFERENCE为参考
【关键字】:Hibernate
【来  源】:http://blog.csdn.net/rexwu/archive/2006/11/29/1419733.aspx

Hibernate学习笔记一(HIBERNATE配置)--以HIBERNATE_REFERENCE为参考

Your Ad Here

  之前有粗略的使用过其他的一些ORM,如IBATIS,TOPLINK,也有过部分性能调优的一些经验.最近闲来无事也就想仔细学习下HIBERNATE的,毕竟有这么热嘛,出去吹牛要是说不熟悉HIBERNATE肯定会被人笑话不是.之前有看过一点HIBERNATE不过没有实践也没太过深入去了解,忘记得差不多.这次卷土重来自然希望能留点印记.好歹也要整个雁过留声人过留名,看书怎么也要留个记号:).
  这篇文章主要介绍下HIBERNAGTE的配置.

HIBERNATE_REFERENCE中的配置分两部分:

一:ORM映射配置文件的读取
  主要使用的是CONFIGURATION类的ADDRESOURCE,ADDCLASS等API.这个比较简单.略过不谈.

二:关于HIBERNATE的一些特性配置的读取
  在文中列出五种方法:
1.ConfigurationsetProperty()
2.Configuration.setProperties()
3.将hibernate.properties文件放置于CLASSPATH的目录.如果你使用WEB项目的话他就应该放在WEB-INF\classes目录下
4.Set System properties using java -Dproperty=value.
5.Include <property> elements in hibernate.cfg.xml

这几种方法中1,2两种方法简单而且类似.不用多讲.
而关于第3,4两种方法可以在此小议一番.

第3种方法设置hibernate.properties是因为当我们使用HIBERNATE的时候他会自动搜索CLASSPATH上的hibernate.properties
文件并将其中的值加到CONFIGURATION的PROPERTIES属性中.这个我们可以通过调试HIBERNATE的内存状况可以发现这一结果.

第4种方法设置System properties,这里提到的方法是在启动JDK的时候带属性参数来实现.其实我们还可以通过其他方法来实现这一
功能,可以我们自行定义一个属性文件比如放置一个Property.properties在CLASSPATH中再使用如下的API载入属性(这一方法在另一篇文章关于读取资源文件中有详细讲述过)
System.getProperties().load(Thread.currentThread().getContextClassLoader().getResourceAsStream("Property.properties"));
这样一来我们就可以将HIBERNATE的属性定义到我们自己的属性文件中,有时候可以避免过多的属性文件.

第5种方法是根据2.Configuration.configure(String resource)这一API来读取XML文件.这种方法应该是我们使用HIBERNATE最常用的方法,我想.

总结下:关于配置的读取HIBERNATE本身提供了不少方法,除了纯的HIBERNATE接口外,还可以通过SYSTEM.properties这一中介进行配置,因为HIBERNATE创建一个Configuration
类的时候会首先读取SYSTEM.PROPERTIES这一系统属性.所以我们可以通过在获取Configuration之前将HIBERNATE的一些属性设置到SYSTEM.PROPERTIES中去就OK了.

关于HIBERNATE有多少属性以及这些属性的的意义可以参考文档资料,也可以去看下Environment这个类就清楚了.
还有就是ECLIPSE为我们设计了很好的HIBERNATE向导.可以为我们生成一部分非常不错的线程安全的代码.值得看看.

 

 

 

 

 


  


  

 

代码范例 - ArrayUtils:【上一篇】
Windows下JAVA环境变量的设置祥解:【下一篇】
【相关文章】
  • hibernate 关联查询Ⅱ
  • Hibernate 能够满足我们的验证需求
  • Struts+Spring+Hibernate 的两种组合配置方法
  • hibernate3.0下的批量删除
  • Spring 与Hibernate的延迟加载和Dao模式 [翻译]
  • struts+hibernate项目debug总结
  • SSH系列(二)--为什么要用Hibernate,给个理由先?
  • How hibernate benifit the Java Programming?
  • Hibernate学习(4)----JMX技术
  • Myeclipse开发struts+hibernate+spring新手入门---环境配置
  • 【随机文章】
  • 小心Web方式泄漏秘密
  • 规范化XML名称中的无效字符
  • 编码字符集与Java -Java World乱码问题根源之所在。 ZZ
  • 取汉字拼间首字母函数
  • 菜鸟帝国(二)
  • FreeBSD mail2000安装及故障排除
  • 初级黑客安全技术命令详解(1)
  • Informix SQL 语句详解(2)
  • 插入Excel 工作表和PowerPoint 文稿
  • mysql 问题
  • 【相关评论】
    没有相关评论
    【发表评论】
    姓名:
    邮件:
    随机码*
    评论*
          
    |  首 页  |  版权声明  |  联系我们   |  网站地图  |
    CopyRight © 2004-2007 软讯网络 All Rigths Reserved.