Hibernate.cfg.xml |
<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_first </property> <property name="hibernate.connection.username">root</property> <property name="hibernate.connection.password">system</property> <property name="hibernate.dialect"> org.hibernate.dialect.MySQLDialect </property> <property name="hibernate.show_sql">true</property> <mapping resource="com/xatrans/hibernate/User.hbm.xml" /> </session-factory> </hibernate-configuration> |
ExportDB.java |
publicclass ExportDB { publicstaticvoid main(String[] args) { //加载hibernate.cfg.xml Configuration cfg = new Configuration().configure(); //hbm2ddl SchemaExport export = new SchemaExport(cfg); //创建 export.create(true, true); } } |
HibernateUtils.java |
publicclass HibernateUtils { privatestatic SessionFactory factory = null; static { try { Configuration cfg = new Configuration().configure(); factory = cfg.buildSessionFactory(); } catch (Exception e) { e.printStackTrace(); } } publicstatic Session getSession() { returnfactory.openSession(); } publicstaticvoid closeSession(Session session) { if (session != null) { if (session.isOpen()) { session.close(); } } } publicstatic SessionFactory getSessionFactory(){ returnfactory; } } |
User.java |
publicclass User { privateintid; private String name; private String password; private Date createTime; private Date expireTime; get() .set()... } |
User.hbm.xml |
<hibernate-mapping> <class name="com.xatrans.hibernate.User"> <id name="id"> <generator class="increment"/> </id> <property name="name"/> <property name="password"/> <property name="createTime"/> <property name="expireTime"/> </class> </hibernate-mapping> |
SessionTest.java |
publicclass SessionTest extends TestCase {
publicvoid testSave() { Session session = null; try { session = HibernateUtils.getSession(); session.getTransaction().begin();
User user = new User(); user.setName("xatrans"); user.setPassword("xatrans"); user.setCreateTime(new Date()); user.setExpireTime(new Date());
session.save(user); session.getTransaction().commit(); } catch (Exception e) { e.printStackTrace(); if (session.getTransaction() != null) { session.getTransaction().rollback(); } } finally { HibernateUtils.closeSession(session); } } } |