스프링 부트
-
HAL BrowserBackEnd/Spring Boot 2022. 5. 25. 19:24
Overview 해당 글에서는 API 응답에 부가적인 정보를 제공할 수 있는 HAL Browser 기능에 대해 알아보겠습니다. HAL Browser는 Hypertext Application Language의 약자로 API 리소스 간 일관되고 쉬운 하이퍼링크 방법을 제공하는 간단한 형식입니다. HAL Model Resources 관련 URI에 대한 링크 내장된 리소스 상태 Links 대상 URI 링크에 대한 관계 또는 참조 감가상각, 콘텐츠 협상 등에 도움이 되는 몇 가지 기타 선택적 속성 Dependency org.springframework.data spring-data-rest-hal-explorer 의존성을 추가하고 서버를 기동한 후 http://localhost:8088/ 접속하면 아래와 같은 ..
-
HATEOASBackEnd/Spring Boot 2022. 5. 20. 09:10
Overview 해당 글에서는 Level 3 REST API 구현을 위한 HATEOAS(Hypermedia As the Engine Of Application State) 기능에 대해 살펴보겠습니다. HATEOAS란 REST API를 사용하는 클라이언트가 서버와 동적인 상호작용이 가능하도록 하는 것을 의미합니다. 즉, 현재 리소스와 연관된 자원 상태 정보를 제공하는 것을 의미합니다. 예를 들어, 계좌 조회 시 아래와 같이 예치금, 출금, 이체 또는 요청 닫기 등의 후속 링크를 포함하여 응답합니다. HTTP/1.1 200 OK { "account": { "account_number": 12345, "balance": { "currency": "usd", "value": 100.00 }, "links": {..
-
버전 관리(Versioning)BackEnd/Spring Boot 2022. 4. 26. 08:35
Overview 해당 글에서는 REST API 버전 관리 방법에 대해 알아보겠습니다. URI Versioning 모든 URI에 공통적으로 적용되는 "/goods"의 경우 @RequestMapping 애노테이션을 사용하여 설정합니다. @RestController @RequestMapping("/goods") public class GoodsController { @GetMapping(path = "/v1/{goodsCode}") // endpoint public Goods findGoodsV1(@PathVariable int goodsCode) throws Exception { /* ... 생략 ... */ } @GetMapping(path = "/v2/{goodsCode}") // endpoint pub..
-
@JsonIgnoreBackEnd/Spring Boot 2022. 4. 25. 07:38
Overview 해당 글에서는 @JsonIgnore 애노테이션을 사용하여 응답 데이터를 Filtering 하겠습니다. 기존 응답 데이터는 아래와 같습니다. // 20220425073134 // http://localhost:8088/goods/1 { "goodsCode": 1, "goodsName": "1번 상품입니다." } @JsonIgnore 애노테이션을 사용하면 특정 데이터는 응답 데이터에서 제외시킬 수 있습니다. package com.spring.springboot.domain; import com.fasterxml.jackson.annotation.JsonIgnore; import javax.validation.constraints.NotEmpty; import javax.validation.c..
-
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 파일을..