传智播客Hibernate视频教程学习笔记25

 集合类型的使用:

之前用的都是set来保存一对多关系,Hibernate提供了不止一种的映射方法,比如list bag map等等,下面简要介绍就可以了

 

list:

只要将Department.hbm.xml中员工集合的映射改为list映射,并在测试代码中均改成list即可,可以发现,多设定了list-index,对应的列是order_col,在数据库表中会自动生成order_col一列来保存添加对象的顺序,比如在内存中部门员工列表先添加了Employee1,Employee2,那么在数据库表中也会照着这个顺序记录下来1, 2,反之,则是 2,1。

 

很多时候这种添加的顺序是毫无意义的,Bag与Set不同的地方是允许重复元素,而与list不同的是没有记录添加顺序的那一列字段。bag与java中的list容器对应,配置文件如下:

基本与set一样。

 

还有就是Map了,也比较常用。

通过map-key来制定map的key,value即为Employee类型,即Map<String,Employee>。注意的是这边Employee的name属性必须为unique,因为map的key是唯一的。

 

还有一点比较重要的是在设计pojo的时候,必须使用接口来声明这些容器,比如说是用Set,不可以在pojo中声明HashSet,因为Hibernate自己实现了一套Set容器,使用Set的时候,Hibernate实际使用了自己写的PersistSet,功能比set强大许多。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值