我在属性文件中编写了查询。我想在spring boot中将属性文件读入一个带注释的类中。我怎么读呢?是否有更好的方法在Spring启动项目中编写查询?
答案 0 :(得分:0)
您可以按@Value("${property.name}")
否则,您可以在Properties
包中使用java.util
对象。
例如,我有一个模式属性,其值为dev或prod,我可以在我的bean中使用它,如下所示:
@Value("${mode:dev}")
private String mode;
另一种方法是使用:
Properties pro = new Properties();
pro.load(this.getClass().getClassLoader().getResourceAsStream());
答案 1 :(得分:0)
如果在application.properties文件中添加属性,则可以在Spring引导类中读取它们,如:
@Service
public class TwitterService {
private final String consumerKey;
private final String consumerKeySecret;
@Autowired
public TwitterService(@Value("${spring.social.twitter.appId}") String consumerKey, @Value("${spring.social.twitter.appSecret}") String consumerKeySecret) {
this.consumerKey = consumerKey;
this.consumerKeySecret = consumerKeySecret;
} ...
答案 2 :(得分:0)
您可以使用@PropertySource从文件中读取属性,然后将它们传递给bean。如果您有一个名为" queries.properties"的文件有一个属性,如:
query1: select 1 from foo
然后您的配置可能如下所示:
@PropertySource("classpath:queries.properties")
@Configuration
public class MyConfig {
@Bean
public DbBean dbBean(@Value("${queries.query1}") String query) {
return new DbBean(query);
}
}