Files
rikako-note/spring/Spring core/POJO.md
Rikako Wu 367344587f 增加了POJO笔记,并且添加了MYBATIS的部分内容。
--------------------------------------------------------
今天学了个新词,‘拭目以待’.	8/4/2022
2022-08-04 00:21:35 +08:00

1.3 KiB
Raw Blame History

POJO

POJO定义

POJOPlain Old Java Object是一种直接的类型POJO并不包含对任何框架的引用。

对于POJO类型该类属性和方法的定义并没有特定的约束和限制

Java Bean命名约束

由于对POJO本身并没有对POJO类属性和方法的定义强制指定命名约束因而许多框默认支持Java Bean命名约束。

Java Bean命名约束

在Java Bean命名约束中为POJO类属性和方法的命名指定了如下规则

  1. 属性的访问权限都被设置为private属性通过getter和setter向外暴露
  2. 对于方法的命名getter和setter遵循getXXX/setXXX的命名规范对于boolean属性的getter可以使用isXXX形式
  3. Java Bean命名规范要求Java Bean对象需要提供无参构造方法
  4. 实现Serializable接口能够将对象以二进制的格式进行存储

其他命名规范

由于Java Bean命名规范中有些规则强制对Java Bean的命名进行限制可能会带来弊端故而如今许多框架在接受Java Bean命名规范之余仍然支持其他的POJO命名规范

如在Spring中通过@Component注解注册Bean对象时被@Component注解的类并不一定要实现Serializable接口也不一定要拥有无参构造方法。