为了账号安全,请及时绑定邮箱和手机立即绑定

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

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

慕尼黑5688855 2023-05-10 17:32:54
我们正在为 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()
查看完整描述

2 回答

?
动漫人物

TA贡献1815条经验 获得超10个赞

由于 Spring(以及 Spring Boot)使用Java Beans 规范,为此它使用可用的默认 JDK 支持。

自省和反射 API 将属性定义为 getter/setter。settervoid和 getter 应该返回实际字段(返回和方法参数类型也必须匹配)。

因此,考虑到这一点,Spring 不支持自定义 getter/setter,仅仅是因为 JDK 类不提供此功能。


查看完整回答
反对 回复 2023-05-10
?
慕神8447489

TA贡献1780条经验 获得超1个赞

该框架按照约定命名为 get***/is*** 用于 getter,set*** 用于 setter。此外,@Accessors lombok 功能仍处于试验阶段

查看完整回答
反对 回复 2023-05-10
  • 2 回答
  • 0 关注
  • 95 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信