实体entity、JavaBean、Model、POJO、domain的区别

实体entity、JavaBean、Model、POJO、domain的区别

Java Bean、POJO、 Entity、 VO , 其实都是java 对象,只不过用于不同场合罢了。

按照 Spring MVC 分层结构:

JavaBean: 表示层 (Presentation Layer)

Entity: 业务层 (Service layer)

Dao: 数据访问层 (data access layer)。

Entity接近原始数据,Model接近业务对象~
Entity:是专用于EF的对数据库表的操作,
Model:是为页面提供数据和数据校验的,所以两者可以并存
POJO:POJO是Plain OrdinaryJava Object的缩写不错,但是它通指没有使用Entity Beans的普通java对象,可以把POJO作为支持业务逻辑的协助类。
domain:domain这个包国外很多项目经常用到,字面意思是域的意思。

POJO实质上可以理解为简单的实体类,顾名思义POJO类的作用是方便 程序员使用数据库中的数据表,对于广大的程序员,可以很方便的将POJO类当做对象来进行使用,当然也是可以方便的调用其get,set方法。

 - JavaBean: 先说JavaBean,JavaBean更多的是一种规范,也即包含一组set和get方法的Java对象。

 - POJO: 普通的Java对象,对于属性一般实现了JavaBean的标准,另外还可以包含一些简单的业务逻辑(方法)。

 - PO: POJO在持久层的体现,对POJO持久化后就成了PO。PO更多的是跟数据库设计层面相关,一般PO与数据表对应,一个PO就是对应数据表的一条记录。
  - DAO: PO持久化到数据库是要进行相关的数据库操作的(CRUQ),这些对数据库操作的方法会统一放到一个Java对象中,这就是DAO。

  • BO: POJO在业务层的体现,对于业务操作来说,更多的是从业务上来包装对象,如一个User的BO,可能包括name, age, sex, privilege, group等,这些属性在数据库中可能会在多张表中,因为每一张表对应一个PO,而我们的BO需要这些PO组合起来(或说重新拼装)才能成为业务上的一个完整对象。

     - VO(Value Object/View Object): POJO在表现层的体现。 当我们处理完数据时,需要展现时,这时传递到表现层的POJO就成了VO。它就是为了展现数据时用的。

     - DTO(Data Transfer Object): POJO在系统间传递时。当我们需要在两个系统间传递数据时,一种方式就是将POJO序列化后传递,这个传递状态的POJO就是DTO。

     - EJB(Enterprise JavaBean): 我认为它是一组”功能”JavaBean的集合。上面说了JavaBean是实现了一种规范的Java对象。这里说EJB是一组JavaBean,的意思是这一组JavaBean组合起来实现了某个企业组的业务逻辑。这里的一组JavaBean不是乱组合的,它们要满足能实现某项业务功能的搭配。找个比方,对于一身穿着来说,包括一顶帽子,一件衣服,一条裤子,两只鞋,这穿着就是EJB.

  • 24
    点赞
  • 131
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
### 回答1: pojo:简单Java对象,是一种轻量级的Java对象,没有任何限制和约束,通常用于传递数据。 domain:领域模型,是指在特定领域中的对象或实体,通常用于描述业务逻辑和数据结构。 entity实体,是指具有唯一标识的对象或实体,通常用于描述数据库中的表或文档中的记录。 bean:JavaBean,是一种符合特定规范的Java类,通常用于封装数据和提供访问方法,以便于在不同的应用中进行复用。 ### 回答2: POJO(Plain Old Java Object)是一种普通的Java对象,没有任何特定的框架或技术限制。它可以被用来表示简单的数据类,也可以被用来表示复杂的对象。POJO与其他对象不同的地方在于,它不依赖于任何特殊的接口或类,并且可以在任何Java程序中使用。POJO主要的目的是提供一种轻量级的、简单的Java对象模型来开发业务逻辑。 DomainEntity是两个非常相似的概念,它们都是用来表示业务对象的。Domain通常被用来指代业务领域的对象,而Entity通常被用来指代数据存储的对象。这两个概念基本上都是面向对象设计中的术语,用于描述具体的管理对象。 Bean则是Java语言中的一种特殊对象,在Java中比较常见。它是一种具有一定格式的类,可以被用来描述Java对象的某些特定属性,如名称、类型、值等。Bean通常也具有Getters、Setters方法,用于对该对象进行访问和更改。Bean最常见的用法是在框架中使用,用来描述内部框架对象的属性。例如,Spring框架中使用Bean来描述应用程序的配置和组件。 ### 回答3: POJO(Plain Old Java Object)是一个普通的Java对象,它是一个没有规则限制,没有继承特定接口或类,没有被强制实现特定接口的简单Java对象。POJO不仅可以用于传输数据,而且可以具有行为,也可以包含setter和getter方法以及其他适当的方法。 Domain(领域模型)是Java中一个用于表示业务领域相关概念的对象。这些对象通常包括业务的实体和值对象等。Domain对象提供了一种描述和维护领域概念的方式,它们通常是可变的,可以比较直接地映射到持久化存储。 Entity实体)是一个特定领域中有实际存在的东西。在面向对象的设计中,实体通常表示为一个对象。它通常有一个唯一的标识符,并具有属性和行为。在软件开发中,实体对应于数据库表或其他持久化机制,以便于数据的存储和检索。 Bean(JavaBean)是一个Java中独立于程序行为的可重用软件组件。它既可以是简单的数据持有对象,也可以是处理业务逻辑的Java类。JavaBean通常具有属性、getter和setter方法和默认无参数构造函数,以便于在IDE(集成开发环境)中进行自动化的代码生成。JavaBean通常被用于MVC架构中的Model层,它们可以被序列化为字节数组以在网络上传输,也可以被持久化到数据库中。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值