@ConfigurationProperties
mogą być używane do mapowania wartości od .properties
(.yml
również obsługiwane) do klasy modelu.
Rozpatrz następujący przykładowy plik.
.properties
cust.data.employee.name=Sachin
cust.data.employee.dept=Cricket
Employee.java
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.context.annotation.Configuration;
@ConfigurationProperties(prefix = "cust.data.employee")
@Configuration("employeeProperties")
public class Employee {
private String name;
private String dept;
//Getters and Setters go here
}
Teraz wartość właściwości można uzyskać przez autowiring employeeProperties
następująco.
@Autowired
private Employee employeeProperties;
public void method() {
String employeeName = employeeProperties.getName();
String employeeDept = employeeProperties.getDept();
}
jako alternatywa można je uzyskać również ze źródła 'Środowisko' lub przez' @ KonfiguracjaProperties' – sodik
Aby dodać na górze odpowiedzi @ sodik, jest to przykład, który pokazuje, jak uzyskać [Środowisko] (https://docs.spring.io/spring/docs/current/javadoc-api/org/springframework/core/env/Environment.html) http: // stackoverflow. com/questions/28392231/how-to-specify-program-current-active-profile-using-spring-boot – cristi
Co, jeśli potrzebujesz dostępu do ponad 10 wartości, Czy musiałbyś powtarzać swój przykład 10 razy? – Jesse