2008-08-23 13 views
1

DAO-DVO 디자인을 구현하는 두 가지 방법을 보았습니다.Java EE-DAO DVO

1) DVO 객체와 DAO를이 공장의 DAO를 즉 사용하여 인스턴스화있는 것이 있습니다 또한 2) DVOs 다시있는 객체하지만이 경우, DAO를이 작업을 수행 할 수 DVOs을 받아 정적 메소드를 포함하는 클래스는 객체.

어느 쪽이 더 좋고 확장 성이 좋을지 궁금합니다.

답변

0

물리적으로 실제로 계층화되지 않은 한 많은 레이어를 사용하지 말 것을 강력히 권장합니다. 예를 들어 GUI를 업데이트하기 위해 분리 된 객체를 보낼 필요가있는 리치 클라이언트 (rich client) 같은 것이 있다면 그렇지 않으면 통증의 세계입니다.

1

스프링 프레임 워크를 사용해보십시오. DAO는 Dependency Injection을 통해 초기화되며 일반 Java 객체입니다.

그런 다음 DAO의 메소드는 응용 프로그램의 모든 계층에서 사용되는 도메인 객체 만 사용해야합니다.

0

DAO Factory를 다운로드하여 데이터베이스 연결을 만드는 방법은 무엇입니까?

1

테스트 가능성과 관련하여 나는 두 번째 접근법에 반대 할 것을 권합니다. 정적 메소드는 모의 객체 등으로 공동 작업자를 오버라이드하여 클래스의 동작을 조정할 수 없도록합니다. Miško Hevery가 말하듯이 : "Static Methods are Death to Testability".

관련 문제