首页 > 编程语言 >Java里什么是POJO

Java里什么是POJO

时间:2023-02-03 09:23:22浏览次数:36  
标签:实体类 Java 对象 什么 POJO Bean null

POJO(Plain Ordinary Java Object)简单的Java对象,实际就是普通JavaBeans,是为了避免和EJB混淆所创造的简称。

POJO 和JavaBean是我们常见的两个关键字,一般容易混淆,POJO全称是Plain Ordinary Java Object / Pure Ordinary Java Object,中文可以翻译成:普通Java类,具有一部分getter/setter方法的那种类就可以称作POJO,但是JavaBean则比 POJO复杂很多, Java Bean 是可复用的组件,对 Java Bean 并没有严格的规范,理论上讲,任何一个 Java 类都可以是一个 Bean 。但通常情况下,由于 Java Bean 是被容器所创建(如 Tomcat) 的,所以 Java Bean 应具有一个无参的构造器,另外,通常 Java Bean 还要实现 Serializable 接口用于实现 Bean 的持久性。 Java Bean 是不能被跨进程访问的。JavaBean是一种组件技术,就好像你做了一个扳子,而这个扳子会在很多地方被拿去用,这个扳子也提供多种功能(你可以拿这个扳子扳、锤、撬等等),而这个扳子就是一个组件。一般在web应用程序中建立一个数据库的映射对象时,我们只能称它为POJO。POJO(Plain Old Java Object)这个名字用来强调它是一个普通java对象,而不是一个特殊的对象,其主要用来指代那些没有遵从特定的Java对象模型、约定或框架(如EJB)的Java对象。理想地讲,一个POJO是一个不受任何限制的Java对象(除了Java语言规范)

 

pojo指简单的Java对象, 是实体类entity和值对象VO 还有数据传输对象DTO的统称

Entity实体类, 通常实体类的属性和表的字段是一致的

DTO 数据传输对象, 当客户端给服务器传输参数时, 参数数量可能和实体类的数量不一致,会比实体类的数量要少,比如实体类中有10个属性, 客户端只传递了3个, 这样用实体类接收的话会有7个属性值为null, 使用DTO的好处是所有属性都有值, 只要发现了null则说明出错了 .

VO ValueObject值对象, 当从数据库里面查询数据时,有时查询字段数量会比实体类中的属性数量要少, 这样实体类中也会存在大量字段值为null,而且这些null也会从服务器响应给客户端,这样这些null值也会占用流量, VO的作用是查询几个字段在VO里面有存在几个属性, 这样就能避免网络传输时传递null.

总结: 之前接收客户端传递过来数据时使用entity,接收从数据库查询回来的数据使用的也是entity, 以后 接收客户端传递过来的数据使用DTO, 接收从数据库中查询回来的数据使用VO

 

转载:百度百科 https://baike.baidu.com/item/POJO/3311958?fr=aladdin

版权声明:本文为CSDN博主「半路出家不会英语」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_73849581/article/details/128184975

标签:实体类,Java,对象,什么,POJO,Bean,null
From: https://www.cnblogs.com/allensunbj/p/17088016.html

相关文章

  • 【转载】APM——SkyWalking 是什么
    原文地址:1、https://zhuanlan.zhihu.com/p/3615792942、https://www.cnblogs.com/itxiaoshen/p/16513711.htmlgithub:  https://skywalking.apache.org/一、SkyWalki......
  • 面试官:什么是双亲委派模型?
    双亲委派模型是Java类加载器的一种工作模式,通过这种工作模式,Java虚拟机将类文件加载到内存中,这样就保证了Java程序能够正常的运行起来。那么双亲委派模型究竟说的是啥......
  • java(18) 泛型
    Java泛型Java泛型(generics)是JDK5中引入的一个新特性,泛型提供了编译时类型安全检测机制,该机制允许程序员在编译时检测到非法的类型。泛型的本质是参数化类型,也就是......
  • Java(19)枚举
    Java枚举是一个特殊的类,一般表示一组常量,比如一年的4个季节,一个年的12个月份,一个星期的7天,方向有东南西北等。Java枚举类使用enum关键字来定义,各个常量使用逗号......
  • java(17)io流
    JavaIO流详解1.什么是IOJava中I/O操作主要是指使用Java进行输入,输出操作.Java所有的I/O机制都是基于数据流进行输入输出,这些数据流表示了字符或者字节数据的流动序列。......
  • java语法
    一、常量和变量1、数据类型基本数据类型:Boolean、byte、short、int、long、char、float、double。它们分别占用字节数为1、1、2、4、8、2、4、8引用类型:数组、字符串、......
  • Java中ArrayList的扩容机制
    1.简介publicclassArrayList<E>extendsAbstractList<E>implementsList<E>,RandomAccess,Cloneable,java.io.SerializableArrayList的底层基于数组来实现,故......
  • java介绍、环境搭建与Hello,World!
    java的诞生C与C++C语言1972年贝尔实验室操作系统、编译器等偏底层应用指针和内存管理漏洞C++1982年面向对象对C兼容在图形领域、游戏领域等方面常用jav......
  • JavaScript学习笔记—DOM:元素的添加、修改、删除
    appendChild(node):向节点添加最后一个子节点insertAdjacentHTML(position,text):把元素插入到指定位置position:beforebegin-插入到当前元素的前面,即开始标签之前a......
  • 教练型管理--是什么?
    背景:作为一名技术开发人员,工作三五年后,就要开始考虑未来自己的职业发展方向,有两种说法,一是继续走技术路线,另一种是走管理路线。具体的方向选择,也是要根据自己的兴趣、悟性......