多多色-多人伦交性欧美在线观看-多人伦精品一区二区三区视频-多色视频-免费黄色视屏网站-免费黄色在线

國內最全IT社區平臺 聯系我們 | 收藏本站
阿里云優惠2
您當前位置:首頁 > 數據庫 > 數據庫應用 > Hibernate基礎配置

Hibernate基礎配置

來源:程序員人生   發布時間:2015-01-15 08:41:21 閱讀次數:3705次
3、Hibernate基礎配置
1、如果在Annotation中,類名與真是的數據庫中的表名不同,可使用增加@Table(name="數據庫中的表名")的方式使其對應。此時,如果數據庫中有這個表名則會對應上,如果沒有這個表,則會生成這個表。一樣的,在XXX.hbm.xml中,也能夠配置增加響應的Tabel=tableName的配置。
2、所有無定義注解的屬性等價于在其上面添加了@Basic注解。
3、屬性名與字段名不對應的情況,使用@Column(name="數據表的字段名")的方式使其相對應。
4、不需要persistence的字段可使用@Transient的方式進行注解。這樣該字段就不會寫入數據表中。在xml中,不進行配置就能夠了。
5、屬性是時間格式的情況下,默許會將年月日時分秒全部存入。可使用@Temporal(TemporalType.DATE)的情勢使其只存入日期,固然,還可使其存入其他的日期格式。
6、Hibernate映照的類型。Hibernate會自動將java類型的數據轉換為對應的sql類型


7、枚舉類型的映照。如果指定的字段名含有枚舉類型,則在數據表中也能夠實現相應的存儲。@Enumerated(EnumType.ORDINAL)的方式使得存入的枚舉類型為int類型,@Enumerated(EnumType.STRING)的方式使得存入的值為varchar類型。
8、Annotation建議寫在get()方法上,而不是寫在屬性上。
小實驗:
修改Teacher.java
package com.zgy.hibernate.model;


import java.util.Date;


import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.EnumType;
import javax.persistence.Enumerated;
import javax.persistence.Id;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;
import javax.persistence.Transient;


@Entity
@Table(name="_teacher")
public class Teacher {
private int id;
private String name;
private String title;
private String address;
private String wifeName;
private Date birth;
private ZhiCheng zhiCheng;
@Id
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
@Column(name="_name")
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getTitle() {
return title;
}
public void setTitle(String title) {
this.title = title;
}
public String getAddress() {
return address;
}
public void setAddress(String address) {
this.address = address;
}
 
public String getWifeName() {
return wifeName;
}
public void setWifeName(String wifeName) {
this.wifeName = wifeName;
}
@Temporal(TemporalType.DATE)
public Date getBirth() {
return birth;
}
public void setBirth(Date birth) {
this.birth = birth;
}
@Enumerated(EnumType.STRING)
public ZhiCheng getZhiCheng() {
return zhiCheng;
}
public void setZhiCheng(ZhiCheng zhiCheng) {
this.zhiCheng = zhiCheng;
}



}




修改test下的TeacherTesting.java
package com.zgy.hibernate.model;


import static org.junit.Assert.*;


import java.util.Date;


import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.cfg.AnnotationConfiguration;
import org.hibernate.cfg.Configuration;
import org.junit.AfterClass;
import org.junit.BeforeClass;
import org.junit.Test;


public class TeacherTesting {
public static SessionFactory sf = null;
@BeforeClass
public static void beforeClass(){
sf = new AnnotationConfiguration().configure().buildSessionFactory();
}
@Test
public void test() {
Teacher t = new Teacher();
t.setId(5);
t.setName("t5");
t.setTitle("高級");
t.setAddress("北京");
t.setBirth(new Date());
t.setZhiCheng(ZhiCheng.A);

Session session = sf.openSession();
session.beginTransaction();
session.save(t);
session.getTransaction().commit();
session.close();

}


@AfterClass
public static void afterClass(){
sf.close();
}

}







生活不易,碼農辛苦
如果您覺得本網站對您的學習有所幫助,可以手機掃描二維碼進行捐贈
程序員人生
------分隔線----------------------------
分享到:
------分隔線----------------------------
關閉
程序員人生
主站蜘蛛池模板: 亚洲欧美精品一中文字幕 | 亚洲乱码一二三四区 | 色琪琪永久远网址 | 久久入| 老妇毛片久久久久久久久 | 欧美日韩综合一区 | 秋霞日韩理论高清在线观看 | 国产欧美精品专区一区二区 | 欧美日韩不卡视频 | 日本美女影院 | 久久91av| 国产福利视频一区二区三区四区 | 日本精品中文字幕 | 色网站网址| 午夜在线免费视频 | 亚洲最新永久在线观看 | 午夜宅男在线 | 精品亚洲在线 | 五月亭亭激情五月 | 亚洲欧美日韩精品高清 | 久久精品www| 精品国产亚洲一区二区在线3d | 24小时免费观看www日本 | 成人性视频在线三级 | 中文综合 | 亚洲色欲色欲综合网站 | 国产一级特黄aa级特黄裸毛片 | 美女福利视频国产免费观看 | 精品国产综合成人亚洲区 | 国产成人黄网址在线视频 | 美美女高清毛片视频黄的一免费 | 欧美一级特黄啪啪片免费看 | 国产精品福利影院 | 欧美特级黄色 | 欧美日本一区 | 国产精品国产精品国产专区不卡 | 欧美在线精品永久免费播放 | 手机福利片 | 精品午夜国产在线观看不卡 | 免费网站在线看 | 亚洲综合五月 |