Hibernate的基礎(chǔ)配置
系統(tǒng)
2190 0
1)
MySQL
客戶端的工具使用
?
SQLyog?Ultimate?9.3.3?
簡體中文正式版
圖形界面:
<!--?
????
寫update只是更新操作,也可以寫create,?這樣寫create的話程序運(yùn)行的時候就會把數(shù)據(jù)庫里的內(nèi)容全部刪除并且重新創(chuàng)建
,
當(dāng)然,前提是數(shù)據(jù)庫必須存在,因?yàn)?
hibernate
只會創(chuàng)建表結(jié)構(gòu),?不會創(chuàng)建數(shù)據(jù)庫,如果指定的數(shù)據(jù)庫不存在,
hibernate
則會拋出異常?-->
?
<
property
?
name
=
"hbm2ddl.auto"
>
update
</
property
>
??
|
在做分析和設(shè)計(jì)的時候:先建立表結(jié)構(gòu),在建立類,類和類之間是有關(guān)系的,關(guān)系體現(xiàn)在方法上面。
2)
搭建日志環(huán)境顯示
DDL
語句
日志大搭建在上文已經(jīng)有解決方案了。
<
property
?
name
=
"show_sql"
>
true
</
property
>
顯示輸出
SQL
語句
<
property
?
name
=
"format_sql"
>
true
</
property
>
|
顯示輸出
SQL
格式
|
3)
字段和屬性的對應(yīng)
注解:都需要位于
javax.persistence
.*;
可以使用
@Entity
A)
表名和類名不同,對類名進(jìn)行配置
表名和類中定義的名稱不同使用
@Table(name="table_name")
?
private
?String?
user_id
;
???
//@使用注解?annotation
???
@Entity
?
???
@Table
(name=
"admin_log"
)
????
public
?
class
?Ith_Admin_Log?{
????}
|
B
)
字段名和屬性相同
C)
字段名和屬性不同
字段名和表中的字段名不同使用
@Column(name="xxx")
,
不用寫
@column?
與
默認(rèn)
的
@Basic
效果一樣
?
Xml
中不用寫
?column
private
?String?
user_id
;
????
@Column
(name=
"add_user"
)
public
?String?getUser_id()?{
return
?
user_id
;
}
public
?
void
?setUser_id(String?user_id)?{
this
.
user_id
?=?user_id;
}
|
D)
不需要持久化字段:
@Transient?(transient)
透明的
?
定義
@transient
注解屬性是透明的,數(shù)據(jù)庫無需知道定義
注解使用日期可以使用
@Temportal(TemportalType.DATE)
H
ibernate?annotation
字段映射位置,應(yīng)該放在
get
上面
為什么不加屬性上面。因?yàn)閷傩员旧砭褪撬接械模接械谋旧砭筒恍枰獎e人調(diào)用。
Annotation
:
@Temporal(
參數(shù)
)?
參數(shù)有
3
種
?
只顯示時間
,
只顯示日期
,
時間日期都顯示
//@Temporal(TemporalType.DATE)??
只顯示日期
//@Temporal(TemporalType.TIME)??
只顯示時間
//@Temporal(TemporalType.TIMESTAMP)??
顯示日期與時間
X
ml:
指定
?type
<class?name="Teacher"?table="Teacher"?>
<id?name="id"?column="id"></id>
<property?name="name"?type="
time
"?/>
</class>
|
?
private
?Date???
add_date
;
@Temporal
(TemporalType.
DATE
)
public
?Date?getAdd_date()?{
return
?
add_date
;
}
public
?
void
?setAdd_date(Date?add_date)?{
this
.
add_date
?=?add_date;
?????
}
|
|
E
映射枚舉類型
(?
比較少用
)
a)?
@Enumerated
@Enumerated(EnumType.ORDINAL)?
枚舉類型按位置數(shù)
,
如
:0,1,2?...
存儲
@Enumerated(EnumType.
STRING
)??
枚舉類型按設(shè)定值存儲
DB
xml:
麻煩
<!--EndFragment-->
Hibernate的基礎(chǔ)配置
更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主
微信掃碼或搜索:z360901061
微信掃一掃加我為好友
QQ號聯(lián)系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長非常感激您!手機(jī)微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元