1.老套路先導包在說
我這的包是導的路徑包,也可以把包放在項目裏但項目多了會卡頓我就導的路徑
2.建立實體類(客戶)Customer和定單Order:定單有很多個而客戶只有一個,也就是多個訂單都是一個客戶定的,所以形成多對一的關係
下面是建的custcmer.java類
public class Customer {
private Integer cid;
private String name;
public Integer getCid() {
return cid;
}
public void setCid(Integer cid) {
this.cid = cid;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
@Override
public String toString() {
return "Customer [cid=" + cid + ", name=" + name + "]";
}
}
就倆個屬性然後寫上他們的同tostring方法和set,get方法
下面是Order.java類
一個id屬性一個name屬性還有一個客戶對象類型,然後加上tostring方法
private Integer oid;
private String oname;
private Customer customer;
@Override
public String toString() {
return "Order [oid=" + oid + ", oname=" + oname + ", customer=" + customer + "]";
}
public Integer getOid() {
return oid;
}
public void setOid(Integer oid) {
this.oid = oid;
}
public String getOname() {
return oname;
}
public void setOname(String oname) {
this.oname = oname;
}
public Customer getCustomer() {
return customer;
}
public void setCustomer(Customer customer) {
this.customer = customer;
}
}
3.在建的實體類下面寫上客戶和訂單的配置文件
下面是訂單的映射文件
先寫頭直接複製
<!DOCTYPE hibernate-mapping PUBLIC
"-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd">
然後解釋看上面的
接下來是客戶的映射文件
同樣要加上頭直接複製上面的一樣上面圖片站不下我就沒截圖,解釋看上面圖
4.寫核心配置文件在src下
注意路徑問題容易出錯解釋看上面的
5.接下來寫測試文件
創一個包在建一個類
package test;
import org.hibernate.SessionFactory;
import org.hibernate.cfg.Configuration;
import org.junit.Test;
public class test {
@Test
public void test() {
Configuration cfg = new Configuration().configure();
SessionFactory sessionFactory = cfg.buildSessionFactory();
}
}
直接然後運行
上面的圖表示成功
打開數據庫就看見多了兩張表
7.現在創建數據
public void test() {
Configuration cfg = new Configuration().configure();
SessionFactory sessionFactory = cfg.buildSessionFactory();
Session session = sessionFactory.openSession();
Transaction tx = session.beginTransaction();
// 先創建一個用戶
Customer customer = new Customer();
customer.setName("9527");
// 在創建一個訂單
Order order = new Order();
order.setOname("奧利奧");
// 訂單中添加用戶
order.setCustomer(customer);
// 保存用戶
session.save(customer);
// 保存訂單
session.save(order);
tx.commit();
session.close();
sessionFactory.close();
}
執行後會得到下面圖
現在hibernate的多對一就完了
有什麼問題直接留言