如果组件类又包含了List、Set、Map等集合属性,则可直接在组件类中使用@ElementCollection修饰集合属性,并使用@CollectionTable指定保存集合属性的数据表——与普通实体类中映射集合属性的方式基本相同。假设上面的例子的Name中增加了一个power属性,而这个power属性为Map类型的。

@Embeddable
public class Name
{// 定义first成员变量@Column(name="person_firstname")private String first;// 定义last成员变量@Column(name="person_lastname")private String last;// 引用拥有该Name的Person对象@Parentprivate Person owner;// 集合属性,保留该对象关联的考试成绩@ElementCollection(targetClass=Integer.class)@CollectionTable(name="power_inf",joinColumns=@JoinColumn(name="person_name_id" , nullable=false))@MapKeyColumn(name="name_aspect")@Column(name="name_power" , nullable=false)@MapKeyClass(String.class)private Map<String , Integer> power= new HashMap<>();// 无参数的构造器public Name(){}// 初始化全部成员变量的构造器public Name(String first , String last){this.first = first;this.last = last;}// first的setter和getter方法public void setFirst(String first){this.first = first;}public String getFirst(){return this.first;}// last的setter和getter方法public void setLast(String last){this.last = last;}public String getLast(){return this.last;}// owner的setter和getter方法public void setOwner(Person owner){this.owner = owner;}public Person getOwner(){return this.owner;}// power的setter和getter方法public void setPower(Map<String ,Integer> power){this.power = power;}public Map<String ,Integer> getPower(){return this.power;}
}

执行结果如下:

Hibernate映射组件属性为集合(二)相关推荐

  1. 浅析Hibernate映射(五)——集合映射

    浅析Hibernate映射(五)--集合映射 集合映射主要包括:set.list.array.map的映射 对象模型: 映射后的关系模型: 映射文件: [html] view plaincopypri ...

  2. Hibernate映射普通属性、Hibernate中的各种类型

    <?xml version="1.0"?> <!DOCTYPE hibernate-mapping PUBLIC"-//Hibernate/Hibern ...

  3. hibernate映射集合属性

    2019独角兽企业重金招聘Python工程师标准>>> hibernate映射集合属性通常需要指定一个name属性,用于标明该集合属性的名称: 除此之外,它还有如下可选属性:  ta ...

  4. Hibernate:映射文件元素属性说明

    为什么80%的码农都做不了架构师?>>>    Doctype <?xml version="1.0" encoding="UTF-8" ...

  5. hibernate 映射_Hibernate映射集合性能问题

    hibernate 映射 首先,本文的灵感来自于Burt Beckwith在2011年1月27日于SpringOne 2GX上发表的有关高级GORM –性能,自定义和监视的演讲 . 简而言之, Bur ...

  6. Hibernate映射集合性能问题

    首先,这篇文章的灵感来自于Burt Beckwith在2011年1月27日于SpringOne 2GX上发表的有关高级GORM –性能,定制和监控的演讲 . 简而言之, Burt Beckwith讨论 ...

  7. 【Hibernate步步为营】--最后的集合映射

    上篇文章详细讨论了组合对象映射的原理,它其实指的是如何将对象模型中的组合关系映射到关系模型中,它是通过使用Hibernate提供的<component>标签来实现的,并需要在该标签中添加对 ...

  8. hibernate映射-单向n-n关联关系

    (学习记录,错误不足之处,请您耐心指正^_^) hibernate映射-多对多关联关系 n-n关联必须使用连接表才能完成, 一.代码示例: {类文件↓} Category.class 1 packag ...

  9. hibernate映射配置文件说明

    hibernate映射配置文件中的属性说明 <?xml version="1.0"?><!DOCTYPE hibernate-mapping PUBLIC&quo ...

  10. Java大对象类型的Hibernate映射

    在 Java 中, java.lang.String 可用于表示长字符串(长度超过 255 ),字节数组 byte[] 可以用于存放图片户或文件二进制数据.此外,在 JDBC API 中还提供了 ja ...

最新文章

  1. 服务器技术综述(二)
  2. zabbix3.4.7版本饼图显示问题
  3. 华人科学家,Yang-Kieffer算法之父杨恩辉斩获Eric E.Summer奖
  4. STM8学习笔记---串口uart1
  5. Unity C#基础之 反射反射,程序员的快乐
  6. 北京曲剧《烟壶》也好看
  7. 什么是掼蛋游戏呼叫中心
  8. iOS开发UI篇—APP主流UI框架结构
  9. ANTS Memory Profiler - NET内存泄漏分析工具
  10. Java中流的使用和说明(二)
  11. 【2015-2016 NEERC - G】Graph【构造 + 拓扑排序】
  12. CPU、内存、硬盘、显卡、显示器之间的关系
  13. 俄亥俄大学计算机科学专业,俄亥俄州立大学计算机科学专业研究生申请条件
  14. 招商银行一网通支付(php接入招商银行一网通支付)
  15. win10中用命令行打开画图
  16. 中搜网络与齐齐哈尔达成战略合作 携手共建智慧城市
  17. exiftool消除元数据
  18. 微信开发者工具IDE调试webview内嵌H5方式
  19. 【ESXi 7.x内部升级】ESXi 升级 —— 小版本升级(7.X或8.X版本内升级)
  20. fastAPI简单使用

热门文章

  1. Snort里如何将一个tcpdump格式的二进制文件读取打印到屏幕上(图文详解)
  2. inittab 分析
  3. Oracle 11g R2查看表的存储结构
  4. 一人身兼多个项目时的“课程表”工作模式实践
  5. CMakeLists编译
  6. Scapy 函数传值问题,解决多层数据获取
  7. puppet详解(三)——file资源详解
  8. linux下个性配置命令提示符
  9. 中琅领跑条码打印软件如何导入CDR文件
  10. hexo和github pages的关系