3個準備,7個步驟
三個準備:準備Jar包 準備User類 準備映射和數據庫
七個步驟:Configuration、SessionFactory、打開Session、開始一個事務、持久化操作save/update/delete/get、提交事務 、關閉Session
1.導入jar包
orm包和JDBC
2.創建User.java類
保存在hibernate包下
- package hibernate;
-
- import java.io.Serializable;
- import java.util.Date;
-
- public class User implements Serializable {
- private long id;
- private String name;
- private Date birthday;
-
- public long getId() {
- return id;
- }
-
- public void setId(long id) {
- this.id = id;
- }
-
- public String getName() {
- return name;
- }
-
- public void setName(String name) {
- this.name = name;
- }
-
- public Date getBirthday() {
- return birthday;
- }
-
- public void setBirthday(Date birthday) {
- this.birthday = birthday;
- }
-
- public User() {
- }
- }
2.創建hibernate映射文件 hibernate.cfg.xml
此處的mapping resource 應該寫全
hibernate/User.hbm.xml
要注意文件名的大小寫
- <?xml version="1.0" encoding="UTF-8"?>
- <hibernate-configuration>
- <session-factory>
- <property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property>
- <property name="hibernate.connection.url">jdbc:mysql://127.0.0.1:3306/test</property>
- <property name="hibernate.connection.username">root</property>
- <property name="hibernate.connection.password"></property>
- <property name="hibernate.dialect">org.hibernate.dialect.MySQLDialect</property>
- <property name="show_sql">true</property>
- <mapping resource="hibernate/User.hbm.xml"/>
- </session-factory>
- </hibernate-configuration>
3.創建User類的映射文件User.hbm.xml
這個文件和User類放在一個包下
映射裏的column的字段名與數據庫的字段名不區分大小寫(也就是說這裏大寫數據庫小寫並不影響數據流通)
- <?xml version="1.0" encoding="UTF-8"?>
-
- <hibernate-mapping>
- <class name="hibernate.User" table="t_user">
- <id name="id" column="ID" type="long">
- <generator class="increment"/>
- </id>
- <property name="name" column="NAME" />
- <property name="birthday" column="BIRTHDAY"/>
- </class>
- </hibernate-mapping>
4.添加測試類
- package hibernate;
-
- import java.util.Date;
-
- import org.hibernate.Session;
- import org.hibernate.SessionFactory;
- import org.hibernate.Transaction;
- import org.hibernate.cfg.Configuration;
-
- public class test {
-
- public static void main(String[] args) {
- Configuration conf = new Configuration().configure();//1、讀取配置文件
- SessionFactory sf = conf.buildSessionFactory();// 2、創建SessionFactory
- Session session = sf.openSession();// 3、打開Session
- Transaction tx = ;
- try{
- tx = session.beginTransaction();// 4、開始一個事務
- // 5、持久化操作
- User user = new User();
- user.setName("Hibernate user");
- user.setBirthday(new Date());;
- session.save(user);
- tx.commit();// 6、 提交事務
- }catch(Exception e){
- if (!=tx){tx.rollback();}
- e.printStackTrace();
- }finally{
- session.close();// 7、關閉Session
- }
- }
-
-
- }
數據庫
項目目錄