Spring MVC是spring构建的前端MVC web框架,利用spring本身的DI,AOP等特性,实现松耦合,减少web端代码的开发,提高web端的开发效率,并且提供web端的服务特性,例如验证,状态管理等。
搭建Spring MVC:
spring MVC的核心是DispatcherServlet,我们称之为中心控制器,通过中心控制器的解析,找对对应spring bean作为controller进行处理。
首选进行web.xml配置:
<servlet> <servlet-name>basic</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <init-param> <param-name>contextConfigLocation</param-name> <param-value>classpath:spring/basic.xml</param-value> </init-param> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>basic</servlet-name> <url-pattern>/</url-pattern> </servlet-mapping>如果不被配置init-param指定配置文件的加载地址,默认则会加载WEB-INF文件下基于配置servlet-name名称basic的basic-servlet.xml文件作为spring配置文件。可以在web.xml配置一个spring配置文件,然后在该spring配置文件下通过<import />标签引入项目当中的其他spring配置文件。
添加请求处理分发器:
<mvc:annotation-driven/>配置分发处理器的工作是让spring MVC去解析请求,根据请求匹配对应的spring controller,并且对请求参数进行封装等等。
控制器编写:
package org.robbie.test.spring.beans; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; @Controller @RequestMapping(value = "/myController") public class MyController { @RequestMapping(value="/myMethod") public void myMethod(){ } }通过@Controller配置来标识一个类为控制器,指定请求路径,在方法上配置@RequestMapping来标识请求路径和方法的匹配。
视图解析器:
JSP解析器的配置:
<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"> <property name="prefix" value="/WEB-INF/views/"></property> <property name="suffix" value=".jsp"></property> </bean>
目前实现了一个最基本的spring MVC的配置,有关spring MVC的例子可以详细参照官方文档,个人建议配合学习REST共同学习,这样才能够假设更加完美的服务器架构。