Maven 종속성 spring-web 대 spring-webmvc


100

다음 종속성의 차이점은 무엇입니까?

<dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-webmvc</artifactId>
    <version>3.1.2.RELEASE</version>
</dependency>

vs

<dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-web</artifactId>
    <version>3.1.2.RELEASE</version>
</dependency>

spring-webmvc혼자 포함하면 spring-web암시 적으로 추가됩니다.

우리는 언제 spring-web혼자 사용해야 합니까?

답변:


134

spring-web 편리한 서블릿 필터, Spring HTTP Invoker, 다른 웹 프레임 워크 및 HTTP 기술 (예 : Hessian, Burlap)과 통합하기위한 인프라를 포함한 핵심 HTTP 통합을 제공합니다.

spring-webmvcSpring MVC의 구현입니다. spring-webmvc 의존spring-web따라서는 이적으로 추가합니다 포함 spring-web. spring-web명시 적으로 추가 할 필요가 없습니다 .

spring-webSpring MVC를 사용하지 않고 Spring이 지원하는 다른 웹 관련 기술을 활용하려는 경우 에만 의존해야 합니다.


10
동의, +1. 그러나 드문 경우 : spring-webmvcinturn을 포함 하면을 추가 spring-web하지만 spring-webmvc 버전이 4.0.2이고 다른 종속성을 추가하면 swagger-springmvc버전이 0.8.8이면 spring-web3.2.x 버전이 추가 됩니다. 이 경우 클래스를 찾을 수 없음 예외가 발생할 수 있으므로 여기에서 명시 적으로 추가 spring-web하고 버전을 4.0.2로 설정해야합니다. 나는이 오늘 발생
스파이더

7
@spiderman 나는 전 이적 spring-web종속성을 제외 할 것 입니다swagger-springmvc
Roger

@ tomasz-nurkiewicz spring-jms와 spring-messaging 모듈의 차이점은 무엇입니까?
legend

1
나머지 API가 될 애플리케이션을 빌드하고 싶고 뷰 (jsp)가 전혀 필요하지 않을 때 무엇을 사용해야합니까? spring-web 또는 spring-webmvc?
Mohammad Eghlima 2019

1
이 경우 @MohammadEghlima는 spring-web을 사용합니다
leeCoder

7

공식 문서에서 : spring-web 모듈은 멀티 파트 파일 업로드 기능 및 Servlet 리스너 및 웹 지향 애플리케이션 컨텍스트를 사용하는 IoC 컨테이너 초기화와 같은 기본적인 웹 지향 통합 기능을 제공합니다. 또한 HTTP 클라이언트와 Spring의 원격 지원의 웹 관련 부분도 포함합니다.

spring-webmvc 모듈 (Web-Servlet 모듈이라고도 함)에는 Spring의 MVC (model-view-controller) 및 웹 애플리케이션 용 REST 웹 서비스 구현이 포함되어 있습니다. Spring의 MVC 프레임 워크는 도메인 모델 코드와 웹 양식을 명확하게 분리하고 Spring Framework의 다른 모든 기능과 통합합니다.

spring-webmvc-portlet 모듈 (Web-Portlet 모듈이라고도 함)은 포틀릿 환경에서 사용할 MVC 구현을 제공하고 Servlet 기반 spring-webmvc 모듈의 기능을 미러링합니다.

https://docs.spring.io/spring/docs/4.3.22.RELEASE/spring-framework-reference/htmlsingle/#overview-web

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.