Lombok能够一个注解就能给我们提供实体类的get,set方法,很方便,可是这里面也是有一个缺陷的

就是当字段名第二为大写,将会提供一个和我们常规认为的不一样的get,set方法

为了更直白,这里我就直接上个演示案例:

首先。我在数据库创建这么一个数据表(我就简单点):

Lombok生成get/set异常问题(Lombok缺陷)

然后我首先不使用lombok插件生成get,set方法

Lombok生成get/set异常问题(Lombok缺陷)

然后编写接口去查询,(都是最简单的,超级简单模拟一下而已)

Lombok生成get/set异常问题(Lombok缺陷)

Lombok生成get/set异常问题(Lombok缺陷)

Lombok生成get/set异常问题(Lombok缺陷)

通过查询是没有问题的

Lombok生成get/set异常问题(Lombok缺陷)

然后我们把实体类换成lombok

Lombok生成get/set异常问题(Lombok缺陷)

然后再运行查看,发现了字段名明显有问题。第二个字母本应是大写,这里却变成了小写

Lombok生成get/set异常问题(Lombok缺陷)

这个是因为lombok延续了之前的jdk编译规范,在生成get方法的时候,会把第一个字符变成大写,第二个变成小写,

为了解决这个问题提供了两个方式

1:不使用lombok。

通过自己编写get/set方法,

2:贴注解

@JsonProperty(value = "变量名")

Lombok生成get/set异常问题(Lombok缺陷)

Lombok生成get/set异常问题(Lombok缺陷)

相关文章: