ABP源码分析十四:Entity的设计

ABP源码分析十四:Entity的设计

IEntity<TPrimaryKey>: 封装了PrimaryKey:Id,这是一个泛型类型

IEntity: 封装了PrimaryKey:Id,这是一个int类型

Entity<TPrimaryKey> :支持主键是泛型类型的Entity

Entity:支持主键是int类型的Entity

ABP源码分析十四:Entity的设计

 

IHasCreationTime: 封装了CreationTime

ICreationAudited: 封装了CreatorUserId,这个是long类型

CreationAuditedEntity<TPrimaryKey> : 支持主键是泛型类型的Entity,并且封装了CreationTime 和 CreatorUserId

CreationAuditedEntity: 只支持主键是int类型的Entity,并且封装了CreationTime 和 CreatorUserId

ICreationAudited<TUser> :封装了泛型类型的creator

CreationAuditedEntity<TPrimaryKey, TUser> :  支持主键是泛型类型,并且封装了泛型类型的creator的Entity

ABP源码分析十四:Entity的设计

 

ISoftDelete:封装了软删除的标志IsDeleted

IHasDeletionTime:封装了DeletionTime

IDeletionAudited:封装了DeleterUserId,这个是long类型

IDeletionAudited: 封装了泛型类型的DeleterUser

 ABP源码分析十四:Entity的设计

 

IHasModificationTime:封装了LastModificationTime

IModificationAudited: 封装了LastModifierUserId,这个是long类型

IModificationAudited<TUser> :  封装了泛型类型的LastModifierUser

 ABP源码分析十四:Entity的设计

 

IAudited:从其父类接口那继承了Creation 和 Modification 的时间和UserID,这个是long类型

AuditedEntity<TPrimaryKey> :支持主键是泛型类型的Entity,并且从其父类接口那继承了Creation 和 Modification 的时间和UserID,这个是long类型

AuditedEntity: 与AuditedEntity<TPrimaryKey>的区别就是其只支持主键是int类型的Entity。

 ABP源码分析十四:Entity的设计

 

AuditedEntity<TPrimaryKey, TUser> :与AuditedEntity<TPrimaryKey>的区别就是其支持泛型类型的LastModifierUser和CreatorUser。

ABP源码分析十四:Entity的设计

 

 

IAudited:从其父类接口那继承了Creation,Modification和delete 的时间和UserID,这个是long类型

FullAuditedEntity<TPrimaryKey> :支持主键是泛型类型的Entity,并且从其父类接口那继承了Creation,Modification和delete 的时间和UserID,这个是long类型

FullAuditedEntity:与FullAuditedEntity<TPrimaryKey>的区别就是其只支持主键是int类型的Entity

 ABP源码分析十四:Entity的设计

 

FullAuditedEntity<TPrimaryKey, TUser> :与FullAuditedEntity<TPrimaryKey>的区别就是其支持泛型类型的LastModifierUser,CreatorUser 和 deleteuser。

ABP源码分析十四:Entity的设计

 

以下是最终的类层次结构。

ABP源码分析十四:Entity的设计

 

返回ABP源码分析系列文章目录

转载于:https://www.cnblogs.com/1zhk/p/5329393.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/109103.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Quartz与Spring集成—— SchedulerFactoryBean的初始化分析「建议收藏」

    Quartz与Spring集成—— SchedulerFactoryBean的初始化分析「建议收藏」Quartz是一个开源的定时调度框架,支持集群部署。我们可以通过其JavaAPI来使用它,或者通过Spring来配置与管理,也可以结合使用两种方式。本文重点分析Quartz与Spring集成时的初始化过程。

    2022年5月24日
    109
  • MOS管电平转换电路学习

    MOS管电平转换电路学习一个MOSFET电平转换电路引发的问题

    2022年10月19日
    0
  • Data grip 激活码_在线激活

    (Data grip 激活码)好多小伙伴总是说激活码老是失效,太麻烦,关注/收藏全栈君太难教程,2021永久激活的方法等着你。IntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,下面是详细链接哦~https://javaforall.net/100143.html747EFQ8BIF-eyJsaWNlbnNlSWQi…

    2022年3月31日
    61
  • fedora详细安装教程_oracle查看数据库磁盘

    fedora详细安装教程_oracle查看数据库磁盘via:http://www.helpsworld.org/blog/?p=391Fedora12发布有几天了,增加的的新功能还有一系列的改进非常的有吸引力。由于最近没有充分的时间折腾,所以还没有进行安装。不过今天还是在虚拟机上安装了这个新系统。其实也是为了先熟悉一下,为过几天真正安装做些准备。1.安装条件:1.1 VirtualBox虚拟机,8G虚拟磁盘已安装Fed

    2022年9月20日
    0
  • java源程序文件扩展名_JAVA源代码的扩展名为( )

    java源程序文件扩展名_JAVA源代码的扩展名为( )展开全部JAVA源代码的扩展名为.java。Java源程序(.java文件)-java字节码文e68a8462616964757a686964616f31333433626462件(.class文件)-由解释执行器(java.exe)将字节码文件加载到java虚拟机(jvm)-字节码文件(.class)就会在java虚拟机中执行。Java的基本包java.lang其中包含有:接口:Compara…

    2022年7月8日
    46
  • springcloud eruka刷新时间配置实战「建议收藏」

    springcloud eruka刷新时间配置实战「建议收藏」由于在使用springclouderuka时,服务注册和发现,默认配置往往不能满足及时性的要求,搜集整理了一篇配置。请多多指教server.port=7001spring.application.name=eureka-servereureka.client.serviceUrl.defaultZone=http://localhost:7002/eureka/eureka.client.registerWithEureka=trueeureka.client.fetchRegistry=t

    2022年8月21日
    5

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号