1. JavaDoc 문서화 개선
![](https://blog.kakaocdn.net/dn/caMzdk/btsIV5iOKDv/TlDjSDK9xrnuuIk3GzKoQk/img.png)
![](https://blog.kakaocdn.net/dn/bLJhSA/btsITUC6mKM/kHMN5bz9ZwT5ax5d3B7Oy0/img.png)
- 문서화 다듬기
![](https://blog.kakaocdn.net/dn/sCCUp/btsIV7OsrRT/NYx7Y9toSLFUy0fWPTmR1k/img.png)
1. 기존 Java 예외처리와 ResponseEntity
- 오류 발생시 status code 정확하게 보내기
![](https://blog.kakaocdn.net/dn/Z0uGL/btsITOCRNsb/UoUDc3QOXdj2CzW5a3HBZ1/img.png)
- 예외 발생 미처리시 500 발생
![](https://blog.kakaocdn.net/dn/bokakf/btsIV4YvEgb/OKH8bPCx9jLP01umRVBWl1/img.png)
- 적절한 예외 전파 적용이 핵심이다
![](https://blog.kakaocdn.net/dn/sdQVb/btsITk9ZGOL/tVTayqZoxpuaprxeeV7iXk/img.png)
- HTTP status code 응답 보내기
![](https://blog.kakaocdn.net/dn/bQq0Bo/btsIUzkMOAK/4arvH08eLiNILyDk8K1UK1/img.png)
2. Spring advice로 처리하기
![](https://blog.kakaocdn.net/dn/cm6dmZ/btsIS98Dv4p/gK5eVf4jKu1eVYYok0UjpK/img.png)
3. Spring AOP 살펴보기
![](https://blog.kakaocdn.net/dn/ctkLnZ/btsIVkgqs4v/vdmnyZH18R4vkLETZeqhXK/img.png)
- 횡단 관심사(=흩어진 관심사) 문제
![](https://blog.kakaocdn.net/dn/b4AnJz/btsIUltzPLI/c0C5JTXtlIhGUgZcj2bFc0/img.png)
- 공통적인 코드들을 모듈화
![](https://blog.kakaocdn.net/dn/cWhx2J/btsIUSEs4EF/ezKj5re63jEZFF7XXdJBS0/img.png)
![](https://blog.kakaocdn.net/dn/bjaWsH/btsIVduS1fn/1YFIekICKbA3Bqv3nwnmeK/img.png)
- AOP 철학이 적용된 기술
![](https://blog.kakaocdn.net/dn/bUv35I/btsIUftsV1k/kPPXNFXG1ef7oILeBMm1Wk/img.png)
1. SQL구문 해방과 ORM, JPA
- 기존 SQL 사용 구문의 불편한 점
![](https://blog.kakaocdn.net/dn/cgyAdg/btsISW2An9W/XYy9aNYj8yb56dEkqjqoVk/img.png)
- 왜 이런 문제가 발생할까?
![](https://blog.kakaocdn.net/dn/x4wXa/btsIUk9eHLe/Fe3ksLVdFmqdHUpn8ulAM0/img.png)
![](https://blog.kakaocdn.net/dn/dTFVne/btsIV8s1CKP/t05vN5yn6K8ikl3rS6WfuK/img.png)
- 어떻게 해결할까?
![](https://blog.kakaocdn.net/dn/evHEPK/btsITij3FRv/4gx90FYtwT2UFoW8XMpWi1/img.png)
![](https://blog.kakaocdn.net/dn/cgMe06/btsIUy7gPuU/ZjP8bgkvyHcIqVmWd9qDKk/img.png)
- ORM과 JPA
![](https://blog.kakaocdn.net/dn/cBysyz/btsIUvJwrWj/Uitl2W3m109IyxGwkcK8dk/img.png)
- JPA 내부 동작 원리
![](https://blog.kakaocdn.net/dn/SWnZU/btsIVduS1gk/RRdv5AQKUnUIpmnqxxytfk/img.png)
- JPA 내부 구성요소
![](https://blog.kakaocdn.net/dn/bxpGkH/btsIV710bTp/6EWqqseyryD7aUxpXvggxk/img.png)
- JPA 대표 구현체 Hibernate
![](https://blog.kakaocdn.net/dn/72r83/btsITgzNjd9/CKr5UedbI2N2u8NDMD4JTK/img.png)
- JPA 설정
![](https://blog.kakaocdn.net/dn/n7f2e/btsIUBwaEe4/JAkaSRvolmS4eIa8iEexLk/img.png)