위와 같이 DB테이블생성
VO > 자바빈(JavaBean) : 파라미터가 없는 디폴트 생성자를 갖고 있어야한다. 툴이나 프레임워크에서 리플렉션을 이용해 오브젝트를 생성하는데 필요하기 때문
1. 리플렉션 : 객체를 통해 클래스의 정보를 분석해내는 프로그램 기법(class.forName을 통해 메모리에 로딩된 객체의 메서드 생성자 등을 알아내서 사용가능)
2. 프레임워크 : 흐름을 주도한다. 프레임워크 위에 개발한 클래스를 등록하고 프레임워크가 흐름을 주도함
3. Property : id, name, password(자바빈의 속성)
프로퍼티는 set/get 메서드를 이용해 수정 또는 조회 가능하다.
Dao/connector
l 객체지향의 세계에서는 모든 것이 변함
1. DB접속용 암호 변경을 한다면 모든 클래스의 메서드들을 모두 변경해주어야함.
Ø 관심사의 분리가 필요함 : 커넥션 맺음/SQL/close
UserDao를 고객에게 판매한다고 생각해보자 소스를 주지않고 class 파일만 주고 싶다. 비싼 로직이므로 > 002 상속을 통한 확장편
메인
l 메소드 추출기법 > 리팩토링
UserDao를 위와같이 독립적인 메서드를 만들어주면 메서드 하나만 수정하면됨
'스프링' 카테고리의 다른 글
[java] IOC_오브젝트팩토리 (0) | 2020.10.10 |
---|---|
[java] 추상화 인터페이스(클래스분리 리팩토링) (0) | 2020.10.06 |
[java] 클래스분리(상속을 통한 확장 리팩토링) (0) | 2020.10.06 |
[static] 자바 static 정리 (0) | 2020.10.02 |
[자바 상속] extends 확장 (0) | 2020.10.02 |