restapi
-
Java JSON 처리 실전 시리즈 7화 – JSON 응답 필드 제어 전략: null 제외, 조건부 출력, 필터링 방법기술과 산업/언어 및 프레임워크 2025. 5. 19. 10:52
Spring Boot + Jackson 환경에서 JSON 응답 필드를 제어하는 방법을 정리합니다. @JsonInclude, @JsonView, @JsonFilter를 활용한 null 제거, 조건부 노출, 민감 정보 제외 전략을 실전 예제 중심으로 소개합니다.REST API를 설계하다 보면 다음과 같은 고민이 자주 발생합니다:값이 null인 필드는 응답에서 빼고 싶다일부 필드는 관리자만 볼 수 있어야 한다한 객체를 다양한 응답 구조로 재사용하고 싶다Jackson은 이런 문제를 해결하기 위한 어노테이션과 설정 옵션을 제공합니다. 이번 글에서는 API 응답을 더 가볍고 안전하게 만들 수 있는 필드 제어 전략을 정리합니다.1. @JsonInclude – null 또는 빈 값 제외가장 기본이 되는 필드 제어 전략..
-
Java JSON 처리 실전 시리즈 6화 – Spring MVC에서 JSON 요청과 응답 처리 흐름: Jackson과 HttpMessageConverter 작동 원리기술과 산업/언어 및 프레임워크 2025. 5. 19. 10:51
Spring MVC에서 JSON 요청을 수신하고 JSON 응답을 반환하는 내부 흐름을 @RequestBody, @ResponseBody, HttpMessageConverter, Jackson 중심으로 구조적으로 정리합니다.Spring Boot 기반 REST API 개발을 하다 보면 다음과 같은 작업이 아주 자연스럽게 이루어집니다:@PostMapping("/user")public UserResponse register(@RequestBody UserRequest request) { return userService.create(request);}이 한 줄에는 다양한 내부 처리 흐름이 숨어 있습니다. 이 글에서는 Spring MVC가 JSON 데이터를 Jackson을 통해 어떻게 처리하는지 구조적으로 ..
-
JHipster 시리즈 6화 - JHipster 프로젝트 구조와 코드 흐름 분석하기기술과 산업/언어 및 프레임워크 2025. 5. 15. 19:35
JHipster로 생성된 Spring Boot + React 기반 프로젝트의 전체 디렉토리 구조, 주요 모듈, 코드 흐름을 실무 수준에서 상세하게 해부합니다. 실전 개발 시 반드시 알아야 할 핵심 구조 가이드. 왜 프로젝트 구조를 이해해야 하는가? JHipster는 단순 템플릿이 아닙니다.자동으로 구성되는 백엔드 + 프론트엔드 + DevOps + 보안을 포함하는 완성형 프로젝트입니다. 하지만 규모가 커지고 팀이 늘어나면 구조를 이해하고, 커스터마이징할 수 있는 역량이 핵심 경쟁력이 됩니다. 이번 글에서는 실무 관점에서 JHipster 프로젝트의 전체 구조와 코드 흐름을 상세하게 분석합니다. JHipster 전체 구조 (Monolith 기준)├── src/│ ├── main/│ │ ├── j..
-
NestJS 마스터 시리즈 6화. DTO와 Validation – 데이터 무결성과 API 품질의 시작기술과 산업/언어 및 프레임워크 2025. 4. 30. 12:43
"API는 설계의 언어다. DTO는 그 언어의 문법이다"NestJS에서 DTO와 유효성 검사를 어떻게 설계하고 적용할지, class-validator, Pipes, Transform 전략 등 실전 API 개발에서 꼭 필요한 개념을 설명합니다.DTO란 무엇인가 – 단순한 포맷이 아니다DTO(Data Transfer Object)는 클라이언트로부터 받거나 클라이언트로 전달할 데이터 구조의 명세서다.NestJS는 TypeScript의 클래스 기반 구조를 활용해 DTO를 정의하며, 이를 통해 다음을 보장할 수 있다:입력값의 명확한 스펙 정의자동 유효성 검사 및 에러 응답Swagger 등 문서화 도구와의 자연스러운 연계"DTO는 단순히 타입을 정하는 것이 아니라, API의 규칙과 문화를 정하는 것이다."실전 예제..
-
NestJS 마스터 시리즈 4화. 컨트롤러와 라우팅 – REST API를 구조화하는 방법기술과 산업/언어 및 프레임워크 2025. 4. 26. 20:30
“그냥 GET, POST만 쓰면 된다고? 실무는 다릅니다” NestJS에서 컨트롤러와 라우팅의 구조를 실전 예제로 설명합니다. HTTP 요청 처리, REST API 설계, 데코레이터 기반 라우팅, 그리고 컨트롤러 분리 전략까지 실무 중심으로 정리합니다. 🚪 컨트롤러는 API 입구다 NestJS에서 @Controller()는 클라이언트의 HTTP 요청을 받아들이는 입구 역할을 합니다.Express의 라우터 개념과 유사하지만, 데코레이터 기반으로 더 구조화된 형태를 가집니다. “라우팅의 혼란은 결국 컨트롤러 설계의 실패에서 시작됩니다.” 🧱 기본 구조 – 컨트롤러는 이렇게 생겼다import { Controller, Get, Post, Body, Param } from '@nestjs/common';i..
-
Spring Boot 시리즈 2편 – REST API 설계와 Controller 작성 가이드기술과 산업/언어 및 프레임워크 2025. 4. 15. 20:00
Spring Boot에서 REST API를 어떻게 설계하고 컨트롤러를 구성할 수 있는지 실전 예제와 함께 설명합니다. 계층 구조, JSON 응답, REST 컨벤션까지 정리했습니다.Spring Boot 시리즈 2편 – REST API 설계와 Controller 작성 가이드Spring Boot를 활용한 웹 애플리케이션 개발의 핵심은 RESTful API 설계입니다.이번 편에서는 실무에서 가장 많이 사용하는 REST API 구조 설계 패턴, 컨트롤러 구현 방식, 그리고 DTO 사용 전략까지 상세히 다루어 보겠습니다.📌 REST API란?REST(Representational State Transfer)는 HTTP 기반의 자원 중심 아키텍처 스타일입니다.Spring Boot에서는 @RestController를..