@Value etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster
@Value etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster
7 Eylül 2023 Perşembe
@Value Anotasyonu - Ortam Değişkeni Okuma
Örnek
SpringContext @Value Anotasyonu - Map Okuma
Örnek
Örnek
application.properties dosyası şöyle olsun.employee.age={one:'26', two : '34', three : '32', four: '25'}Belli bir key değerine erişmek için şöyle yaparız.@Value("#{'${employee.age}.two")
private String employeeName;Belli bir value değerine erişmek için şöyle yaparız. Eğer value yoksa varsayılan değer olarak 30 gelir.@Value("#{'${employee.age}.['two'] ?: 30")
private Integer employeeAge;
SpringContext @Value Anotasyonu - List Okuma
Giriş
Örnek
Elimizde şöyle bir kod olsun.
app.roles=ADMIN,USER,GUESTŞöyle yaparız. Burada Spring Expression Language kullanılıyor."#{'${app.role}'.split(',')}"
private String[] role;Örnek
Elimizde şöyle bir kod olsun.prefix.list= some,stuff,with,comma,separatorsŞöyle yaparız. Burada Spring Expression Language kullanılıyor."#{'${prefix.list}'.split(',')}"
private String[] array;Örnek - Split İşlemi
application.properties dosyası şöyle olsun.
Örnekapplication.properties dosyası şöyle olsun.
employee.names=Petey Cruiser,Anna Sthesia,Paul Molive,Buck KinnearŞöyle yaparız.@Value("#{'${employee.names}'.split(',')}")
private List<String> employeeName;Eğer sadece ilk elemana erişmek istersek şöyle yaparız.@Value("#{'${employee.names}'.split(',')[0]}")
private String employeeName;application.properties şöyle olsun.
video.output.directory = C:\\Users\\Alex\\Desktop\\output
# Target Sites
target.sites[0] = https://youtube.com
target.sites[1] = https://bing.comŞöyle yaparız.@Configuration
public class WatchConfiguration {
@Value("${video.output.directory}")
private String videoDirectory;
@Value("${target.sites}")
private List<String> targetSites;
...
}
SpringContext @Value Anotasyonu - Conditional Değer Okuma
Giriş
Bu örneklerde SpEL kullanılıyor
Şöyle yaparız
@Value("#{${app.debug} ? ${app.name.debug} : ${app.name}}"")
private Integer employeeAge;SpringContext @Value Anotasyonu - Array Okuma
Giriş
application.properties dosyasında değerin virgül ile ayrılması gerekir
Elimizde şöyle bir kod olsun.
prefix.list = some,stuff,with,comma,separatorsŞöyle yaparız.@Value("${prefix.list}")
private String[] array;
SpringContext @Value Anotasyonu - Varsayılan Değer Okuma
Giriş
Eğer istenilen değer yoksa varsayılan değer atamak için ":" karakteri ile ayırırız.
SpringContext @Value Anotasyonu - System Property Okuma
Giriş
"#{systemProperties['...']}" şeklide kullanılır
Şöyle yaparız.
@Value("#{systemProperties['java.home']}")
public String javaHome;ÖrnekJVM'e geçilen parametrelerin otomatik olarak değişkene atanmasını sağlar. JVM'i şöyle başlatalım.
-Dtls.keyAlias=tomcat
-Dtls.key-store-password=cGFzc3dvcmQ=Pojo'yu şöyle yaparız.@Component
public class SSLConfig {
@Value("#{systemProperties['tls.keyAlias']}")
public String keyAlias;
@Value("#{systemProperties['tls.key-store-password']}")
private String keyPassword;
// getters and setters
}
Kaydol:
Kayıtlar (Atom)