1.创建工程
2.建立User类,domain对象,是一个普通的javabean
package com.cxd.hibernate.domain;
public class User {
private int id;
private String username;
private String password;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getUsername() {
return username;
}
public void setUsername(String name) {
this.username = name;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
}
3.导入jar包,Hibernate3.jar,lib中依赖的jar包,jdbc的jar包4.映射文件 User.hbm.xml
<?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.cxd.hibernate.domain">
<class name="User">
<id name="id">
<generator class="native"/>
</id>
<property name="username"/>
<property name="password"/>
</class>
</hibernate-mapping>
5.配置文件 hibernate.cfg.xml<!DOCTYPE hibernate-configuration PUBLIC
"-//Hibernate/Hibernate Configuration DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
<session-factory>
<property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property>
<property name="connection.url">jdbc:mysql:///test</property>
<property name="connection.username">root</property>
<property name="connection.password">xiaodongv12</property>
<property name="dialect">org.hibernate.dialect.MySQLDialect</property>
<mapping resource="com/cxd/hibernate/domain/User.hbm.xml"/>
</session-factory>
</hibernate-configuration>
6.测试类
package com.cxd.hibernate;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.Transaction;
import org.hibernate.cfg.Configuration;
import com.cxd.hibernate.domain.User;
public class base {
public static void main(String[] args){
Configuration cfg = new Configuration();//初始化
cfg.configure();
SessionFactory sf = cfg.buildSessionFactory();//SessionFactory类似jdbc的DriverManager
Session s = sf.openSession();//Session类似jdbc里面的Connection
Transaction tx = s.beginTransaction();
User user = new User();
user.setUsername("name");
user.setPassword("12343");
s.save(user);
tx.commit();
s.close();
System.out.println("end");
}
}
7.运行
初始化Hibernate 只会寻找配置文件,要在hibernate.cfg.xml中配置
<mapping resource="com/cxd/hibernate/domain/User.hbm.xml"/>
hibernate 可以自己建表
<property name="hbm2ddl.auto">create-drop</property>
有四个选项: create-drop/create/update/validate
jdbc会自动提交,但是hibernate把它关闭了,要用代码开启
Transaction tx = s.beginTransaction();
<pre name="code" class="java">tx.commit();
遇到的问题