1. 程式人生 > >Hibernate5配置及實現簡單增刪改查

Hibernate5配置及實現簡單增刪改查

1、 建立專案(java專案)

2、建立lib資料夾,在lib中匯入相關jar包(Hibernate10個,MySQL 1個),然後右鍵buildpath

3、編寫hibernate.cfg.xml配置檔案,(src目錄下)

<hibernate-configuration>

  <session-factory>

      <!—資料連線的設定-->

<property name=”connection.driver_class”>com.mysql.jdbc.Driver</property>

<property name=”connection.url”>com.mysql.jdbc.Driver

</property>

<property name=”connection.username”>com.mysql.jdbc.Driver</property>

<property name=”connection.password” >com.mysql.jdbc.Driver</property>

     <propertyname=”show_sql”>true</property>

     <--當專案啟動更新資料庫的結構-->

<property name=”hbm2ddl.auto” >update

</property>

<mapping resource=”com/bean/Userhbm.xml”>      

<mapping class=”com.bean.User”/>

</session-factory>

</hibernate-configuration>

4、建立一個持久化的類(實體類,User.java)(com.bean包下)生成set、get方法,構造有參構造器和無參構造器

public class User implements java.io.Serializable {
private Integer id;
private String username;
private String password;

}

5、建立一個User.hbm.xml檔案,跟實體類在一起

 <hibernate-mapping package=”com.bean”>

<class name=”User” table=”user”>

  <id name=”id” column=”id”>

    <generator class=”increment”/>

  </id>

<propertyname=”username” column=”username”/>

<propertyname=”password” ”/>

</class>

  </ hibernate-mapping>

6、編寫測試類

//讀取配置檔案

Configurationconfig = new Configration().configure();

//獲取session工廠

SessionFactoryfactory =config.buildSessionFactory();

//開啟 session

Session session=factory.openSession();

//這裡是HQL語句,括號裡的語句是HQL語句 //select*fromuser查的是表//HQL的User 物件

Query query = Session.createQuery(“fromUser”);

//遍歷query

Iterator<User>  i =query.iterate();

While(i.hasNext()){

  User user =i.next();

System.out.print(“ID:”+user.getId()+”Username:”+user.getUsername());

}

//條件查詢

 Query query = session.createQuery(“from Userwhere id =1”)

 或者

 Query query = session.createQuery(“from User uwhere u.id =:userid”)

 Query.setInteger(“userid”,2);

//增加

Transaction ts = ssession.beginTransaction();

User user =new User(2,”username”,”password”);

session.save(user);

ts.commit();

//刪除

User user =new User();

User.setId(2);

Session.delete(user);

ts.commit();

//修改

User user =new User(2,”password”,”username”);

Session.update(user);

ts.commit();

提示:需要自己建立資料庫中的user表