본문 바로가기

spring boot8

[Spring Boot] 12 - 커스텀 로그 설정 Logback Spring Boot 012 - 커스텀 로그 설정 logback 스프링 프로파일 사용 4.6 Custom Log 설정 다양한 로깅 시스템은 classpath에 있는 적절한 라이브러리를 포함시켜 활성화시킬 수 있습니다. 루트 classpath 또는 logging.config 위치에 명시하여 적절한 설정을 커스터마이징 할 수 있습니다. org.springframework.boot.logging.LoggingSystem 에 원하는 시스템을 명시합니다. 그렇게 권장하진 않습니다. 로깅은 ApplicationContext 가 생성되기 전에 초기화됩니다. 따라서 @Configuration 파일의 @PropertySoruce 로부터 로깅을 제어할 수는 없습니다. 로깅 시스템을 제어할 수 있는 유일한 방법은 시스템 p.. 2020. 4. 1.
[Spring Boot] 11 - 프로파일, 로깅 설정 Spring Boot 011 - 프로파일, 기본 로깅 3. Profiles Spring 프로파일은 어플리케이션 설정의 일부를 분리하고, 특정 환경에서만 작동하게 만드는 방법을 제공합니다. @Component, @Configuration, @ConfigurationProperties 는 로드될 때 제한시키기 위해@Profile로 표시될 수 있습니다. @Configuration(proxyBeanMethods = false) @Profile("production") public class ProductionConfiguration { // ... } spring.profiles.active, Environment 속성을 이용해서 무슨 프로파일이 활성화되었는지 정할 수 있습니다. Command Line Argu.. 2020. 3. 31.
[Spring Boot] 9 - YAML 사용법 Spring Boot 009 - YAML 사용하기 2.7 속성 대신 YAML 사용하기 YAML(야믈, 와이엠엘(.yml))은 JSON의 상위집합(superset)으로, 계층적 뼈대 구조를 설정하는데 편리한 형식(format)입니다. SpringApplication은 classpath에 있는 SnakeYAML library를 가지고 있을 때, 속성(properties)의 대안으로 자동적으로 YAML을 지원합니다. spring-boot-starter는 가장 기본적인 라이브러리고, 이것이 있으면 SnakeYAML 은 자동으로 제공됩니다. 2.7.1 Loading YAML YAML 리스트는 [index] 역참조형으로 표현될 수 있습니다. my: servers: - dev.example.com - another... 2020. 3. 29.
[Spring Boot] 8 외부 설정(Externalized Configuration) Spring Boot 008 - 프로퍼티와 각종 외부 설정의 우선 순위 2. 외부 설정(Externalized Configuration) Spring Boot는 현재 설정을 밖으로 내보낼 수 있어서, 이를 통해 다른 환경에서 같은 설정을 구현할 수 있습니다. properties files YAML files 환경 변수 명령줄 아규먼트 Spring Boot는 PropertySource 순서를 따르며 설정 파일 우선순위를 정할 수 있습니다. devtools 이용시$HOME/.config/spring-boot 폴더 안에서 Devtools 전역 설정 속성 @TestPropertySource @SpringBootText 명령줄 아규먼트 SPRING_APPLIATION_JSON 으로부터의 속성 ServiceConf.. 2020. 3. 28.
[Spring Boot] 7 SpringApplication 커스터마이징 Spring Boot 007 - SpringApplication 커스터마이징, Admin 1.7 웹 환경 SpringApplication 은 사용자 대신 ApplicationContext의 적절한 타입을 생성합니다. WebApplicationType은 다음 룰로 정해집니다. Spring MVC가 존재하면 AnnotationConfigServletWebServerApplicationContext를 사용 Spring MVC가 존재하지 않고, Spring WebFlux가 존재하면 AnnotationConfigReactiveWebServerApplicationContext 를 사용 그렇지 않으면, AnnotationConfigApplicationContext를 사용합니다. 예를 들어 Reactive 타입의 웹 .. 2020. 3. 26.
[Spring Boot] 3 spring-boot-start 이 글은 스프링 공식문서를 보며 강의해주신 백기선 유투버님의 강의를 듣고 요약한 글입니다. 1. Starters 의존성들이 충돌나지 않도록 도와줍니다. spring-boot-starter-data-jpa 등을 바로 연동해서 쓸 수 있습니다. 공식적인 starter는 spring-boot-starter-* 규칙을 따릅니다. 이 이름 구조는 starter를 찾기 위함입니다. 커스텀 Starter 만들기 를 알아봅시다. 써드파티(third party) 스타터는 공식 artifacts 이름인 spring-boot로 시작하면 안됩니다. thirdpartyproject-spring-boot-starter 이런 식으로 이름을 짓는 것이 좋습니다. Creating Your Own Starter autoconfigure.. 2020. 3. 23.
[Spring Boot] 2 - Executable JAR, 스프링 부트 실행 Spring Boot 002 Executable Jar 생성 필요한 의존성을 모두 가진(self-contained), 실행가능한 jar file("fat jars" 라고도 불림)을 생성합니다. jar 파일 : 여러개의 자바 클래스 파일과, 클래스들이 이용하는 관련 리소스 및 메타데이터를 하나의 파일로 모아서 자바 플랫폼에 응용 소프트웨어나 라이브러리를 배포하기 위한 소프트웨어 패키지 포맷의 파일 war 파일 : WebApplication Archive, 즉 웹 어플리케이션 저장소이며 웹 어플리케이션을 압축해 저장해 놓은 파일입니다. 개발한 웹어플리케이션 프로젝트가 WAS에서 돌아갈 수 있는 구조를 담고 있으며 JSP 및 서블릿 빈클래스 등의 소스가 컴파일 되어 저장되며 기타 이미지 및 자원들이 포함되어 .. 2020. 3. 22.
[Spring Boot] 1 스프링부트, 설치(IntelliJ, Maven) Spring Boot 본 글은 Spring Boot 공식 문서 를 참고하였습니다. Introduction Spring 은 처음 세팅이 상당히 고단합니다. 스프링 부트도 아주 쉬운 것은 아니지만, 그래도 java -jar로 쉽게 Spring configuration을 설정할 수 있고, 빨리 프로젝트를 시작할 수 있습니다. 이 글을 다 읽으시면, Spring boot를 통해 Hello World 가 보여지는 페이지를 서버에 띄우실 수 있는데, 방법이 참 간단합니다. 스프링 부트의 목표: 모든 Spring 개발에 있어서 빠르고, 범용적으로 적용가능한 시작 환경을 제공 코드 생성 없이, XML 설정 필요없이 작동하기 용이하게 함 System 필요사항 1) Java Spring Boot 2.2.4.RELEASE .. 2020. 3. 22.
728x90