Java 객체를 개발자가 생성하여 직접 관리하는 것이 아닌 Spring Container에 객체 관리를 맡기는 제어 권한이 넘어감을 의미한다. 따라서 이것을 제어 역전 현상이라고 부른다. 그리고 이 container에 의해 관리되는 객체들은 Bean이라고 불린다.그렇다
Aspect Oriented Programming의 약자로 관점 지향 프로그래밍이라고 한다. 어떤 기능을 구현할 때 주요 핵심 기능 그 외에 추가적으로 부가적인 기능이 있기 마련이다.여기서 부가적인 기능이라고 하면 비지니스 기능을 구현 시 필요한 기타 작업(로깅, 트랜
Java Bean 은 데이터를 표현하는 것을 목적으로 하는 자바 클래스이다. 특별한 것은 없고 Java Bean 규약에 맞춰서 만든 클래스를 뜻한다.Java Bean 규약은 다음과 같다.기본 생성자가 존재해야 한다.모든 멤버 변수의 접근제어 지시자는 private이다.
간단한 REST API 컨트롤러 클래스이다.@PointCut 어노테이션에 지정된 파일(위 RestApiController Class를 의미)의 모든 메서드의 실행 전, 후로 호출된 메서드의 정보와 인풋, 아웃풋 데이터를 로깅 하는 예제이다.AOP를 적용할 첫 번째 포인
데이터에 대한 유효성 검사라고 할 수 있다. 물론 클라이언트 레이어에서 적절한 유효성 검사가 이루어질 수도 있지만 서버가 받은 데이터는 대부분 데이터베이스에 저장되기 때문에 더욱더 데이터 무결성을 지킬 필요가 있다. 따라서 서버 또한 유효성 검사를 할 필요가 있다.또한
말 그대로 예외 처리라고 한다. 보통 유효성 검사에서 많은 예외 처리를 하게 되고 비즈니스 로직을 구현하면서도 하게 된다. 예를 들어 클라이언트로부터 회원 가입을 하기 위해 유저의 나이 속성을 받아와야 한다고 생각해 보자. 나이의 최솟값은 1, 최댓값은 99라고 해보자
Spring Boot로 입문하다 보면 스프링으로 만들어진 웹 애플리케이션의 내부적인 동작이나 원리에 대해 궁금한 것이 한두 가지가 아니다. 나 또한 그런 궁금증으로 이 글을 쓰게 되었다. 오늘은 Dispatcher Servlet 전, 후로 동작하는 Filter와 Int
클라이언트로부터 받은 Request url, body와 서버의 Response status-code, body를 로깅 하는 간단한 예제이다. Filter 인터페이스를 구현하면 되는데 구현할 수 있는 메서드는 크게 세 가지가 있다.init 메서드는 필터 객체를 초기화하고