Hibernate 映射关系 一对多 单向映射文件配置
来源:互联网 发布:小学教师网络研修日志 编辑:程序博客网 时间:2024/06/05 09:44
在处理数据库实体关系时,需要配置对应的实体类映射文件这里仅有一对多关系的set、list、map;
有一个对象代码如下
public class User {private Integer id;private String name;private Set<String> addressSet=new HashSet<String>();private List<String> addressList=new ArrayList<String>();private String[] addressArray; private Map<String,String> addressMap=new HashMap<String, String>();private List<String> addressBag=new ArrayList<String>();//省略setters和getters方法}
对应User.hbm.xml文件配置如下(一个User对应多个地址address)
set
<class name="User" table="t_user" >........ <!-- name对应的用户的属性名 table为创建表--> <set name="addressSet" table="user_addressSet"> <!--不需要指定实体类主键,系统默认对应实体类主键id--> <key cloumn="userId"></key> <!--对应要创建的表中的元素名称和类型--> <element type="string" column="address"></element> </set></class>
这种情况的set为无序不重复存储,当然也可以修改变为可以排序的set。
list
<class name="User" table="t_user" >........ <list name="addressList" table="user_addressList"> <key cloumn="userId"></key> <!-- 这是与Set的区别 因为list是有序的 所以必须有索引--> <list-index column="idx"></list-index> <element type="string" column="address"></element> </list></class>
map
<class name="User" table="t_user" >........ <map name="addressList" table="user_addressLmap"> <key cloumn="userId"></key> <!-- 这是与list的区别 因为map是有键值对无序 所以把list中索引替换为键值 索引为数值 而键值不一定所以要指定类型 所以必须有索引--> <map-key type="string" column="key_"></map-key> <element type="string" column="address"></element> </map></class>
待续
0 0
- Hibernate 映射关系 一对多 单向映射文件配置
- Hibernate关联关系映射-----单向一对多配置
- HIbernate关系映射--单向一对多@OneToMany
- Hibernate关系映射----单向一对多实例
- Hibernate关联关系映射-----基于连接表的单向一对多映射配置
- Hibernate关系映射文件一对多,多对一配置
- hibernate映射一对多,单向关系,初学例子二
- Hibernate关系映射(8)_一对多单向关联
- Hibernate 关系映射 —— 单向一对多
- Hibernate进阶之单向一对多关系映射
- hibernate-关系映射(一对多单向关联)-9
- Hibernate关联关系映射-----单向多对一映射配置
- Hibernate关联关系映射(单向一对多、单向多对一、双向一对多)
- Hibernate单向一对多映射和双向一对多映射
- 【HIbernate框架学习】:Hibernate对象关系映射之单向一对多关联映射
- 创建持久化和映射文件并配置单向一对多关系
- Hibernate 一对多关系映射
- hibernate一对多关系映射
- An introduction to Apache Hadoop for big data
- eclipse反编译插件jadclipse的安装
- hduoj-1466【DP】
- C++实验6
- POJ 2777(线段树 位运算)
- Hibernate 映射关系 一对多 单向映射文件配置
- 20170309技术积累2
- JSTL及其POM配置
- Leetcode #383 Ransom Note
- VPS搭建Web服务器(JDK,Tomcat,Nginx,MySQL,SSL)
- C#笔记整理(四)
- MariaDB及HeidiSQL Windows安装
- js 程序执行与顺序实现详解
- ionic2的返回按钮修改和tab上下显示的翻译