Spring ConfigurationProperties 与流畅的设置器或自定义设置器一起工作

我们正在为 setter 和 getter 使用项目 lombok,我们更喜欢 setter 和 getter 的流畅访问器。当我们将 ConfigurationProperties 与流畅的访问器一起使用时,就会出现问题。Spring 无法将属性与类字段连接起来。当我们删除 Accessor 注释并使用经典的 setter 和 getter 时,同样的事情会起作用。有没有一种方法可以将自定义设置器与 Configurationproperties 一起使用


import lombok.Data;

import lombok.experimental.Accessors;

import org.springframework.boot.context.properties.ConfigurationProperties;


@ConfigurationProperties

@Data

@Accessors(fluent = true)

public class Properties {


     private String property1;


     private String property2;


}

我们在访问此属性时遇到空指针异常


properties.property1()


慕尼黑5688855
浏览 113回答 2
2回答

动漫人物

由于 Spring(以及 Spring Boot)使用Java Beans 规范,为此它使用可用的默认 JDK 支持。自省和反射 API 将属性定义为 getter/setter。settervoid和 getter 应该返回实际字段(返回和方法参数类型也必须匹配)。因此,考虑到这一点,Spring 不支持自定义 getter/setter,仅仅是因为 JDK 类不提供此功能。

慕神8447489

该框架按照约定命名为 get***/is*** 用于 getter,set*** 用于 setter。此外,@Accessors lombok 功能仍处于试验阶段。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java