Java中IoC、AOP、Bean、PO、VO、DTO、EJB、POJO等常见概念简述
JavaBeans
是Java中一种特殊的类,可以将多个对象封装到一个对象(bean)中。
特点是可序列化,提供无参构造器,提供getter方法和setter方法访问对象的属性。
名称中的“Bean”是用于Java的可重用软件组件的惯用叫法。
IoC(Inversion of Control)
是面向对象编程中的一种设计原则,可以用来减低计算机代码之间的耦合度。
其中最常见的方式叫做依赖注入(Dependency Injection,简称DI),还有一种方式叫“依赖查找”(Dependency Lookup)。
通过控制反转,对象在被创建的时候,由一个调控系统内所有对象的外界实体,将其所依赖的对象的引用传递给它。
也可以说,依赖被注入到对象中。
DI(Dependency injection)
是种实现控制反转用于解决依赖性设计模式。
一个依赖关系指的是可被利用的一种对象(即服务提供端) 。
依赖注入是将所依赖的传递给将使用的从属对象(即客户端)。
该服务是将会变成客户端的状态的一部分。
传递服务给客户端,而非允许客户端来建立或寻找服务,是本设计模式的基本要求。
AOP(Aspect Oriented Programming)
面向切面编程,通过预编译方式和运行期动态代理实现程序功能的统一维护的一种技术。
AOP是OOP的延续,是软件开发中的一个热点,也是Spring框架中的一个重要内容,是函数式编程的一种衍生范型。
利用AOP可以对业务逻辑的各个部分进行隔离,从而使得业务逻辑各部分之间的耦合度降低,
提高程序的可重用性,同时提高了开发的效率。
PO(persistence object)
用于持久化时(例如保存到数据库或者缓存)。
VO(value object)
用于前端展示使用(例如放置到JSP中解析或者给前端传递数据)。
DTO(data transfer object)
用于接口互相调用返回,数据传输(例如很多接口调用返回值或消息队列内容)。
EJB(Enterprise JavaBean)
是一个用来构筑企业级应用的服务器端可被管理组件。
POJO(Plain Old Java Object)
是一个简单的、正规Java对象,它包含业务逻辑处理或持久化逻辑等,但不是JavaBean、EntityBean等,不具有任何特殊角色和不继承或不实现任何其它Java框架的类或接口。