Spring Rest Docs란?
Generaing Documentation Snippets
Generaing Documentation Snippets
문제 상황 API 개발 도중 @RequestBody 애노테이션을 사용해 객체 변환 도중 바인딩 실패 시 BindingResult에 에러가 담길 줄 알았지만, 400 에러가 나는 상황이 발생했습니다. @ModelAttribute나 @RequestParam의 경우 바인딩 실...
빈 스코프 빈을 생성할 때 별도의 스코프를 지정해주지 않으면 기본적으로 싱글톤으로 생성한다. 싱글톤 이외에도 스프링은 다양한 빈의 스코프 방식을 지원하는데 다음과 같다.
빈 생명주기 스프링 컨테이너가 관리해주는 빈은 다음과 같은 라이프사이클을 갖는다.
ApplicationContext를 스프링 컨테이너라 하는데, 이번에는 ApplicationContext의 구현체들과 ApplicationContext의 부모 interface인 BeanFactory에 대해 알아보려 한다.
SOLID - 객체 지향 설계의 5가지 원칙 SRP - 단일 책임 원칙(Single Responsibility Principle) 단일 책임 원칙은 “하나의 클래스는 하나의 책임만 가져야 한다”는 규칙이다. 그런데 “하나의 책임”이라는 것은 모모...
예외를 제대로 활용한다면 프로그램의 가독성, 신뢰성, 유지보수성이 높아지지만, 잘못 사용하면 반대의 효과만 나타난다.
9장 일반적인 프로그래밍 원칙
매개변수가 유효한지 검사하라.
모든 객체의 공통 메서드
2장 객체 생성과 파괴
이펙티브 자바의 규칙 대부분은 아주 핵심적인 기본 원칙 몇 개에서 파생된다.
Step Job을 구성하는 하나의 단계로서 실제 배치 처리를 정의하고 관련된 모든 정보를 가지고 있는 객체 입력과 처리 그리고 출력과 관련된 비즈니스 로직을 포함하는 모든 설정들을 담고 있다. 모든 Job은 하나 이상의 Step으로 구성된다.
Job Job은 배치 계층 구조에서 가장 상위에 있는 개념으로 하나의 Job은 하나의 배치작업을 의미한다. (ex: 일일 정산로그수집) 배치 Job은 최상위 인터페이스로 스프링 배치는 다양한 기본 구현체를 제공한다. Job은 하나 이상의 Step으로 구성해야 한다.
@EnableBatchProcessing @EnableBatchProcessing를 추가하면 스프링 배치가 작동하기 위한 4개의 설정 클래스를 실행시키며 스프링 배치의 초기화 과정 및 구성이 이루어진다.
배치작업이란? 스프링 배치에 대해 알아보기 전에 우선 배치가 무엇이고, 배치를 왜 사용하는 지 알아보도록 하겠습니다.
Authorities
SecurityContextHolder
스프링 시큐리티의 전체적인 아키텍처에서 각 필터의 역할과 인증 및 인가 흐름에 대해 알아보자.
스프링 시큐리티가 무엇인지 간략하게 알아보고 애플리케이션에 스프링 시큐리티의 기본 기능을 알아보자. 스프링 시큐리티란? 스프링 시큐리티 공식문서에 따르면…
공식문서를 바탕으로 정리했습니다.
우선 CI/CD란 개발 - 빌드 - 테스트 - 배포까지의 전 과정을 자동화하는 과정을 말한다.
트랜잭션은 데이터의 정합성을 보장하기 위한 기능이다.
인덱스란?
정규표현식이란?
자바는 JVM이 구성된 JRE가 제공되며, 그 안에 Garbage Colledction이 포함된다. GC로 인해 개발자는 프로그램 코드에서 직접 메모리 누수를 방지하기 위해 직접 사용하지 않는 객체의 메모리를 해제하지 않아도 된다. 그렇지만 GC의 기본적인 동작 방식을...
공식 문서를 토대로 작성했습니다. jwt.io
Flutter drift migration
대칭키와 비대칭키에 대해 알아보기 전에 암호화란 무엇이고, 어떤 방식으로 이뤄지는 지 알아보자.
HTTP란? HTTP는 Hyper Text Transfer Protocol의 약자로 서버/클라이언트 모델에서 데이터를 주고 받기 위한 규악이다. HTTP는 TCP/IP 위에서 동작한다. HTTP의 주요 특징으로는 Stateless, Connectionless가 있다.
도커 이전의 서버 관리 일반적인 애플리케이션을 구성하는 과정을 살펴보자.
새로운 맥북에서 “idea .” 명령어가 동작하지 않아 여러 글을 찾다가 해결해서 공유합니다.
정리하자면 Gradle은 빌드 자동화 도구로 높은 성능, JVM 기반, 다양한 IDE를 지원하는 특징을 가지고 있다. 또한 Gradle은 유연하게 작동하기 위해서 ‘무엇을 빌드할지, 어떻게 빌드할지’를 가정하지 않는다.