lombok的getter不能对应@jsonproperty
时间: 2023-09-30 08:01:48 浏览: 133
[] - 2022-10-09 Lombok 同时使用 @Data 和 @Builder 的巨坑,千万别乱用!.pdf
在使用 Lombok 自动生成 getter 和 setter 方法的情况下,如果需要使用 @JsonProperty 注解来指定属性在 JSON 数据中对应的字段名字,可以使用 Lombok 提供的 @getter 和 @setter 注解来指定生成的方法的名称。
例如,可以在使用 Lombok 自动生成 getter 和 setter 方法的基础上,使用 @JsonProperty 注解来指定属性在 JSON 数据中对应的字段名字,示例如下:
```java
import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Getter;
import lombok.Setter;
@Getter
@Setter
public class Student {
@JsonProperty("stu_id")
private Integer stuId;
private String name;
private Integer age;
}
```
在上面的示例中,使用 Lombok 的 @Getter 和 @Setter 注解来自动生成 stuId、name 和 age 属性的 getter 和 setter 方法。同时,使用 @JsonProperty 注解来指定 stuId 属性在 JSON 数据中对应的字段名字为 "stu_id"。这样,在使用 Jackson 库进行对象和 JSON 数据之间的转换时,会自动根据 @JsonProperty 注解中定义的字段名进行转换。
需要注意的是,在使用 Lombok 自动生成 getter 和 setter 方法时,如果同时使用了 @JsonProperty 注解来指定属性在 JSON 数据中对应的字段名字,需要使用 Lombok 提供的 @getter 和 @setter 注解来为属性生成指定名称的 getter 和 setter 方法。否则,如果直接使用默认的 getter 和 setter 方法,Jackson 库就无法根据 @JsonProperty 注解中定义的字段名进行转换,就会出现问题。
阅读全文