lib 目錄放入:hibernate-core、hibernate-commons-annotations 等)<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-configuration PUBLIC
"-//Hibernate/Hibernate Configuration DTD 3.0//EN"
"https://hibernate.org/dtd/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
<session-factory>
<property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property>
<property name="hibernate.connection.url">jdbc:mysql://localhost:3306/hibernate?useSSL=false</property>
<property name="hibernate.connection.username">root</property>
<property name="hibernate.connection.password">123456</property>
<property name="hibernate.dialect">org.hibernate.dialect.MySQLDialect</property>
<property name="hibernate.show_sql">true</property>
<property name="hibernate.hbm2ddl.auto">update</property> <!-- 自動建表/更新 -->
<mapping resource="com/alanlee/entity/Student.hbm.xml"/>
</session-factory>
</hibernate-configuration>
package com.alanlee.entity;
import java.util.Date;
public class Student {
private Integer sid;
private String name;
private String sex;
private Date birthday;
private String address;
// getter/setter 略
}
<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC
"-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"https://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<hibernate-mapping>
<class name="com.alanlee.entity.Student" table="STUDENT">
<id name="sid" type="java.lang.Integer">
<column name="SID"/>
<generator class="increment"/> <!-- 主鍵生成策略 -->
</id>
<property name="name" column="NAME"/>
<property name="sex" column="SEX"/>
<property name="birthday" column="BIRTHDAY"/>
<property name="address" column="ADDRESS"/>
</class>
</hibernate-mapping>
| 屬性 | 說明 | 常用值 |
|---|---|---|
| hbm2ddl.auto | DDL 自動策略 | create、update、validate、create-drop |
| show_sql | 控制台印出 SQL | true/false |
| generator class | 主鍵生成器 | increment、identity、native、uuid、assigned |
AUTO_INCREMENT。increment 或 identity;生產用 native 或 uuid。@Before
public void setUp() {
Configuration config = new Configuration().configure();
ServiceRegistry sr = new StandardServiceRegistryBuilder()
.applySettings(config.getProperties()).build();
sessionFactory = config.buildSessionFactory(sr);
session = sessionFactory.openSession();
transaction = session.beginTransaction();
}
@Test
public void testSaveStudent() {
Student s = new Student();
s.setSid(1); s.setName("AlanLee"); s.setSex("男");
s.setBirthday(new Date()); s.setAddress("湖南郴州");
session.save(s);
}
@After
public void tearDown() {
transaction.commit();
session.close();
sessionFactory.close();
}


資料庫中出現 STUDENT 表並寫入一筆資料,代表整合成功。