JavaBean,POJO,Bean,PO,DTO,VO,BO汇总

持久层

持久层就是可以理解为数据放到数据库或者硬盘中可以长期存储,不会因为断电就消失,而是把数据放在持久化设备上,mybatis就是持久层

JavaBean

百度百科:JavaBean是一种Java语言写的可重复用的组件,

为了写成JavaBean,类必须是具体并且公共的并且具有无参构造器

JavaBean提供符合一致性设计模式的公共方法将内部域暴露成员属性,set和get方法获取。

属性名称符合这种模式,其他Java类可以通过反射机制发现和操作JavaBean

JSP中JavaBean的解释

  • 提供一个默认的无参构造函数
  • 需要被序列化并且实现Serialzable接口
  • 可能有一系列的读写属性
  • 可能有一系列的getter和setter方法

POJO

百度百科:使用POJO名称是为了避免和EJB混淆起来,而且简称比较直接,其中有一些属性及其getter和setter方法的类,没有业务逻辑

CSDN:POJO是一个简单的,普通的Java对象,他包含业务逻辑处理和持久化逻辑,也可以包含类似于JavaBean属性访问的set和get方法

pojo例子:

package com.demo.spring;
public class DBhello{
  private DictionaryDao dao;
  public void setDao(DictionaryDao dao){
    this.dao = dao;
  }
}

Bean

Bean是可重复使用的Java组件。

组件就是一个由可以自行进行内部管理的一个或几个类组成,外界不了解其内部信息和运行方式的群体。使用它的对象只能通过接口操作

4.什么是EJB,Entity Bean

Enterprise Bean

在J2EE中,Enterprise Java Beans(EJB)称为Java企业Bean,是Java的核心代码,分别是

  • 会话Bean(Session Bean)
  • 实体Bean(Entity Bean)
  • 消息驱动Bean(MessageDriven Bean)

1.Session Bean用于实现业务逻辑,它可以是有状态的,也可以是无状态的。客户端请求就会分一个Sessionj Bean.更多情况还是通过Entity Bean来访问

2.Entity Bean是域模型对象,用于实现O/R映射,负责将数据库中的表记录映射为内存中的Entity对象

5. PO

PO: persistent object 持久对象

O/R映射

O/R映射是持久层的一个特例,它的数据模型是对象模型(Object),存储模型是关系模型(Relational)

PO是在O/R映射的时候出现的概念,如果没有O/R映射,就没有这个概念存在了。

O/R 映射可以看做是数据库表中对应的Java对象

  • 1.可以简单认为PO对应数据库一条记录
  • 2.PO不应该包含任何数据库操作
  • 3.PO属性和数据库一一对应
  • 4.PO需要实现序列化接口
public class User {
 
    private long id;
    private String name;
 
    public void setId(long id) {
        this.id = id;
    }
 
    public void setName(String name) {
        this.name = name;
    }
 
    public long getId() {
        return id;
    }
 
    public String getName() {
        return name;
    }

} 

6.什么是DTO

DTO(TO):Data Tranfer Object 数据运输对象

主要用于远程调用等需要大量运输对象的地方。

可以将PO中部分属性抽取出来,形成DTO。

一张表100字段,对应PO有100属性,但是我们只要10个属性,这就需要有DTO传递结果到客户端

如果用这个对象来对应界面显示,那此时它的身份就转为VO

序列化

序列化是将独享的状态信息转换为可以存储或者传输形式的过程

序列化期间,对象可以将当前状态写道临时或者持久性存储区。

以后可以通过存储区读取反序列化的对象的状态来重新创建对象

7.VO

1.VO(value object)是值对象

PO和VO,它们的关系应该是相互独立的,一个VO可以只是PO的部分,也可以是多个PO构成,同样也可以等同于一个PO(当然我是指他们的属性)。

2.VO(view object) 表现层对象 视图对象

用一个VO对象对应整个界面的值

8.BO

把一个业务逻辑封装为一个对象,这个对象可以包括一个或多个其他对象。

我们可以把教育经历对应一个PO,这些业务逻辑都封装为PO

然后建立一个建立BO处理,每个BO包括这些PO

关于BO主要有三种概念
1 、只包含业务对象的属性;
2 、只包含业务方法;
3 、两者都包含。

AutoWired

@Autowired是用在JavaBean中的注解,通过byType形式,用来给指定的字段或方法注入所需的外部资源

这里写图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值