Spring Web MVC框架学习笔记
spring-framework-reference中文版摘录。
spring3.1
1.简单介绍一下Spring Web MVC框架
Spring Web MVC借助DispatcherServlet将requests转发给handlers,可以配置handler mappings、视图、本地化等,甚至支持文件上传。
默认的handler 基于@Controller 和 @RequestMapping注解。通过@Controller和@PathVariable等其他注解还可以构建RESTful的WEB应用。
在Spring Web MVC中可以使用普通的类,而不必实现特定的接口。
Spring的数据绑定和视图实现非常的灵活,model采用Map格式。
2.DispatcherServlet
跟其他的web MVC框架一样,Spring Web MVC也是基于request驱动的(跟JSF区别),属于前端控制型。
DispatcherServlet 其实是Servlet(HttpServlet的子类),需要在web.xml声明,并配置要其转发的requests。示例如下:
<web-app> <servlet> <servlet-name>example</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>example</servlet-name> <url-pattern>/example/*</url-pattern> </servlet-mapping> </web-app>
/example/的请求将会被DispatcherServlet转发。这仅仅是使用Spring Web MVC的第一步。
DispatcherServlet需要定义自己的WebApplicationContext,以[servlet-name]-servlet.xml命名置于WEB-INF目录下。文件的命名必须和web.xml配置的servlet-name一致。如上的配置,就应命名为/WEB-INF/example-servlet.xml。
如上配置就应命名为/WEB-INF/golfing-servlet.xml。
Spring DispatcherServlet利用一些特定的bean来转发请求和渲染视图,这些bean都在WebApplicationContext中配置。