SpringMVC
Posted fengjianbk
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SpringMVC相关的知识,希望对你有一定的参考价值。
Spring 框架提供了构建 Web 应用程序的全功能 MVC 模块。 使用 Spring 可插入的 MVC 架构,可以选择是使用内置的 Spring Web 框架还是 Struts 这样的 Web 框架。通过策略接口,Spring 框架是高度可配置的,而且包含多种视图技术,例如 JavaServer Pages(JSP)技术、Velocity、Tiles、iText 和 POI。Spring MVC 框架并不知道使用的视图,所以不会强迫您只使用 JSP 技术。Spring MVC 分离了控制器、模型对象、分派器以及处理程序对象的角色,这种分离让它们更容易进行定制。
Spring MVC工作原理
1.用户发送请求到前端控制器。
2.前端控制器请求处理器映射器去查找处理器。
3.找到以后处理器映射器向前端控制器返回执行链。
4.前端控制器调用处理器适配器去执行处理器。
5.处理器适配器去执行Handler。
6.处理器执行完给处理器适配器返回ModelAndView。
7.处理器适配器向前端控制器返回ModelAndView。
8.前端控制器请求视图解析器去进行视图解析。
9.视图解析器向前端控制器返回View。
10.前端控制器对视图进行渲染。
11.前端控制器向用户响应结果。
基本配置(非注解)
1、新建工程,导入构建SpringMVC工程所需的jar包
2、配置前端控制器
在web.xml中配置前端控制器:
<?xml version="1.0" encoding="UTF-8"?> <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID" version="2.5"> <display-name>day_0301_springMVC</display-name> <welcome-file-list> <welcome-file>index.html</welcome-file> <welcome-file>index.htm</welcome-file> <welcome-file>index.jsp</welcome-file> <welcome-file>default.html</welcome-file> <welcome-file>default.htm</welcome-file> <welcome-file>default.jsp</welcome-file> </welcome-file-list> <!-- 前端控制器 --> <servlet> <servlet-name>springmvc</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <!-- contextConfigLocation配置springmvc加载的配置文件(配置处理器映射器、适配器等等) 如果不配置contextConfigLocation,默认加载的是/WEB-INF/servlet名称-servlet.xml --> <init-param> <param-name>contextConfigLocation</param-name> <param-value>classpath:springmvc.xml</param-value> </init-param> </servlet> <servlet-mapping> <servlet-name>springmvc</servlet-name> <!-- 第一种:*.action,访问以.action结尾由DispatcherServlet进行解析 第二种:/, 所有访问的地址都由DispatcherServlet进行解析,对于静态文件的解析需要配置不让DispatcherServlet进行解析 --> <url-pattern>*.action</url-pattern> </servlet-mapping> </web-app>
3、配置处理器映射器
在classpath下的springmvc.xml中配置处理器映射器
<!-- 处理器映射器 ,将bean的name作为URL进行查找,需要在配置Handler时指定beanName(就是URL)--> <bean class="org.springframework.web.servlet.handler.BeanNameUrlHandlerMapping"></bean>
4、配置处理器适配器
<!-- 处理器适配器,所有的处理器适配器都实现HandlerAdapter接口 --> <bean class="org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter"> </bean>
5、配置视图解析器
<!-- 配置视图解析器 解析jsp视图,默认使用jstl标签 CLASSPATH下面要有jstl jar包 --> <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"></bean>
以上是关于SpringMVC的主要内容,如果未能解决你的问题,请参考以下文章
Spring Rest 文档。片段生成时 UTF-8 中间字节无效 [重复]