Hibernate
—创建数据库及数据
♪
省事省力数据库
Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装。

接这上一篇hibernate的配置文件后,我们来记录一下hibernate的数据库的创建与java类中的属性之间的关系!
首先我们需要先在orcl中建立一个数据库
注意看下面的文件夹结构!
然后我们来通过hibernate来建立一张表t_teacher
首先创建一个xml文件:Teacher.hbm.xml
复制
<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE hibernate-mapping PUBLIC
"-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd">
//这里pageage是entity中表的对应路径
<hibernate-mapping package="seccens.entity">
//这里是指类Teacher 代表t_teacher表(在seccens.entity里必须有对应的类)
<class name = "Teacher" table="t_teacher">
//这里的ID指的是主键,后面的name指的是类中的属性,然后column指向并创建数据库中的一个字段
即用属性来代表字段
<id name="teacherId" column="teacher_id"></id>
<property name="teacherName" column="teacher_name"></property>
<property name="clazzId" column="clazz_id"></property>
<property name="birthday" column="birthday"/>
</class>
</hibernate-mapping>
复制
其次创建一个xml文件:Teacher.hbm.xml
复制
Clazz.hbm.xml
<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE hibernate-mapping PUBLIC
"-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd">
//这里pageage是entity中表的对应路径
<hibernate-mapping package="seccens.entity">
<class name = "Clazz" table="t_clazz">
<id name="clazzId" column="clazz_id"></id>
<property name="clazzName" column="clazz_name"></property>
<property name="aa" column="clazz_aa"></property>
</class>
</hibernate-mapping>
这里创建了两个xml,下面以Teacher为例看一下对应关系:
通过相应的类中的属性和方法要写引用类型,要添加get,set方法和可以赋值构造函数
这样可以通过赋值,执行sql语句
eg:package seccens.entity;
import java.util.Date;
/**
* @Author 鞠志超
* @Date 2019/9/18 16:08
* @Description
*/
public class Teacher {
private Integer teacherId;
private String teacherName;
private Integer clazzId;
private Date birthday;
public Integer getTeacherId() {
return teacherId;
}
public void setTeacherId(Integer teacherId) {
this.teacherId = teacherId;
}
public String getTeacherName() {
return teacherName;
}
public void setTeacherName(String teacherName) {
this.teacherName = teacherName;
}
public Integer getClazzId() {
return clazzId;
}
@Override
public String toString() {
return "Teacher{" +
"teacherId=" + teacherId +
", teacherName='" + teacherName + '\'' +
", clazzId=" + clazzId +
", birthday=" + birthday +
'}';
}
public Teacher() {
}
public Teacher(Integer teacherId, String teacherName, Integer clazzId, Date birthday) {
this.teacherId = teacherId;
this.teacherName = teacherName;
this.clazzId = clazzId;
this.birthday = birthday;
}
public void setClazzId(Integer clazzId) {
this.clazzId = clazzId;
}
public Date getBirthday() {
return birthday;
}
public void setBirthday(Date birthday) {
this.birthday = birthday;
}
}
通过上述的类和配置文件,走APP中的测试方法,即可搞定一张表:
public class App
{
public static void main( String[] args )
{
//加载hibernate配置文件
SessionFactory sessionFactory= new Configuration().configure().buildSessionFactory();
//创建hibernate的session工厂
//得到session(连接)Session session = sessionFactory.openSession();
session.close();
//关闭session
}
}
复制
下一章则开始介绍如何使用hibernate实现增删改查功能!

