java - Spring 启动;我们可以在 Java 枚举中使用 @Value

标签 java spring spring-boot enums

是否可以在枚举类中使用@Value("${myapp.token.key}")?

在枚举类中使用@Configuration 或@ConfigurationProperties 是一种好的做法吗?

-- JK

最佳答案

不,不是。枚举的目的是为我们提供范围有限的映射数据(固定值集)。如果我们要在 Java 枚举中使用 @Value,它首先会剥夺枚举的用途。

@Configuration 也是如此,当我们想在 Spring 的容器中注入(inject)实例时,我们会这样做。这对枚举没有任何意义。

如果您发布了您尝试这样做的实际原因,我们可能会为您指明正确的方向/解决方案。

关于java - Spring 启动;我们可以在 Java 枚举中使用 @Value,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63947478/

相关文章:

java - 将数组列映射到 Projection 接口(interface) : No Dialect mapping for JDBC type: 2003

spring-boot - Spring Boot 应用程序卡在 Spring Boot Logo 上

spring - spring boot版本1升级到2时import org.apache.tomcat.jdbc.pool.datasource maven无法解析

java - 将 jetty 与 Repast simphony 一起使用时出错

java - 检查字符串是否包含确切的关键字

java - 当属性不存在时,Spring @Value 注释不使用默认值

java - Hibernate 4 数据未保存

java - 增加包含值的字符串的简单方法,例如 : USER1000

java - 从 yyyy-mm-dd 获取当前月份

java - Spring Boot 无法连接 Postgresql 数据库