스프링
이 글은 김영한 님의 Infrean 강의를 학습한 내용을 정리하여 작성합니다. AOP란 Aspect-Oriented Programming 의 약자로 관점 지향 프로그래밍이라 한다. 흩어진 Aspect들을 모아 모듈화 해주고 관심사 분리라는 개념을 가지며 객체지향 프로그래밍을 통해 더욱 객체지향적으로 만들어주는 기술이다. AOP는 여러 곳에서 쓰이는 공통 기능을 모듈화하고, 쓰이는 곳에 필요할 때 연결함으로써, 유지 보수 혹은 재사용에 용이하도록 프로그래밍 한다. AOP가 필요한 상황 모든 메소드의 호출 시간을 측정하고 싶다면? 공통 관심 사항 (cross-cutting concern) vs. 핵심 관심 사항 (core concern) 회원 가입 시간, 회원 조회 시간을 측정하고 싶다면? 예를 들어 Mem..
이 글은 김영한 님의 Infrean 강의를 학습한 내용을 정리하여 작성합니다. 스프링 JdbcTemplate 순수 Jdbc와 동일한 환경설정을 하면 된다. 스프링 JdbcTemplate과 MyBatis 같은 라이브러리는 JDBC API에서 본 반복 코드를 대부분 제거해준다. 하지만 SQL은 직접 작성해야 한다. 스프링 JdbcTemplate 회원 리포지토리 MemberRepository interface를 확장해 JdbcTemplateMemberRepository 클래스를 구현한다. JdbcTemplate을 사용하기 위해서는 위 코드처럼 클래스 내부에 JdbcTemplate을 선언해준다. 이때, JdbcTemplate은 이전 다른 코드들처럼 스프링으로부터 주입(Injection) 받을 수 없다. 따라서,..