使用eclipse ee安装hibernate-tools插件,方便配置hibernate
首先导入hibernate和mysql所需的jar包
现在数据库中创建好对应的database、
在src里创建hibernate的配置文件hibernate.cfg.xml
<?xml version="1.0" encoding="UTF-8"?>
<!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="connection.username">steve</property>
<property name="connection.password">845109060</property>
<property name="connection.driver_class">com.mysql.jdbc.Driver</property>
<property name="connection.url">jdbc:mysql://localhost/hibernate</property>
<property name="dialect">org.hibernate.dialect.MySQLDialect</property>
<property name="show_sql">true</property>
<property name="format_sql">true</property>
<property name="hbm2ddl.auto">create</property>
<mapping resource="hibernate/hibernate.hbm.xml"/>
</session-factory>
</hibernate-configuration>
然后创建实体类Student(按照标准javabean方式创建)
package hibernate;
public class Student {
private int id;
private String name;
private String sex;
private String address;
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;
}
public String getSex() {
return sex;
}
public void setSex(String sex) {
this.sex = sex;
}
public String getAddress() {
return address;
}
public void setAddress(String address) {
this.address = address;
}
public Student() {
}
public Student(int id, String name, String sex, String address) {
super();
this.id = id;
this.name = name;
this.sex = sex;
this.address = address;
}
@Override
public String toString() {
return "Student [id=" + id + ", name=" + name + ", sex=" + sex
+ ", address=" + address + "]";
}
}
配置实体类的映射文件Student.hbm.xml
<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<!-- Generated 2015-12-29 20:14:53 by Hibernate Tools 3.4.0.CR1 -->
<hibernate-mapping>
<class name="hibernate.Student" table="STUDENT">
<id name="id" type="int">
<column name="ID" />
<generator class="assigned" />
</id>
<property name="name" type="java.lang.String">
<column name="NAME" />
</property>
<property name="sex" type="java.lang.String">
<column name="SEX" />
</property>
<property name="address" type="java.lang.String">
<column name="ADDRESS" />
</property>
</class>
</hibernate-mapping>
注意配置完后再hibernat.cfg.xml中注册一下
写测试类
package hibernate;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.Transaction;
import org.hibernate.cfg.Configuration;
import org.hibernate.service.ServiceRegistry;
import org.hibernate.service.ServiceRegistryBuilder;
import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import antlr.debug.TraceAdapter;
public class Testabc {
private SessionFactory sessionfactory;
private Session session;
private Transaction transcation;
@Before
public void before(){
//创建配置对象
Configuration config=new Configuration().configure();
//创建服务注册对象
ServiceRegistry serviceRegistry=new ServiceRegistryBuilder().applySettings(config.getProperties()).buildServiceRegistry();
//创建会话工厂对象
sessionfactory=config.buildSessionFactory(serviceRegistry);
//创建会话对象
session=sessionfactory.openSession();
//创建事物
transcation=session.beginTransaction();
}
@Test
public void test(){
Student s=new Student(1,"steve","man","america");
//保存对象进数据库
session.save(s);
}
@After
public void after(){
//提交会话
transcation.commit();
session.close();
sessionfactory.close();
}
}
运行后数据库中就创建好了Student表,并把Student的对象存入数据库的记录中。