40 lines
1.5 KiB
Plaintext
40 lines
1.5 KiB
Plaintext
= SdlBaseBootApplication
|
|
|
|
SpringBoot 웹 애플리케이션을 배포할 때는 주로 embedded tomcat이 내장된 jar파일을 이용한다. 하지만 war 파일로 빌드, 배포를 진행해야 하는 경우를 위해 SpringBootServletInitializer를 상속받고 있다.
|
|
|
|
NOTE: https://docs.spring.io/spring-boot/docs/current/reference/html/howto.html#howto.traditional-deployment[Spring Boot supports traditional deployment]
|
|
|
|
== SpringBootServletInitializer 상속
|
|
.SdlBaseBootApplication
|
|
[source, java]
|
|
----
|
|
@SpringBootApplication
|
|
public class SdlBaseBootApplication extends SpringBootServletInitializer {
|
|
@Override
|
|
protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {
|
|
return application.sources(SdlBaseBootApplication.class);
|
|
}
|
|
|
|
public static void main(String[] args) {
|
|
SpringApplication.run(SdlBaseBootApplication.class, args);
|
|
}
|
|
|
|
}
|
|
----
|
|
|
|
== Profile 적용
|
|
@Profile 을 이용하여 Profile 별로 다른 설정이 가능하다.
|
|
아래는 spring.profiles.active(JAVA OPTS)에 따라서 변경되는 설정이다.
|
|
|
|
* 아래의 예는 local profile 에서만 적용된다.
|
|
|
|
[source, java]
|
|
----
|
|
@Configuration
|
|
@Profile({"local"})
|
|
public class DbcpDataSourceConfig {
|
|
----
|
|
|
|
IMPORTANT: spring.profiles.active 는 runtime에서 매우 중요한 프로퍼티다. ServletContext에 등록되는 Filter, Servlet이 결정되고,
|
|
Spring Bean의 생성도 결정되니 반드시 JAVA OPTS에 설정해야 한다.
|