MS Lesson5: Spring Configuration

 1. @Value

server.port=9595

amazon.url="https://amazon.com/transfer"
package com.amazon.demoapp.config;

import com.amazon.demoapp.controller.Student;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

@Configuration
public class BeanConfiguration {

@Value("${amazon.url}")
private String url;

@Bean
public Student getStudent() {
System.out.println("Azericard url is: " + url);
return new Student();
}

}


2. @ConfigurationProperties

package com.amazon.demoapp.config;

import com.amazon.demoapp.controller.Student;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

@Configuration
@ConfigurationProperties(prefix = "amazon")
public class BeanConfiguration {

private String url;
private Integer timeout;

public String getUrl() {
return url;
}

public void setUrl(String url) {
this.url = url;
}

public Integer getTimeout() {
return timeout;
}

public void setTimeout(Integer timeout) {
this.timeout = timeout;
}

@Bean
public Student getStudent() {
System.out.println("Azericard url is: " + url);
System.out.println("Azericard timeout is: " + timeout);
return new Student();
}

}


ve ya

package com.amazon.demoapp.config;

import com.amazon.demoapp.controller.Student;
import lombok.Data;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

@Data
@Configuration
@ConfigurationProperties(prefix = "amazon")
public class BeanConfiguration {

private String url;
private Integer timeout;

@Bean
public Student getStudent() {
System.out.println("Azericard url is: " + url);
System.out.println("Azericard timeout is: " + timeout);
return new Student();
}

}


ve ya

server.port=9595

amazon.url=${AMAZON_URL:https://amazon.com/transfer}
amazon.connection.timeout=${AMAZON_TIMEOUT:10}
package com.amazon.demoapp.config;

import com.amazon.demoapp.controller.Student;
import lombok.Data;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

@Data
@Configuration
@ConfigurationProperties(prefix = "amazon")
public class BeanConfiguration {

private String url;
private Connection connection;

@Bean
public Student getStudent() {
System.out.println("Azericard url is: " + url);
System.out.println("Azericard timeout is: " + connection.getTimeout());
return new Student();
}

@Data
public static class Connection {
private Integer timeout;
}

}


ve ya

package com.amazon.demoapp.config;

import lombok.Data;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.stereotype.Component;

@Data
@Component
@ConfigurationProperties(prefix = "amazon")
public class AmazonProperties {

private String url;
private Connection connection;

@Data
public static class Connection {
private Integer timeout;
}

}


ve ya

server:
port: 9595

amazon:
url: ${AMAZON_URL:https://amazon.com/transfer}
connection-timeout: ${AMAZON_TIMEOUT:10}
package com.amazon.demoapp.config;

import lombok.Data;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.stereotype.Component;

@Data
@Component
@ConfigurationProperties(prefix = "amazon")
public class AmazonProperties {

private String url;
private Integer connectionTimeout;

}


3. Multiple profiles


spring:
profiles:
include:
- common
- amazon
amazon:
url: ${AMAZON_URL:https://amazon.com/transfer}
connection-timeout: ${AMAZON_TIMEOUT:10}
server:
port: 9595





















Комментарии

Популярные сообщения из этого блога

Interview questions

Lesson1: JDK, JVM, JRE

Lesson_2: Operations in Java