因为毕业设计的缘故,最近刚刚开始学Spring,遇到了一个概念POJOs,在网上查了查相关资料,越看越迷惑,因为很多资料都是相互矛盾的。
一方面理解说POJOs是一种纯粹的javabean,它只能装载数据,作为数据存储的载体,而不具有业务逻辑处理的能力。而另一方面,Martin Fowler则说," In the talk we were pointing out the many benefits of encoding business logic into regular java objects rather than using Entity Beans." 显然Martin Fowler的意思是 POJOs中是含有业务逻辑的。
我今天也思考了一下,以下是我想的:
就像前一篇文章中说的那样,我把Spring框架的设计原则理解为 "内核小而外延丰富" 。那么什么是内核,什么是外延呢?
先从Spring的AOP说起,有些朋友在文章中说,oop是纵向设计,而AOP是横向设计,我认为这样理解有些片面,因为两者之间是没有可比性的,oop是站在"类-对象"层次上的解耦,AOP是站在更高层次--整体系统的设计的角度的解耦(前文说过,个人以为解耦是软件设计的最基本原则)。
然后再说内核与外延,什么是内核呢,什么是外延呢?
个人愚见,内核就是业务逻辑,因为这是软件设计的主线和核心部分,外延就是业务逻辑之外的其他功能(如鉴权功能,日志管理等等)。为了解耦,AOP的思想原则就是把混杂在业务逻辑的外延功能提取出来,这样业务逻辑模块就更加纯净。这种纯净的业务逻辑就是POJOs,提取出来的外延就是一个个的Aspect。
以上便是我现阶段理解的POJOs,,有些主观臆断,肯定不准确,请各位朋友也留下自己的见解,大家相互讨论,共同学习进步。此文就算抛砖引玉吧,请各位嘴下留情。
分享到:
相关推荐
POJOs入门到精通 英文
IDEA通过Generate.POJOs.groovy映射数据库自动生成对应的Java实体类, 具体逻辑不详细展示,可参考:https://blog.csdn.net/weixin_40375601/article/details/106807644
Manning - Pojos In Action
Manning - Pojos In Action.pdf
MyVo Generate POJOs.groovy生成实体类文件
《POJOS IN ACTION中文版:用轻量级框架开发企业应用》是一本实践指南,它围绕POJO(普通Java对象)构造了一个完整的应用程序,对框架之间的各种组合进行了详细的举例说明;描述了在采用POJO和轻量级框架如Hibernate...
Pojos In Action Pojos In Action Pojos In Action
IDEA自带的插件Generate POJOs.groovy 比较简陋,不能生成完整的dao/mapper,切生成的POJO没有注解。没有统一格式化,所以在此基础上进行了扩展能够简单的生成pojo/dao/mapper. 使用时选择目录后会在改目录下生成...
POJOS IN ACTION开发轻量级企业应用程序
java轻量级解决方案的经典教程,探讨了ejb编程模型的各种缺陷及为什么使用pojos轻量级框架进行企业级开发
在idea中逆向生成实体
打开里面的内容,替换idea项目中的Generate POJOs.groovy文件(文件路径:SCratches and Consoles -> extensions -> Database Tools and SQL -> schema - > Generate POJOs.groovy)
找这本书的话 肯定知道这本书的价值我就不都说的了
springboot jpa 自动生成实体类的 文件 可以拿走直接用 Generate POJOs.groovy
POJOs in Action
NULL 博文链接:https://sbiigu.iteye.com/blog/255751