编写PO类
什么是PO类?
PO:Persistent Object即持久对象,它们是由一组属性和属性的get和set方法组成。可以看成是与数据库中的表相映射的java对象
既然是与数据库中的表相映射的java对象,那么类中的属性就需要和表相互对应,
在之前的文章中,我们创建了T_STUDENT表,里面分别有STUNO,STUNAME,STUSEX三个字段
那么我们创建的PO类就需要有对应的属性来映射
创建一个po包,在里面创建Student类
属性如下:
package po;
public class Student {
private String stuno;
private String stuname;
private String stusex;
public String getStuno() {
return stuno;
}
public void setStuno(String stuno) {
this.stuno = stuno;
}
public String getStuname() {
return stuname;
}
public void setStuname(String stuname) {
this.stuname = stuname;
}
public String getStusex() {
return stusex;
}
public void setStusex(String stusex) {
this.stusex = stusex;
}
}
编写并配置映射文件
编写完这个PO类,系统还是无法识别类和数据库表的关系。所以,我们还需要编写配置文件,配置文件一般和PO类放在同一个包下,名字可以随意,但是为了规范,此处我们将其命名为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">
<hibernate-mapping>
<class name="po.Student" table="T_STUDENT">
<id name="stuno" column="STUNO">
<generator class="assigned"></generator>
</id>
<property name="stuname" column="STUNAME"/>
<property name="stusex" column="STUSEX"/>
</class>
</hibernate-mapping>
注意,映射文件的头和Hibernate配置文件是不一样,所以不要直接复制Hibernate配置文件中的代码
一般映射文件编写格式如下:
(1)将编写的PO类与表对应
(2)id name=”属性” column=”对应字段名”>填写主键,即使表内没有主键,映射文件中也要配置一个唯一标识
(3)主键生成策略
(4)将属性和字段对应起来
映射文件编写完成后,表就和类进行了映射。不过配置到这里 系统还是无法识别,还需将此文件在hibernate.cfg.xml中进行注册。方法为直接将加到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>
<!--mysql配置驱动 -->
<property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property>
<!--mysql数据库url地址 -->
<property name="hibernate.connection.url">
jdbc:mysql://localhost:3306/school?useUnicode=true&characterEncoding=utf8
</property>
<!--mysql数据库 适配器,不同数据库 适配器不同 -->
<property name="hibernate.dialect">org.hibernate.dialect.MySQLDialect</property>
<!--mysql数据库登录账户 -->
<property name="hibernate.connection.username">root</property>
<!--mysql数据库账户密码 -->
<property name="hibernate.connection.password"></property>
<mapping resource="po/Student.hbm.xml"/>
</session-factory>
</hibernate-configuration>
本文介绍了如何创建与数据库表映射的PO类,并通过Hibernate框架进行配置,实现Java对象与数据库之间的交互。
378

被折叠的 条评论
为什么被折叠?



