BackEnd/Spring Boot
-
다국어 처리(Internationalization)BackEnd/Spring Boot 2022. 4. 8. 07:55
Overview 해당 글에서는 하나의 출력 값을 여러가지 언어로 제공하는 다국어 처리를 하겠습니다. 우선 특정 컨트롤러가 아닌 프로젝트 전반적으로 적용시키기 위해 @Bean으로 등록하겠습니다. @Bean은 스프링 부트가 초기화 될 때 메모리에 올려두게 됩니다. 세션을 통해 Locale 값을 얻어오는 localeResolver 메서드를 정의합니다. (기본: 한국어) package com.spring.springboot; import java.util.Locale; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.spring..
-
ValidationBackEnd/Spring Boot 2022. 4. 6. 08:20
Overview 해당 글에서는 유효성 검사를 위해 Validation API를 사용해 보겠습니다. 의존성 추가 // Gradle implementation 'org.springframework.boot:spring-boot-starter-validation' // Maven org.springframework.boot spring-boot-starter-validation 유효성 검사를 할 필드에 애노테이션을 붙여줍니다. goodsName은 최소 5글자, 빈 문자열은 허용하지 않는다는 유효성을 추가합니다. 유효성 검사 실패 시 등록한 message로 예외를 던집니다. package com.spring.springboot.domain; import javax.validation.constraints.Not..
-
Exception HandlingBackEnd/Spring Boot 2022. 4. 5. 22:00
Overview 해당 글에서는 Spring AOP를 이용하여 Exception Handling 처리를 하겠습니다. GoodsController Exception Handling 처리를 위해 상품코드: 1로 호출 시에만 정상적으로 상품정보를 반환하고 그 외에는 Exception이 발생한다고 가정하겠습니다. (상품코드: 10000 호출 시 사용자 정의 Exception인 GoodsNotFoundException 발생, 그 외 최상위 Exception인 Exception 발생) package com.spring.springboot; import com.spring.springboot.domain.Goods; import com.spring.springboot.exception.GoodsNotFoundExcep..
-
Spring Boot 설정 및 동작 원리BackEnd/Spring Boot 2022. 4. 5. 21:30
Overview 해당 글에서는 Spring Boot의 설정과 동작 원리에 대해 알아보고 클라이언트의 요청을 받아 결과를 반환하는 REST Controller를 구현하겠습니다. 프로젝트 구조 Spring Boot 설정 Spring Boot 설정은 resources 폴더 하위의 application.properties(설정이름=값) 또는 application.yml(설정이름: 값) 파일을 사용합니다. Spring Boot의 기본 설정 파일은 application.properties이나 application.yml 파일을 주로 사용합니다. application.yml 파일은 계층 구조로 표현할 수 있고 prefix의 중복 제거가 가능해 가독성이 좋습니다. application.properties 파일을 app..
-
Spring BootBackEnd/Spring Boot 2022. 4. 2. 07:42
스프링 부트는 독립 실행 가능한 애플리케이션을 개발하기 위한 플랫폼입니다. 간단하게 개발 실행할 수 있으며, 상용화 가능한 수준의 스프링 기반의 애플리케이션을 만들 수 있다는 장점을 가지고 있습니다. 기본적으로 스프링 프레임워크를 이용한 스프링 애플리케이션 개발에는 많은 설정 작업이 필요하지만, 스프링 부트를 이용하면 최소한의 설정만으로 스프링 플랫폼과 서드 파티(third-party) 라이브러리를 모두 사용할 수 있습니다. 특정 버전에 대한 정보나 업그레이드에 대한 지침은 the project release notes section 참고하시면 됩니다. Features 독립형 스프링 애플리케이션을 생성할 수 있습니다. Tomcat, Jetty 또는 Undertow 직접 내장하고 있습니다. (WAR 파일을..
-
SwaggerBackEnd/Spring Boot 2021. 7. 23. 09:26
1. Swagger ? > REST API를 설계, 구축, 문서화 및 사용하는데 도움이 될 수 있는 Open API Specification 기반 오픈 소스 도구 모음 > Springboot에 Swagger 적용 시 컨트롤러에 명시된 어노테이션을 기반으로 API문서를 자동으로 만들어준다. 2. Swagger 설정 1) pom.xml io.springfox springfox-swagger2 2.9.2 io.springfox springfox-swagger-ui 2.9.2 2) SwaggerConfig.java > Springfox 참조 문서 package com.spring.swagger.config; import org.springframework.context.annotation.Bean; import..
-
LombokBackEnd/Spring Boot 2021. 7. 9. 12:00
Lombok이란 getter, setter, toString 등의 반복 메서드 작성 코드를 줄여주는 코드 다이어트 라이브러리입니다. @어노테이션 기반으로 반복 소스코드를 컴파일 과정에서 생성해주는 방식으로 동작하기에 .class 파일에는 코드가 생성되어 있습니다. Lombok을 Spring Boot에서 사용하기 위해서는 depency를 추가해주면 됩니다. org.projectlombok lombok true Lombok Installation (IntelliJ) 1) Plugin > Setting > Plugins > Marketplace > Lombok [Install] > [Restart IDE] 2) Enable annotation processing check > Setting > Build, E..