1、SpringMVC的优势
Spring框架提供了构建Web应用程序的全功能MVC模块——Spring MVC。Spring MVC框架提供了一个DispatcherServlet作用前端控制器来分派请求,同时提供灵活的配置处理程序映射、视图解析、语言环境和主题解析,并支持文件上传。Spring MVC还包含了多种视图技术,例如JSP、Velocity、Tiles、iText和POI等。Spring MVC分离了控制器、模型对象、分派器以及处理程序对象的角色,这种分离让它们更容易进行定制。
Spring MVC的特点:
(1)Spring MVC拥有强大的灵活性、非入侵性和可配置性。
(2)Spring MVC 提供了一个前端控制器DispatcherServlet,开发者无须额外开发控制器对象。
(3)Spring MVC分工明确,包含控制器、验证器、命令对象、模型对象、处理程序映射视图解析器,等等,每一个功能实现由一个专门的对象负责完成。
(4)Spring MVC可以自动绑定用户输入,并正确地转换数据类型。例如:Spring MVC能自动解析字符串,并将其设置为模型的int或float类型的属性。
(5)Spring MVC使用一个名称/值的Map对象实现更加灵活的模型数据传输。
(6)Spring MVC内置了常见的校验器,可以校验用户输入,如果校验不通过,则重定向回输入表单。输入校验是可选的,并且支持编程方式及声明方式。
(7)Spring MVC支持国际化,支持根据用户区域显示多国语言,并且国际化的配置非常简单。
(8)Spring MVC支持多种视图技术,最常见的有JSP技术以及其他技术,包括Velocity和FreeMarker。
(9)Spring 提供了一个简单而强大的JSP标签库,支持数据绑定功能,使得编写JSP页面更加容易。
2、开发第一个Spring MVC应用
2.1基于xml配置开发
(1)首先打开Eclipse,新建一个名为SpringMVCTest的Java Web项目,并且在WebContent路径下的WEB-INF目录下的lib目录导入如下图所示jar包。
(2)在WebContent路径下的WEB-INF目录下的web.xml文件中配置如下:
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://xmlns.jcp.org/xml/ns/javaee"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee
http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
id="WebApp_ID" version="3.1">
<!-- 定义Spring MVC的前端控制器 -->
<servlet>
<servlet-name>springmvc</servlet-name>
<servlet-class>
org.springframework.web.servlet.DispatcherServlet
</servlet-class>
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/springmvc-config.xml</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<!-- 让Spring MVC的前端控制器拦截所有请求 -->