package com.lesson1;

public class User {
    private int id;
    private String name;
    
    public int getId() {
        return id;
    }
    public void setId(int id) {
        this.id = id;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
}
package com.lesson1;

public interface UserDao {
    void insert(User user);
}
package com.lesson1;

import java.io.File;

import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.Transaction;
import org.hibernate.cfg.Configuration;

public class UserDaoImpl implements UserDao {
    private SessionFactory sessionFactory;
    
    public UserDaoImpl() {
        this.sessionFactory = new Configuration().configure("lesson1.cfg.xml").buildSessionFactory();
    }
    
    @Override
    public void insert(User user) {
        // TODO Auto-generated method stub
        Session session = sessionFactory.openSession();
        Transaction tx = session.beginTransaction();
        try {
            session.save(user);
            tx.commit();
        } catch (Exception e) {
            // TODO: handle exception
            tx.rollback();
        }finally{
            session.close();
        }
                
    }

}

配置文件

<?xml version='1.0' encoding='UTF-8'?>
<!DOCTYPE hibernate-configuration PUBLIC "-//Hibernate/Hibernate Configuration DTD 3.0//EN" "http://www.hibernate.org/dtd/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
    <session-factory>
        <property name="dialect">org.hibernate.dialect.MySQLDialect</property>
        <property name="connection.url">jdbc:mysql://127.0.0.2:3306/test</property>
        <property name="connection.username">root</property>
        <property name="connection.password">root</property>
        <property name="connection.driver_class">com.mysql.jdbc.Driver</property>
        <property name="format_sql">true</property>
        <property name="show_sql">true</property>
        <property name="hbm2ddl.auto">update</property>
        <mapping resource="com/lesson1/user.hbm.xml"/>
    </session-factory>
</hibernate-configuration>
<?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>
    <class name="com.lesson1.User" table="user">
        <!-- 必须先定义<id>元素,后定义<property>元素 -->
        <id name="id" type="java.lang.Integer">
            <column name="id" />
            <!-- 主键的生成方式 -->
            <generator class="increment" />
        </id>
        <property name="name" type="java.lang.String">
            <column name="name"/>
        </property>
    </class>
</hibernate-mapping>

测试代码

package test.com.lesson1;

import com.lesson1.User;
import com.lesson1.UserDao;
import com.lesson1.UserDaoImpl;

import junit.framework.TestCase;

public class testUserDaoImpl extends TestCase {

    public void testInsert() {
        User user = new User();
        user.setName("aaa");
        
        UserDao userDao = new UserDaoImpl();
        userDao.insert(user);
    }

}