<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-web
provides core HTTP integration, including some handy servlet filters, Spring HTTP Invoker, infrastructure to integrate with other web frameworks and HTTP technologies (Hessian, Burlap)
VS
spring-webmvc
is an implementation of Spring MVC. spring-webvc
depends on on spring-web
, thus including it will transitively add spring-web
. You don't have to add spring-web
explicitly.