【发布时间】:2021-03-05 22:52:05
【问题描述】:
我有一个 Spring Boot 应用程序,我正在尝试将 application.properties 中的属性作为参数注释传递给 Entity 类,如下所示:
@Entity
public class Entity{
@Id
@SequenceGenerator(name = "entity_id_seq", sequenceName = "entity_id_seq", initialValue = "${start-seq}")
@GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "dish_id_seq")
private int id;
我的 application.properties 有:
start-seq=100000
但它不会编译说“不兼容的类型:java.lang.String 无法转换为 int”,无法识别表达式。我还尝试将带有 @Value 注释的这个属性传递给这样的变量:
@Value("${start-seq}")
private int startSeq;
但变量始终为 0。我的配置类之前确实有以下注释,但它仍然不起作用:
@Configuration
@EnableConfigurationProperties
@PropertySources({
@PropertySource("classpath:application.properties")
})
我错过了什么吗?
【问题讨论】:
标签: java spring spring-boot properties