繁体   English   中英

申报map <string, list<customclass> > 在 spring application.properties</string,>

[英]Declare a map of <String, List<CustomClass>> in spring application.properties

我花了一些时间来外部化一些配置,但无法找到这样做的方法。

我的用例:

class DocumentValidationMetaData {

private String docType;
private boolean isMandatory;

}
@PropertySource (""classpath:*documentValidation.properties)
@Component
@ConfigurationProperties
public class DocumentValidationConfig{

   @NotNull
   Map<String, List<DocumentValidationMetaData>> config

}

如何在我的属性文件中声明此配置?

提前致谢, Ayushi

您可以自动装配环境 class 并从 documentation.properties 文件中检索值。

例如,如果您有一个配置文件:

myapp.properties

app.url=1.2.3.4

然后你可以使用你的属性如下:

@Configuration
@ComponentScan(basePackages = { "<your base package>" })
@PropertySource("classpath:myapp.properties")    
public class MyAppClass {

    @Autowired
    private Environment env;

    @Bean
    public String myTestMethod() throws Exception {

        String url = env.getProperty("app.url");
        return url; 
}

更正@PropertySource声明中的 "" :

 @PropertySource ("classpath:*documentValidation.properties") 

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM