Hibernate Configuration配置摘要

本文详细介绍了Hibernate配置过程,包括映射文件的添加方式,如通过资源文件或直接指定类,配置属性的设定,如dialect和connection.datasource,以及日志配置,需要log4j.jar和commons-logging。还提到了可选配置属性,例如多个SessionFactory的可能性,并指出系统属性应通过java -Dproperty=value设置。最后,讨论了命名策略和XML配置文件hibernate.cfg.xml的作用。

Hibernate Configuration配置摘要:

一、配置方案

  1. 映射文件位于classpath路径下:
    Configuration cfg = new Configuration()
        .addResource(
    "Item.hbm.xml")
        .addResource(
    "Bid.hbm.xml");

  2. 直接指定映射类(硬编码):
    Configuration cfg = new Configuration()
        .addClass(org.hibernate.auction.Item.
    class)
        .addClass(org.hibernate.auction.Bid.
    class);

    hibernate会在classpath路径下查找映射文件:/org/hibernate/auction/Item.hbm.xml/org/hibernate/auction/Bid.hbm.xml
  3. 使用Configuration指定configuration属性:
    Configuration cfg = new Configuration()
        .addClass(org.hibernate.auction.Item.
    class)
        .addClass(org.hibernate.auction.Bid.
    class)
        .setProperty(
    "hibernate.dialect""org.hibernate.dialect.MySQLInnoDBDialect")
        .setProperty(
    "hibernate.connection.datasource""java:comp/env/jdbc/test")
        .setProperty(
    "hibernate.order_updates""true");

    也可以通过以下几种方法设置配置属性:
    ●通过java.util.Properties实例传递到Configuration.setProperties()方法;
    ●将hibernate.properties配置文件放于classpath根目录下;
    ●通过 java -Dproperty=value 设置系统属性
    ●在hibernate.cfg.xml文件中 <property> 元素;

二、可选配置属性


        一般情况下,应用程序中只需要一个SessionFactory,如果要连接多个数据库可以多个SessionFactory。

SessionFactory sessions = cfg.buildSessionFactory();
    Session session = sessions.openSession(); // 打开一个新的session

更多针对不同数据库的连接字串设置可参考/etc文件夹下的hibernate.properties。 系统属性一定要通过java -Dproperty=value来设置。

三、日志

需要log4j.jar、commons-logging。
log4j.properties文件可在/etc文件夹下找到。

四、命名策略(NamingStrategy

SessionFactory sf = new Configuration()
    .setNamingStrategy(ImprovedNamingStrategy.INSTANCE)
    .addFile(
"Item.hbm.xml")
    .addFile(
"Bid.hbm.xml")
    .buildSessionFactory();

org.hibernate.cfg.NamingStrategy
org.hibernate.cfg.ImprovedNamingStrategy

 五、XML配置文件:hibernate.cfg.xml(放置于classpath路径下)

 

SessionFactory sf = new Configuration().configure().buildSessionFactory();

        或者要指定使用其他的XML配置文件: 

SessionFactory sf = new Configuration()
    .configure(
"catdb.cfg.xml")
    .buildSessionFactory();

 

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值