[인프런] 김영한님의 실전 스프링부트와 JPA 활용 2편을 수강하면서 공부한 내용을 바탕으로 작성하였습니다. API 개발 중 요청 값과 응답 값을 DTO로 주고받는 방법과 지연 로딩 최적화에 대해 작성한 글입니다. [스프링부트 API 개발] API 개발 1 - DTO로 데이터 전달하기, 지연 로딩, 컬렉션 최적화 [인프런] 김영한님의 실전 스프링부트와 JPA 활용 2편을 수강하면서 공부한 내용을 바탕으로 작성하였습니다. 스프링부트를 통해 API를 개발할 때 요청(Request)하는 값과 반환(Response) 받는 값을 엔 kylo8.tistory.com [Spring Framework/JPA] - [스프링부트 API 개발] API 개발 1 - DTO로 데이터 전달하기, 지연 로딩, 컬렉션 최적화 컬렉션..
Optional 클래스란 Optional 클래스는 null을 처리하는 방법을 개선하기 위해 도입된 클래스로, 값이 있을 수도 있고 없을 수도 있는 상황을 처리하는 데 사용됩니다. Optional 객체는 값을 감싸는 래퍼(wrapper) 역할을 하며, 값이 존재하지 않는 경우에 대한 처리를 표현적으로 표현하는데 유용합니다. orElseThrow() orElseThrow() 메서드는 자바 8부터 도입된 Optional 클래스의 메서드 중 하나입니다. 스프링 애플리케이션에서 자주 사용되는 메서드 중 하나입니다. orElseThrow() 메서드는 Optional 객체에서 값을 꺼내오는 메서드로, 값이 존재하는 경우에는 해당 값을 반환하고, 값이 없는 경우에는 지정된 예외를 발생시킵니다. 이를 통해 Optiona..
Spring Security란 무엇인가? : 스프링 프레임워크 기반의 보안(인증과 권한 부여)을 다루기 위한 보안 프레임워크입니다. 스프링 시큐리티는 웹 애플리케이션, Restful 서비스, 메서드 수준의 보안까지 다양한 보안 요구사항을 지원하며, 많은 기능과 확장성을 제공하여 안전하고 효과적인 애플리케이션 보안을 구현하는 데 사용합니다. Spring Security의 주요 기능과 개념 1. 인증(Authentication) : 사용자의 신원을 확인하는 과정으로, 스프링 시큐리티는 다양한 인증 방식을 지원합니다. 기본적으로 form 기반의 로그인, HTTP 기본 인증, Remember Me 인증, OAuth, LDAP 등 다양한 인증 프로토콜을 지원합니다. 2. 권한 부여(Authorization) : ..
JSON이란 무엇인가? : JSON은 JavaScript Object Notation 철자로, 데이터 교환 형식을 의미합니다. 사람이 읽고 쓰기에 용이하며, 기계가 파싱하고 생성하기도 간단한 형식입니다. 주로 웹 애플리케이션에서 데이터를 교환하고 전송하는 데 사용됩니다. JSON은 자바스크립트의 객체 표기법을 기반으로 하며, 다양한 프로그래밍 언어에서 지원됩니다. JSON을 통해 우리는 서로 다른 프로그래밍 언어로 개발하고 있어도 빠르고 간편하게 데이터를 주고받을 수 있습니다. JSON의 특징: 1. 간결하고 가독성이 좋음: JSON은 텍스트 기반 형식이므로 사람이 읽고 쓰기가 쉽습니다. 중첩된 데이터 구조를 사용하여 복잡한 데이터를 표현할 수 있으며, 인덴팅을 사용하여 계층 구조를 시각적으로 파악할 수..