ssh框架之hibernate--hibernate环境的搭建(Ⅱ 配置实体类和数据库表的映射关系)
1. 创建xml格式的配置文件
映射配置文件名称和位置没有固定要求。
建议:位置:在实体类所在包里面创建;名字:实体类名称.hbm.xml。
2. 配置是xml格式,在配置文件中首先引入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">
3. 配置映射关系<hibernate-mapping></hibernate-mapping>
(1)配置类和表的对应:
<hibernate-mapping>
<!-- class标签: name属性:实体类的全路径;table属性:数据库表名称 -->
<class name="com.test.entity.User" table="t_user">
</class>
</hibernate-mapping>
(2)配置实体类ID与表里ID相对应:(hibernate中要求实体类中有一个属性唯一值,要求表里有字段作为唯一值。)
<!-- id标签 -->
<!-- name属性:实体类里id属性的名称 column属性:生成的表里的字段的名称 -->
<id name="id" column="id">
<!-- 设置数据库表id的增长策略 -->
<generator class="native">
<!-- 效果:生成表id值为主键自动增长 -->
</generator>
</id>
(3)配置其他属性和表字段的对应:
<!-- 配置其他的属性和表字段的对应 -->
<!-- name属性:实体类属性名称 column属性:生成表字段名称 -->
<property name="name" column="name"></property>
<property name="gender" column="gender"></property>
<property name="age" column="age"></property>
4. 完整的User.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">
<hibernate-mapping>
<!-- 1 配置类和表的对应 -->
<!-- class标签: name属性:实体类的全路径;table属性:数据库表名称 -->
<class name="com.test.entity.User" table="t_user">
<!-- 2 配置实体类ID与表里ID对应 -->
<!-- hibernate中要求实体类中有一个属性唯一值,要求表里有字段作为唯一值。 -->
<!-- id标签 -->
<!-- name属性:实体类里id属性的名称 column属性:生成的表里的字段的名称 -->
<id name="id" column="id">
<!-- 设置数据库表id的增长策略 -->
<generator class="native"> <!-- 效果:生成表id值为主键自动增长 -->
</generator>
</id>
<!-- 配置其他的属性和表字段的对应 -->
<!-- name属性:实体类属性名称 column属性:生成表字段名称 -->
<property name="name" column="name"></property>
<property name="gender" column="gender"></property>
<property name="age" column="age"></property>
</class>
</hibernate-mapping>