JPA
barry的异想世界
这个作者很懒,什么都没留下…
展开
-
6. 基于Spring Data的领域事件发布
领域事件发布是一个领域对象为了让其它对象知道自己已经处理完成某个操作时发出的一个通知,事件发布力求从代码层面让自身对象与外部对象解耦,并减少技术代码入侵。一、 手动发布事件// 实体定义@Entitypublic class Department implements Serializable { @Id @GeneratedValue(strategy = Generat...原创 2020-04-02 08:53:54 · 389 阅读 · 0 评论 -
5. JPA对象继承关系
文章目录一、对象建模二、Repository设计1. 查询2. 写入和删除三、Repository查询语句分析1. `InheritanceType.SINGLE_TABLE` 构建单表模式2. `InheritanceType.TABLE_PER_CLASS`构建独立表模式3. `InheritanceType.JOINED`构建关联表模式四、适用场景五、源代码在实体建模过程中,有些实体会有多...原创 2020-03-25 19:04:49 · 349 阅读 · 0 评论 -
4. JPA对象型属性操作
文章目录1. 使用`@OneToMany`做关联2. 使用`@Enumerated`保存枚举值3. 使用`@Embeddable`将子表字段合并到主表4. 使用`@AttributeOverride`重写字段名5. 使用`@Convert`做类型转换6. 使用抽象类属性7. 源代码领域驱动设计核心是领域对象识别,一切操作皆是对象,这也是面向对象编程所倡导的。在设计实体属性时,除了数据库能识别的标...原创 2020-03-20 10:49:14 · 282 阅读 · 0 评论 -
3. JPA对象关系映射 -- 级联操作
对象映射关系分为单向关系和双向关系,单向关系只在一方对象上存在对方对象,双向关系是在双方对象上存在彼此对象。一、单向关系public class Department implements Serializable { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) private Integer depa...原创 2020-03-17 22:04:46 · 268 阅读 · 0 评论 -
1. JPA技术选型的思考
在做技术选型的时候是选JPA还是MyBatis,网上做对比的讨论非常多,双方也是各自有各自的好,谁也不能代替谁。以下是网上讨论的几点归纳:1. JPA更适配OO2. JPA熟悉后用起来很方便3. MyBatis灵活性高4. MyBatis性能更好5. 国内使用MyBatis比JPA多做技术选型时选择的是JPA,我对JPA比较熟,主要针对JPA来谈谈我的想法引用至【[持久层框...原创 2020-03-03 00:05:48 · 188 阅读 · 0 评论 -
2. JPA对象关系映射--值对象映射
在领域驱动设计中,有一些结构主表和明细表必须一起显现才能表达业务意义,明细表不能单独使用被称为值对象,主表表达业务对象称为实体,也称为聚合根。1. 在实体中的值对象上增加@OneToMany注解@Data@Entitypublic class SaleOrder { @Id @GeneratedValue(strategy = GenerationType.IDENTIT...原创 2020-03-11 08:57:09 · 350 阅读 · 0 评论