spring boot18 spring boot application startup tracking spring boot 애플리케이션을 시작하는 동안 SpringApplication과 ApplicationContext는 애플리케이션 라이프사이클, 빈 라이프사이클, 애플리케이션 이벤트 처리와 관련된 많은 작업을 수행한다. Spring은 ApplicationStartup을 통해서 StartupStep 객체를 사용하여 애플리케이션 시작 과정을 추적할 수 있다. 추적 데이터는 프로파일링 목적으로 수집하거나 애플리케이션 시작 프로세스를 이해하는데 도움이 될 수 있다. spring boot 애플리케이션 시작 과정에 대한 추적 데이터를 얻는 방법에 대해서 기록한다. Spring Boot 2.4부터 ApplicationStartup 메트릭을 생성할 수 있게 되었다. 해당 메트릭에는 시작 과정에서 생성되는 각각의 이벤.. 스프링부트 2023. 9. 17. Spring boot embedded server 의 default 포트 변경 기본적으로 Spring Boot 애플리케이션은 임베디드 톰캣 서버의 포트 8080으로 동작한다. Spring Boot의 기본 임베디드 서버 포트를 다른 포트로 변경할 수 있는 몇 가지 방법에 대해서 기록한다. 포트 충돌 방지를 위해서 임의의 사용 가능한 포트를 사용하려면 server.port=0으로 설정한다. 방법 1) properties(. yml) 파일에서 기본 포트 변경 Spring Boot에서 기본적으로 참조하는 application.yml(.properties) 파일 설정으로 기본 포트를 변경할 수 있다. # application.properties server.port=9090 # application.yml server: port:9090 방법 2) 코드상에서 기본 포트 변경 코드상에서는 기.. 스프링부트 2023. 9. 16. Spring에서 Jasypt를 이용하여 설정 정보 암호화 하기 Spring의 application.yml(.properties)과 같은 설정 정보 파일에는 데이터 베이스 연결 정보나 API 키, 비밀번호와 같은 민감한 정보를 설정해야 하는 경우가 있다. 이러한 민감한 정보를 평문으로 설정하게 되면 간혹 정보가 노출되었을 때 심각한 문제를 초래 할 수 있다. Jasypt 라이브러리를 사용하여 어플리케이션의 설정 정보를 암호화하여 민감한 정보를 보호할 수 있다. 간단한 예제 코드와 함께 spring에서 Jasypt 라이브러리를 사용하는 방법에 대해서 기록한다. Jasypt for Spring boot Jasypt는 Spring boot 2.X 버전과 3.X 버전과 통합을 지원한다. 상세한 문서는 jasypt-spring-boot git을 참고하면 도움이 된다. 프로젝트.. 스프링부트 2023. 9. 9. Spring Boot GraalVM Native Image 빌드 하기 GraalVM 네이티브 이미지는 컴파일된 자바 애플리케이션을 미치 처리하여 생성할 수 있는 독립 실행형 실행 파일이다. 도커 이미지와 같은 이미지를 의미하는 것이 아니다. 네이티브 이미지는 일반적으로 메모리 사용 공간이 더 작고 JVM 이미지 보다 빠르게 시작할 수 있다는 장점이 있다. 컨테이너 이미지를 사용하여 배포하는 애플리케이션에 적합하며, 특히 서비스형 기능(FaaS) 플랫폼과 결합할 때 유용하다. GraalVM 네이티브 이미지는 완전한 플랫폼별 실행파일이다. 이번 포스팅에서는 Spring Boot 의 GraalVM 네이티브 이미지 빌드를 위해서 지원되는 사항에 대한 공식 문서를 정리하고자 한다. JVM 배포와 차이점 애플리케이션의 정적 분석은 메인 엔트리 포인트에서 빌드 시 수행된다. 네이티브 .. 스프링부트 2023. 9. 4. spring boot resource 파일 access spring boot 에서 resource 디렉토리에 있는 모든 파일은 빌드 시 application root 에 복사 됩니다. 이번 포스팅에서는 spring boot 에서 resource 파일을 access 하는 3가지 방법을 소개합니다. ResourceLoader ClassPathResource 생성자 @Value annotation 샘플 코드는 test 코드이며 test 디렉토리의 resource 에 있는 샘플 파일 경로는 아래 이미지와 같습니다. ResourceLoader Spring boot 에서 ResourceLoader 는 자동 주입됩니다. ResourceLoader를 통해서 resource 파일을 로딩 하는 경우에는 getResource() 메소드에 넘겨주는 파라미터에 prefix 를 붙여.. 스프링부트 2023. 8. 27. spring-boot-starter-parent 와 spring-boot-dependencies Spring Boot는 최소한의 구성 작업으로 프로덕션에 바로 사용할 수 있는 Spring 애플리케이션을 빌드하는 프로세스를 간소화하도록 설계되었다. 이를 위해 Spring Boot 기반 애플리케이션에 대한 기본 구성 및 종속성을 제공하는 특별한 상위 프로젝트인 spring-boot-starter-parent 가 만들어졌다. spring-boot-starter-parent 에 지정된 종속성을 통해서 기본적으로 제공되는 여러 종속성들을 간편하게 사용할 수 있다. spring-boot-starter-parent 관련 내용은 아래 링크에서 확인해 볼 수 있다. https://central.sonatype.com/artifact/org.springframework.boot/spring-boot-starter-p.. 스프링부트 2023. 8. 15. 이전 1 2 다음 💲 추천 글