搭建springmvc的步骤:
1:在web.xml中配置servlet
2:创建Springmvc的xml配置文件
3:创建Controller和view
1:导入需要的jar(以maven工程为例)
pom.xml中加入:
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>3.0.1</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
<version>4.1.5.RELEASE</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-core</artifactId>
<version>2.1.0</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.1.0</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-annotations</artifactId>
<version>2.1.0</version>
</dependency>
<dependency>
<groupId>jstl</groupId>
<artifactId>jstl</artifactId>
<version>1.2</version>
</dependency>
2web.xml配置servlet
<servlet>
<servlet-name>spring</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>spring</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>
配置的Servlet是DispatcherServlet类型,它就是Spring MVC的入口,Spring MVC的本质就是一个Servlet。在配置DispatcherServlet的时候可以设置contextConfigLocation参数来指定Spring MVC配置文件的位置,如果不指定就默认使用WEB-INF/[ServletName]-servlet.xml文件,这里使用了默认值,也就是WEB-INF/spring-servlet.xml
3配置springmvc配置文件
springmvc.xml:
<mvc:annotation-driven />
<context:component-scan base-package="com.bright"></context:component-scan>
是Spring MVC提供的一键式的配置方法,配置此标签后Spring MVC会帮我们自动做一些注册组件之类的事情。这种配置方法非常简单,背后的原理会在后面详细解释。另外还配置了context:component-scan标签来扫描通过注释配置的类.
4添加Controller,配置viwer
@Controller
public class HelloController {
@RequestMapping("/index")
public String hello(HttpServletRequest request,ModelMap map) throws ParseException {
map.put("data", "hello!");
return "index.jsp";
}
}
spring-servlet.xml如果没有配置ViewResolver,Spring MVC将默认使用org.springframework.web.servlet.view.InternalResourceViewResolver作为ViewResolver,而且prefix和suffix都为空.
5jsp页面
/webapp/index.jsp
<%@ page isELIgnored="false" %>
<html>
<body>
<h2>${data}</h2>
</body>
</html>