순수 JDBC

객체 지향의 가장 큰 장점 : 다형성(인터페이스 구현체를 바꾸면서 기존 코드 변경 없이 바꿀 수 있다!)

웹 서버와 DB를 연결해서 데이터를 저장해본다!

자바는 기본적으로 DB랑 붙으려면 JDBC가 꼭 있어야한다!

회원을 저장하는 역할은 MemberRepository가 하지만, memory에 할지 JDBC에 할지는 다르게 구현 가능하다! (implements MemberRepository에 커서를 두고 option enter 누르면 메서드들 오버라이드 자동완성된다!)

MemberService의 의존관계와 MemberRepository 인터페이스

이처럼 스프링의 DI를 사용하면 기존코드를 전혀 손대지 않고, 설정을 바꾸는 것만으로 구현 클래스를 변경할 수 있다!

이것을 개방 폐쇄 원칙(OCP;Open-Closed Principle) 이라고 한다. 확장에는 열려있고, 수정에는 닫혀있다.

다형성의 개념을 잘 활용하면 애플리케이션 수정없이 가능하다! 객체지향의 가장 큰 장점은 이와 같이 인터페이스에서 구현체를 바꾸면서도 기존 코드 변경 없이 바꿀 수 있는 것이다.

JdbcMemberRepository.java 클래스

변경된 Assembly(SpringConfig.java) 새로 구현한 JdbcMemberRepository를 빈에 등록해준다!

Last updated

Was this helpful?