

Here are different ways to read Spring boot different ways to read properties file using @ConfigurationProperties like convert properties to List,Map, read nested properties ect. Here is complete example of read spring boot read property value using @ConfigurationProperties.
Table of Contents
1. Read property values to Map using @ConfigurationProperties
application.properties
app.domain=javadeveloperzone.com app.subdomain=api app.domainCount=10
AppProperties
package com.javadeveloperzone.model; import org.springframework.boot.context.properties.ConfigurationProperties; import org.springframework.stereotype.Component; import java.util.HashMap; import java.util.Map; /** * Created by Java Developer Zone on 26-08-2017. */ @ConfigurationProperties() @Component public class AppProperties { private java.util.Map<String, String> app = new HashMap<>(); // it will store all properties start with app public Map<String, String> getApp() { return app; } public void setApp(Map<String, String> app) { this.app = app; } }
2. Read property values to List using @ConfigurationProperties
application.properties
app.information[0]=Java app.information[1]=Developer app.information[2]=Zone
AppProperties
package com.javadeveloperzone.model; import org.springframework.boot.context.properties.ConfigurationProperties; import org.springframework.stereotype.Component; import java.util.ArrayList; import java.util.List; /** * Created by Java Developer Zone on 26-08-2017. */ @ConfigurationProperties(prefix = "app") // It will read all properties prefix with app @Component public class AppProperties { private java.util.List<String> information=new ArrayList<>(); // it will contains all value of app.information[0],app.information[1],app.information[2] public List<String> getInformation() { return information; } public void setInformation(List<String> information) { this.information = information; } }
3. Read Nested Property to Sub Class using @ConfigurationProperties
application.properties
app.information[0]=Java app.information[1]=Developer app.information[2]=Zone app.data.value=application value app.data.basicValue=application basic value
AppProperties
package com.javadeveloperzone.model; import org.springframework.boot.context.properties.ConfigurationProperties; import org.springframework.stereotype.Component; import java.util.ArrayList; import java.util.List; /** * Created by Java Developer Zone on 26-08-2017. */ @ConfigurationProperties(prefix = "app") // It will read all properties prefix with app @Component public class AppProperties { private java.util.List<String> information=new ArrayList<>(); private Data data; public Data getData() { return data; } public void setData(Data data) { this.data = data; } public static class Data{ private String value; private String basicValue; public String getValue() { return value; } public void setValue(String value) { this.value = value; } public String getBasicValue() { return basicValue; } public void setBasicValue(String basicValue) { this.basicValue = basicValue; } } public List<String> getInformation() { return information; } public void setInformation(List<String> information) { this.information = information; } }
4. References
Was this post helpful?
Let us know if you liked the post. That’s the only way we can improve.