gpt4 book ai didi

hibernate4基本配置方式详解

转载 作者:qq735679552 更新时间:2022-09-28 22:32:09 24 4
gpt4 key购买 nike

CFSDN坚持开源创造价值,我们致力于搭建一个资源共享平台,让每一个IT人在这里找到属于你的精彩世界.

这篇CFSDN的博客文章hibernate4基本配置方式详解由作者收集整理,如果你对这篇文章有兴趣,记得点赞哟.

可编程的配置方式-1 。

如果在配置cfg.xml的时候,不想在里面配置hbm.xml怎么办呢?可在程序里使用可编程的配置方式,也就是使用程序来指定在cfg.xml里面的配置信息,不推荐这种方式。如下:

?
1
2
3
configuration cfg= new configuration()
.addresource( "item.hbm.xml" )
.addresource( "bid.hbm.xml" );

一个替代方法(有时是更好选择)是,指定被映射的类,让hibernate帮你寻找映射定义文件

?
1
2
3
configuration cfg= new configuration()
.addclass(org.hibernate.auction.item. class )
.addclass(org.hibernate.auction.bid. class );

这种方式消除了任何对文件名的硬编码 。

可编程的配置方式-2 。

还可以通过编程的方式来指定配置属性:

?
1
2
3
4
5
configuration cfg= new configuration()
.addclass(org.hibernate.auction.item. class )
.setproperty( "hibernate.dialect" , "org.hibernate.dialect.mysqlinnodbdialect" )
.setproperty( "hibernate.connection.datasource" ,"
.setproperty( "hibernate.order_updates" , "true" );

其他可以传入配置属性的方式:

1:properties文件 。

2:xml文件 。

3:设置java的系统属性,形如:java–dproperty=value 。

另外要注意一点:

org.hibernate.cfg.configuration实例被设计成启动期间(startup-time)对象,一旦sessionfactory 创建完成它就被丢弃了.

与数据库连接的配置有两种方法,一种是jdbc,一种是datasource 。

jdbc的配置 。

  。

示例:

?
1
2
3
4
oracle.jdbc.driver.oracledriver
jdbc:oracle:thin: @localhost : 1521 :orcl
bjpowernode
bjpowernode

数据源的配置 。

  。

示例如下:

?
1
java:/bjpowernodeds

连接池c3p0的配置 。

由于hibernate自己实现的连接池不太好,在项目中,建议使用工业级的连接池,比如:c3p0,hibernate发行包中带有c3p0,下面就是其基本配置示例:

?
1
2
3
4
5
6
7
8
"connection.driver_class" >oracle.jdbc.driver.oracledriver
"connection.url" >jdbc:oracle:thin: @localhost : 1521 :orcl
"connection.username" >bjpowernode
"connection.password" >bjpowernode
"c3p0.min_size" > 5
"c3p0.max_size" > 20
"c3p0.timeout" > 180
"c3p0.max_statements" > 50

hibernate4基本配置方式详解

连接池c3p0的配置 。

由于hibernate自己实现的连接池不太好,在项目中,建议使用工业级的连接池,比如:c3p0,hibernate发行包中带有c3p0,下面就是其基本配置示例:

?
1
2
3
4
5
6
7
8
"connection.driver_class" >oracle.jdbc.driver.oracledriver
"connection.url" >jdbc:oracle:thin: @localhost : 1521 :orcl
"connection.username" >bjpowernode
"connection.password" >bjpowernode
"c3p0.min_size" > 5
"c3p0.max_size" > 20
"c3p0.timeout" > 180
"c3p0.max_statements" > 50

hibernate4基本配置方式详解

为了解决数据库中元素命名冲突的问题,引入catalog和schema来解决.

从概念上说,一个数据库系统包含多个catalog,每个 catalog又包含多个 。

schema,而每个schema又包含多个数据库对象(表、视图、字段等).

比较简单而常用的实现方式是使用数据库名作为catalog名,使用用户名作为schema名,各种数据库系统对catalog和schema的支持具体可参见下表:

hibernate4基本配置方式详解


hibernate4基本配置方式详解

hibernate4基本配置方式详解

hibernate4基本配置方式详解

hibernate4基本配置方式详解

hibernate4基本配置方式详解

hibernate4基本配置方式详解

hibernate4基本配置方式详解

hibernate4基本配置方式详解

为了让应用在jdbc事务和jta事务环境中可以移植,建议使用可选的hibernatetransaction api, 它包装并隐藏了底层系统,通过设置hibernate配置属性hibernate.transaction.factory_class来指定一个transaction实例的工厂类.

有三个标准(内建)的选择:

1:委托给数据库(jdbc)事务(默认) 。

hibernate4以前:org.hibernate.transaction.jdbctransactionfactory 。

hibernate4里面:org.hibernate.engine.transaction.internal.jdbc.jdbctransactionfactory 。

2:jta事务,如果在上下文环境中存在运行着的事务(如,ejb会话bean的方法), 则委托给容器管 理的事务, 否则,将启动一个新的事务,并使用bean管理的事务. 。

hibernate4以前:org.hibernate.transaction.jtatransactionfactory 。

hibernate4里面:org.hibernate.engine.transaction.internal.jta.jtatransactionfactory 。

3:委托给容器管理的jta事务 。

hibernate4以前:org.hibernate.transaction.cmttransactionfactory 。

hibernate4 。

里面:org.hibernate.engine.transaction.internal.jta.cmttransactionfactory 。

也可以定义属于你自己的事务策略 (如, 针对corba的事务服务) 。

hibernate4基本配置方式详解

hibernate4基本配置方式详解

  。

1:hibernate使用slf4j来做日志记录,可以根据你选择的绑定把日志输出到日志框架(nop、simple、log4jversion 1.2、jdk 1.4 logging、jcl 或 logback)上.

2:需要在 classpath里加入 slf4j-api.jar 和你选择的绑定的 jar 文件(使用 log4j 时加入slf4j-log4j12.jar),当然别忘了加入log4j自己的jar包.

hibernate4基本配置方式详解

总结 。

以上所述是小编给大家介绍的hibernate4基本配置方式详解,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对我网站的支持! 。

原文链接:http://blog.sina.com.cn/s/blog_9c6852670102wvo5.html 。

最后此篇关于hibernate4基本配置方式详解的文章就讲到这里了,如果你想了解更多关于hibernate4基本配置方式详解的内容请搜索CFSDN的文章或继续浏览相关文章,希望大家以后支持我的博客! 。

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com