引言
在Java环境下有多种对象关系映射方法如实体BeanOJBJDOJDBC等Hibernate是一种新的O/R映射工具它不仅提供了从Java类到数据表的映射也提供了数据查询和恢复等机制Hibernate非常简单易学目前国内有很多同行已经或正在用Hibernate开发实施项目;但Hibernate有很多规则不为人知或应用甚少本文的目的就是将这些规则归纳总结希望对您的开发和设计有益
首先声明本文是Hibernate入门级文章高手请不用往下看了
基本定则
定则一:数据库配置文件名称可以不是Hibernateproperties或Hibernatecfgxml
由于Hibernate官方文档(本文指wwwhibernateorg的文档)的影响很多Hibernate开发者误以为系统一定要有名称为Hibernateproperties或Hibernatecfgxml的文件而且一定要放在classes的根目录下实际上该文件只是一般的配置文件名称可以自己取文件位置可以自己定而且在多数据库环境下可以有多个配置文件使得程序可以连接多个数据库只是您在创建会话工厂时需要特殊处理代码示例如下:
//配置文件名称
protected static String CONFIG_FILE = my_hibernateconfig;
//配置文件目录可以考虑在该目录下存放系统所有配置文件此处使用虚拟机参数
String configPath = SystemgetProperty(myconfig);
//创建会话工厂
sessionFactory =( new Configuration()configure(new File(configPath+Fileseparator+CONFIG_FILE))) buildSessionFactory();
定则二:小型项目中hbmxml文件可以合并到一个文件中
同样由于Hibernate官方文档的影响很多Hibernate开发者误以为Hibernate的对象关系映射一定要一个表对应一个对象并将映射文件和对象文件放在同一目录下实际上该模式是为规范性考虑而设计的因为在多人参与的项目中多人要维护同一文件容易产生沖突;当项目比较小时配置文件的维护人员少我们完全可以将hbmxml文件合并到一个或者几个文件中依据作者本人的项目设计开发经验最好是项目中有几人同时从事O/R映射和持久工作则设定几个hbmxml文件每人维护一个当然为了便于分类和管理每人的工作应该按逻辑划分
[] []