笑看風云
一切從頭開始
posts - 28, comments - 1, trackbacks - 0, articles - 2
導航
BlogJava
首頁
新隨筆
聯系
聚合
管理
<
2008年12月
>
日
一
二
三
四
五
六
30
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
1
2
3
4
5
6
7
8
9
10
常用鏈接
我的隨筆
我的評論
我的參與
最新評論
留言簿
給我留言
查看公開留言
查看私人留言
隨筆分類
(26)
C語言(1)
dwr(1)
hibernate(4)
Java(11)
javascript(5)
struts(1)
數據庫(3)
隨筆檔案
(28)
2009年11月 (1)
2009年9月 (1)
2009年5月 (2)
2009年4月 (3)
2009年1月 (3)
2008年12月 (5)
2008年8月 (2)
2008年7月 (10)
2008年6月 (1)
文章檔案
(2)
2008年7月 (2)
收藏夾
(3)
我的收藏(3)
搜索
積分與排名
積分 - 21889
排名 - 1650
最新評論
1.?re: 把數字轉換成中文貨幣表示
10001000.09 竟然輸出
壹仟零壹仟圓零玖分
--笨牛
閱讀排行榜
1.?hibernate批量插入數據(5077)
2.?10秒后實現頁面自動跳轉(3202)
3.?Hibernate配置文件(轉載)(1454)
4.?dwr session error問題(923)
5.?通用hibernateDAO(889)
評論排行榜
1.?把數字轉換成中文貨幣表示(1)
2.?js進行有效性驗證(0)
3.?表單錯誤信息的顯示(0)
4.?10秒后實現頁面自動跳轉(0)
5.?JSP隱藏對象(0)
Hibernate配置文件(轉載)
Posted on 2008-12-11 11:26
笑看風云
閱讀(1454)
評論(0)
編輯
收藏
所屬分類:
hibernate
<!--
標準的XML文件的起始行,version
=
'
1.0
'
表明XML的版本,encoding
=
'
gb2312
'
表明XML文件的編碼方式
-->
<?
xml version
=
'
1.0
'
encoding
=
'
gb2312
'
?>
<!--
表明解析本XML文件的DTD文檔位置,DTD是Document Type Definition 的縮寫,即文檔類型的定義,XML解析器使用DTD文檔來檢查XML文件的合法性。hibernate.sourceforge.net
/
hibernate
-
configuration
-
3
.0dtd可以在Hibernate3.
1
.3軟件包中的src\org\hibernate目錄中找到此文件
-->
<!
DOCTYPE hibernate
-
configuration PUBLIC
"
-//Hibernate/Hibernate Configuration DTD 3.0//EN
"
"
http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd
"
>
<!--
聲明Hibernate配置文件的開始
-->
<
hibernate
-
configuration
>
<!--
表明以下的配置是針對session
-
factory配置的,SessionFactory是Hibernate中的一個類,這個類主要負責保存HIbernate的配置信息,以及對Session的操作
-->
<
session
-
factory
>
<!--
配置數據庫的驅動程序,Hibernate在連接數據庫時,需要用到數據庫的驅動程序
-->
<
property name
=
"
hibernate.connection.driver_class
"
>
com.mysql.jdbc.Driver
</
property
>
<!--
設置數據庫的連接url:jdbc:mysql:
//
localhost/hibernate,其中localhost表示mysql服務器名稱,此處為本機, hibernate是數據庫名-->
<
property name
=
"
hibernate.connection.url
"
>
jdbc:mysql:
//
localhost/hibernate</hibernate>
<!--
連接數據庫是用戶名
-->
<
property name
=
"
hibernate.connection.username
"
>
root
</
property
>
<!--
連接數據庫是密碼
-->
<
property name
=
"
hibernate.connection.password
"
>
123456
</
property
>
<!--
數據庫連接池的大小
-->
<
property name
=
"
hibernate.connection.pool.size
"
>
20
</
property
>
<!--
是否在后臺顯示Hibernate用到的SQL語句,開發時設置為true,便于差錯,程序運行時可以在Eclipse的控制臺顯示Hibernate的執行Sql語句。項目部署后可以設置為false,提高運行效率
-->
<
property name
=
"
hibernate.show_sql
"
>
true
</
property
>
<!--
jdbc.fetch_size是指Hibernate每次從數據庫中取出并放到JDBC的Statement中的記錄條數。Fetch Size設的越大,讀數據庫的次數越少,速度越快,Fetch Size越小,讀數據庫的次數越多,速度越慢
-->
<
property name
=
"
jdbc.fetch_size
"
>
50
</
property
>
<!--
jdbc.batch_size是指Hibernate批量插入,刪除和更新時每次操作的記錄數。Batch Size越大,批量操作的向數據庫發送Sql的次數越少,速度就越快,同樣耗用內存就越大
-->
<
property name
=
"
jdbc.batch_size
"
>
23
</
property
>
<!--
jdbc.use_scrollable_resultset是否允許Hibernate用JDBC的可滾動的結果集。對分頁的結果集。對分頁時的設置非常有幫助
-->
<
property name
=
"
jdbc.use_scrollable_resultset
"
>
false
</
property
>
<!--
connection.useUnicode連接數據庫時是否使用Unicode編碼
-->
<
property name
=
"
Connection.useUnicode
"
>
true
</
property
>
<!--
connection.characterEncoding連接數據庫時數據的傳輸字符集編碼方式,最好設置為gbk,用gb2312有的字符不全
-->
<
property name
=
"
connection.characterEncoding
"
>
gbk
</
property
>
<!--
hibernate.dialect 只是Hibernate使用的數據庫方言,就是要用Hibernate連接那種類型的數據庫服務器。
-->
<
property name
=
"
hibernate.dialect
"
>
org.hibernate.dialect.MySQLDialect
</
property
>
<!--
指定映射文件為“hibernate
/
ch1
/
UserInfo.hbm.xml”
-->
<
mapping resource
=
"
org/mxg/UserInfo.hbm.xml
"
>
</
session
-
factory
>
</
hibernate
-
configuration
>
配置文件中映射元素詳解
對象關系的映射是用一個XML文檔來說明的。映射文檔可以使用工具來生成,如XDoclet,Middlegen和AndroMDA等。下面從一個映射的例子開始講解映射元素,映射文件的代碼如下。
<
?
xml version
=
"
1.0
"
?
>
<
!--
所有的XML映射文件都需要定義如下所示的DOCTYPE。
Hibernate會先在它的類路徑(classptah)中搜索DTD文件。
--
>
<
!
DOCTYPE hibernate
-
mapping PUBLIC
"
-//Hibernate/Hibernate Mapping DTD 3.0//EN
"
"
http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd
"
>
<
!--
hibernate
-
mapping有幾個可選的屬性:
schema屬性指明了這個映射的表所在的schema名稱。
default
-
cascade屬性指定了默認的級聯風格 可取值有 none、save、update。
auto
-
import屬性默認讓我們在查詢語言中可以使用非全限定名的類名 可取值有
true
、
false
。
package屬性指定一個包前綴。
--
>
<hibernate
-
mapping schema
=
"
schemaName
"
default
-
cascade
=
"
none
"
auto
-
import
=
"
true
"
package
=
"
test
"
>
<
!--
用class元素來定義一個持久化類
--
>
<
class
name
=
"
People
"
table
=
"
person
"
>
<
!--
id元素定義了屬性到數據庫表主鍵字段的映射。
--
>
<id name
=
"
id
"
>
<
!--
用來為該持久化類的實例生成唯一的標識
--
>
<generator
class
=
"
native
"
/
>
<
/
id>
<
!--
discriminator識別器 是一種定義繼承關系的映射方法
--
>
<discriminator column
=
"
subclass
"
type
=
"
character
"
/
>
<
!--
property元素為類聲明了一個持久化的,JavaBean風格的屬性
--
>
<property name
=
"
name
"
type
=
"
string
"
>
<column name
=
"
name
"
length
=
"
64
"
not
-
null
=
"
true
"
/
>
<
/
property>
<property name
=
"
sex
"
not
-
null
=
"
true
"
update
=
"
false
"
/
>
<
!--
多對一映射關系
--
>
<many
-
to
-
one name
=
"
friend
"
column
=
"
friend_id
"
update
=
"
false
"
/
>
<
!--
設置關聯關系
--
>
<set name
=
"
friends
"
inverse
=
"
true
"
order
-
by
=
"
id
"
>
<key column
=
"
friend_id
"
/
>
<
!
—一對多映射
--
>
<one
-
to
-
many
class
=
"
Cat
"
/
>
<
/
set>
<
/
class
>
<
/
hibernate
-
mapping>
組件應用的方法
組件有兩種類型,即組件(component)和動態組件(dynamic
-
component)。在配置文件中,component元素為子對象的元素與父類對應表的字段建立起映射關系。然后組件可以聲明它們自己的屬性、組件或者集合。component元素的定義如下所示:
<component name
=
"
propertyName
"
class
=
"
className
"
insert
=
"
true|false
"
upate
=
"
true|false
"
access
=
"
field|property|ClassName
"
>
<property
..
/
>
<many
-
to
-
one
.
/
>
..
<
/
component>
在這段代碼中,name是指屬性名,class是類的名字,insert指的是被映射的字段是否出現在SQL的INSERT語句中,upate指出被映射的字段是否出現在SQL的UPDATE語句中,access指出訪問屬性的策略。
Hiebernate的基本配置
Hibernate的數據庫連接信息是從配置文件中加載的。Hibernate的配置文件有兩種形式:一種是XML格式的文件,一種是properties屬性文件。properties形式的配置文件默認文件名是hibernate.properties,一個properties形式的配置文件內容如下所示:
#指定數據庫使用的驅動類
hibernate.connection.driver_class
=
com.mysql.jdbc.Driver r
#指定數據庫連接串
hibernate.connection.url
=
jdbc:mysql:
//
localhost:3306/db
#指定數據庫連接的用戶名
hibernate.connection.username
=
user
#指定數據庫連接的密碼
hibernate.connection.password
=
password
#指定數據庫使用的方言
hibernate.dialect
=
net.sf.hibernate.dialect.MySQLDialect
#指定是否打印SQL語句
hibernate.show_sql
=
true
文章出處:http:
//
www.diybl.com/course/3_program/java/javajs/200886/134789.html
新用戶注冊
刷新評論列表
只有注冊用戶
登錄
后才能發表評論。
網站導航:
博客園
IT新聞
Chat2DB
C++博客
博問
管理
相關文章:
Hibernate3緩存管理
c3p0配置
Hibernate配置文件(轉載)
通用hibernateDAO
Powered by:
BlogJava
Copyright © 笑看風云
主站蜘蛛池模板:
都江堰市
|
四子王旗
|
合肥市
|
平顺县
|
万载县
|
华坪县
|
乐业县
|
乐亭县
|
娄底市
|
大关县
|
安溪县
|
寿宁县
|
罗江县
|
且末县
|
黄陵县
|
临江市
|
乐平市
|
准格尔旗
|
浦东新区
|
阿拉善右旗
|
裕民县
|
区。
|
凤凰县
|
鸡东县
|
安平县
|
孟连
|
娱乐
|
应城市
|
达拉特旗
|
射洪县
|
额尔古纳市
|
斗六市
|
神农架林区
|
徐汇区
|
石首市
|
油尖旺区
|
江都市
|
睢宁县
|
孟津县
|
金塔县
|
台东县
|