2012-01-28 3 views
0

내가 틀렸다면 여전히 조언을 듣고 있습니다.Spring-Dao는 Spring-mvc와는 다른가요?

나는 Spring Dao와 Spring MVC에 관해 하나의 질문이있다. mvc - model, view, controller를 알고 있습니다. 우리는 DAO를 MVC 아키텍처의 일부로 말할 수 있습니다. 그러나 Spring DAO가 그 자체로 유명한 이유는 무엇입니까?

왜 Spring-DAO는 hibernet 및 JSF와 같은 다른 구조와의 경계에 유용합니까?

답변

4

MVC와 DAO는 서로 다른 두 응용 프로그램 계층 (UI 계층과 데이터 액세스 계층)에서 서로 다른 두 가지 문제를 해결하는 두 가지 패턴입니다.

왜 Spring-DAO가 그 자체로 유명합니까?

UI가 없지만 많은 데이터 액세스가 포함 된 배치 응용 프로그램을 고려해보십시오. 여기에 봄의 DAO 지원은 크게 간소화 등 트랜잭션 지원을 상용구 코드를 돌보는하여 데이터 액세스 계층을 코딩 단순화 할 수 있습니다 다음과 같이 Spring Framework documentation 봄 DAO의 목적을 설명

2

:

데이터 액세스 개체 (DAO) 지원은 JDBC, Hibernate, JPA 또는 JDO와 같은 데이터 액세스 기술을 일관된 방식으로 사용하기 쉽도록하기위한 것입니다. 이를 통해 전술 한 퍼시스턴스 기술을 상당히 쉽게 전환 할 수 있으며 각 기술에 특정한 예외를 포착하는 것에 대해 걱정할 필요없이 코딩 할 수 있습니다.

다음은 Spring DAO의 개요와 Spring DAO와 Hibernate 사이의 관계에 대한 질문의 일부를 다룹니다.

한편, Spring MVC와 JSF는 (대부분) 웹 페이지와 웹 사이트 구현에 관한 것이다. 그들은 Spring DAO, JDBC, Hibernate, JPA, JDO 등과 직각을 이룬다. 즉, 그들은 다른 일을합니다.

우리는 MVC 아키텍처

이 올바르지의 일환으로 DAO를 말할 수있다. Spring DAO 과 함께 사용할 수 있지만 Spring MVC 또는 "MVC 아키텍처"의 일부는 아닙니다.

0

봄 DAO 대 봄 Mvc은 다른 용도로 사용하기에는 완전히 다른 기술입니다. Spring MVC의 내부에서 Spring DAO를 설정할 수는 있지만 Spring MVC의 일부는 아니다. Spring DAO는 JPA, Hibernate와 같은 데이터 지속 기술이다. JPA를 사용하면 JPQL을 데이터베이스 조작에 사용해야하기 때문에 Spring DAO는 JPA보다 더 가볍고 더 효율적입니다. Hibernate를 사용하면 HQL을 사용해야합니다. JPQL 또는 HQL을 SQL로 변환하기 위해 추가 작업이 필요하지만이 프로세스는 Spring DAO보다 효율적입니다. Spring DAO를 이용하여 순수한 SQL 문을 작성하고 데이터베이스 내부에서 직접 수행 할 수있다.

스프링 MVC는 웹 기반 애플리케이션 디자인 패턴이다. 모델, 언급 한대로 컨트롤러를 봅니다. 스프링 MVC는 MVC 프레임 작업 자바 지원뿐만 아니라 지원합니다. 또한 MVC 패턴을 기반으로합니다. 그러나 구현 방법은 신중하지 않습니다.