ssh框架之hibernate--hibernate环境的搭建(Ⅱ 配置实体类和数据库表的映射关系)

本文介绍了SSH框架中Hibernate环境搭建的第二部分——配置实体类与数据库表的映射关系。内容包括创建XML配置文件,设置文件的位置和命名规则,并在配置文件中引入XML约束,详细配置实体类与表的对应,特别是实体类ID与表中ID的映射,以及其他属性与表字段的对应关系。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

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>


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值