POJO(Plain Old Java Objects)

POJO是将业务逻辑放在普通Java对象中的设计模式,强调除Java规范外无特殊限制。JavaBean虽符合POJO概念,但需实现序列化接口。一些框架下的POJO可能因特性需要而使用注解,但仍保持基本POJO原则。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

POJO:Plain Old Java Objects,就是简单的Java对象。

POJO是被Rebecca Parsons, Josh MacKenzie 和Martin Fowler在2000年9月造出来的一个词。他们感觉将业务逻辑放在普通的Java对象中,而不是复杂的实体bean中,有很多优势。他们好奇为什么很多人不乐意使用普通的java对象。他们断定是因为普通的Java对象缺少一个花哨的名字,所以就取了POJO这个名字。
https://martinfowler.com/bliki/POJO.html
在这里插入图片描述

https://encyclopedia.thefreedictionary.com/Plain+old+Java+object
在软件工程中,POJO就是一个普通的Java对象,除了Java规范以外,它们不被任何特殊的限制所约束。
在这里插入图片描述

理想地说,POJO就是一个普通的Java对象,除了Java规范以外,它们不被任何特殊的限制所约束,即POJO不应该必须:

  • 继承预先指定的类
  • 实现预先指定的接口
  • 包含预先指定的注解

但是,由于技术的复杂性和其它原因,许多软件产品或者框架尽管声明它们遵从POJO,但为了实现某些特性,例如持久化,仍然需要使用预先定义的注解。所以,POJO的概念就放宽了。如果一个对象(实际就是Java类)在增加注解以前是POJO,把注解去掉以后又回归到了POJO的状态,那么这个对象仍然可以被认为是POJO。
所以,对于一个基本的对象,只要没有任何特别的特性(例如,实现一个接口)使它变成一个特别的Java对象,那么它就是一个POJO。
在这里插入图片描述

JavaBean是一个POJO,只不过它要实现序列化接口(Serializable)、有一个不带参数的构造器、允许通过getter和setter方法访问属性(其中getter和setter方法命名上要遵循规范)。所以严格来说,JavaBean对POJO模型有轻微地突破,因为它实现了序列化接口Serializable。但因为Serializable只是一个标记接口(即接口体内是空的),所以倒也问题不大。
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值