一、導入Hibernate包java
二、新建配置文件(Hibernate.cfg.xml):mysql
<?xml version="1.0" encoding="utf-8" ?> sql
<!DOCTYPE hibernate-configuration PUBLIC 數據庫
"-//Hibernate/Hibernate Configuration DTD 3.0//EN" session
"http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd"> app
<hibernate-configuration>dom
<session-factory>ide
<!-- 數據庫鏈接驅動 -->測試
<property name="connection.driver_class">com.mysql.jdbc.Driver</property>ui
<!-- 數據庫鏈接地址 -->
<property name="connection.url">jdbc:mysql://localhost/test</property>
<!-- 數據庫用戶名和密碼 -->
<property name="connection.username" >root</property>
<property name="connection.password" ></property>
<!-- 配置dialect方言,明確告訴hibernate鏈接是哪一種數據庫 -->
<property name="dialect">org.hibernate.dialect.MySQLDialect</property>
<!--指定管理的映射文件-->
<mapping resource="com/lh/test/LoginHibernate.hbm.xml" />
</session-factory>
</hibernate-configuration>
3 、開發domain對象(代碼已隱藏);
四、開發domian對象和對象關係的映射文件: ***.hbm.xml ,通常和domian對象放同一包下
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE hibernate-mapping PUBLIC
"-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<!--明確須要映射類路徑-->
<hibernate-mapping package="com.lh.test">
<!--明確須要映射類名以及和數據庫關聯的表-->
<class name="LoginHibernate" table="userlogin">
<!--id元素,指定主鍵屬性,mysql用identity指定自增加column是對象屬性的值,name爲表的字段-->
<id column="uid" name="uid" type="java.lang.Integer">
<generator class="identity"></generator>
</id>
<!--指定對象屬性名以及類型-->
<property name="uname" type="java.lang.String"></property>
<property name="upassword" type="java.lang.String"></property>
<property name="rank" type="java.lang.Integer"></property>
<property name="star" type="java.lang.String"></property>
</class>
</hibernate-mapping>
五、測試:
public static void test(){
Session session=new Configuration().configure().buildSessionFactory().openSession();
Transaction transaction=null;
try {
transaction=session.beginTransaction();
LoginHibernate loginHibernate = new LoginHibernate();
loginHibernate.setUname("新建測試");
loginHibernate.setUpassword("test");
loginHibernate.setRank(510);
loginHibernate.setStar("五星");
session.save(loginHibernate);
transaction.commit();
session.close();
} catch (Exception e) {
if(transaction!=null){
transaction.rollback();
}
throw new RuntimeException(e.getMessage());
}finally{
if(session!=null&&session.isOpen()){
session.close();
}
}
}