728x90 전체 글86 Spring boot Web Environment Web Environment의 경우 서블릿의 유무 > webFlux의 유무 > 둘다 없음 순으로 정해짐 (SERVLET) > (REACTIVE) > (NONE) * Web Environment를 변경하고 싶은 경우 (SpringApplication).setWebApplicationType을 설정할 수도 있음 Argument Jvm argument : -D 로 시작함 , jvm 설정에 관련된 argument Application argument : -- 로 시작, 어플리케이션 설정에 관련된 argument ApplivationRunner or CommandLineRunner를 통해 application실행 이후 추가적으로 실행할 수 있음 - ApplicationRunner @Component public .. 2022. 2. 5. Spring boot Application Events Application Context가 만들어지 이후로 발생하는 이벤트의 경우 bean으로 등록해두었다면 listener가 자동으로 실행 @Component //해당 이벤트가 발생할 때 자동으로 Linstener를 실행하기 위해 bean으로 등록 public class ApplicationStartedEventListenerSample implements ApplicationListener { @Override public void onApplicationEvent(ApplicationStartedEvent event) { System.out.println("뾰로롱"); System.out.println("Application started"); } } 결과 * ApplicationStartingEvent.. 2022. 2. 5. Spring boot Debug & Banner debug 모드 : debug레벨까지 로깅(자동 설정 적용여부, 적용이 안된 자동설정 사유등이 출력) > VM option에 -Ddebug or Program arguments에 --debug FailureAnalyzer : 에러메시지를 이이쁘게 출력해주는 기능 배너 * 수정을 원하는 경우 resources 밑 banner.txt | .git | .jpg | .png 파일을 생성하거나 Banner 클래스를 구현하고 (SpringApplication).setBanner()를 통해 설정도 할 수 있음 > 다른 곳에 저장하고 싶은 경우 application.properties 파일에 spring.banner.location=위치 등록해주면 됨 ref : https://docs.spring.io/spring-b.. 2022. 2. 5. Spring boot package Spring boot에서 packaging 하는 경우 모든 클래스를 하나로 압축하고 내장 jar을 읽어 독립적으로 실행가능한 jar파일이 생성된다. 실습 과정 - mvn clean : /target 밑 파일 삭제 - mvn package -DskipTests : 테스트를 생략하고 패키징 (/target 밑에 jar파일 생성) > 애플리케이션 클래스와 라이브러리 위치를 구분하여 필요한 lib를 한번에 압축하여 묶어둠 > org.springframework.boot.loader.jar.JarFile을 사용하여 내장 jar파일을 읽음 > org.springframework.boot.loader.Luncher를 사용하여 실행함 - java -jar 패키지명.jar : jar 파일 실행 2022. 2. 5. 이전 1 ··· 8 9 10 11 12 13 14 ··· 22 다음 728x90