Spring mvc系列一之 Spring mvc简单配置

Spring mvc系列一之 Spring mvc简单配置-引用

Spring MVC做为SpringFrameWork的后续产品,Spring 框架提供了构建 Web 应用程序的全功能 MVC 模块。使用 Spring 可插入的 MVC 架构

Spring 的 Web MVC 框架是围绕 DispatcherServlet 设计的,它把请求分派给处理程序,同时带有可配置的处理程序映射、视图解析、本地语言、主题解析以及上载文件支持。

 

下面看一下Spring mvc 的简单配置入门:

首先新建一个Web项目,引入Spring相关jar包,这里在我们可以忽略spring与Struts2集成的jar包,引入Spring mvc相关jar包.相关jar包如下:这里需要注意,需要引入servlet-api.jar包

 

 

DispatcherServlet是spring mvc 的一个前端控制器,当一个请求过来时转给DispatcherServlet处理

首先我们在web.xml中声明DispatcherServlet处理请求:

 1 <?xml version="1.0" encoding="UTF-8"?>  
 2 <web-app version="2.5"   
 3     xmlns="http://java.sun.com/xml/ns/javaee"   
 4     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"   
 5     xsi:schemaLocation="http://java.sun.com/xml/ns/javaee   
 6     http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">  
 7       
 8       <servlet>  
 9         <servlet-name>springMVC</servlet-name>     
10         <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>   
11         <!-- 设置servlet的启动级别 -->  
12         <load-on-startup>1</load-on-startup>  
13       </servlet>  
14       <servlet-mapping>  
15         <servlet-name>springMVC</servlet-name>  
16         <url-pattern>/</url-pattern>  
17       </servlet-mapping>  
18     
19 </web-app>  

DispatcherServlet在初始化的过程中需要一个配置文件来产生文件中的各种Bean,默认情况下,配置文件是放在WEB-INF下,其命名是有约定的,是我们在web.xml中声明的DispatcherServlet名称-servlet.xml ,本例中其名称为:springMVC-servlet.xml :

 1 <?xml version="1.0" encoding="UTF-8"?>  
 2 <beans xmlns="http://www.springframework.org/schema/beans"  
 3     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:p="http://www.springframework.org/schema/p"  
 4     xmlns:context="http://www.springframework.org/schema/context"  
 5     xmlns:mvc="http://www.springframework.org/schema/mvc"  
 6     xsi:schemaLocation="        
 7            http://www.springframework.org/schema/beans        
 8            http://www.springframework.org/schema/beans/spring-beans-3.0.xsd        
 9            http://www.springframework.org/schema/context        
10            http://www.springframework.org/schema/context/spring-context-3.0.xsd       
11            http://www.springframework.org/schema/mvc        
12            http://www.springframework.org/schema/mvc/spring-mvc-3.0.xsd">  
13              
14     <bean  
15         class="org.springframework.web.servlet.view.InternalResourceViewResolver">  
16         <property name="prefix" value="/" />  
17         <property name="suffix" value=".jsp" />  
18     </bean>  
19 </beans>  

Controller处理完成后会交给InternalResourceViewResolver处理,InternalResourceViewResolver用于支持Servlet、JSP视图解析.属性名为prefix的作用是指定视图文件的位置,属性名为suffix是作用是视图文件的类型,例如当我们prefix指定为:/mvc时 ,当传进来的逻辑视图名为hello它就会找mvc/hello.jsp.

 

然后我们新建一个控制器

 1 package gd.hz.springmvc.controller;  
 2   
 3 import javax.servlet.http.HttpServletRequest;  
 4 import javax.servlet.http.HttpServletResponse;  
 5   
 6 import org.springframework.web.servlet.ModelAndView;  
 7 import org.springframework.web.servlet.mvc.Controller;  
 8   
 9 public class HelloWorld implements Controller {  
10   
11     public ModelAndView handleRequest(HttpServletRequest request ,  
12             HttpServletResponse response) throws Exception {  
13         return new ModelAndView("hello");  
14     }  
15 }  

控制器必须实现Controller接口,注意不选错了Controller,注意一下包全称.后面我还会讲其它的处理方法.

方法handleRequest,处理过来的请求,并转到相关页面.new ModelAndView("hello")返回逻辑视图名称为hello,所以根据上面的配置,它会到WebRoot下找hello.jsp页面.

新建hello.jsp页面

 1 <%@ page language="java" contentType="text/html; charset=UTF-8"  
 2     pageEncoding="UTF-8"%>  
 3 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">  
 4 <html>  
 5 <head>  
 6 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">  
 7 <title>Hello SpringMVC</title>  
 8 </head>  
 9 <body>  
10     你好:Spring MVC  
11 </body>  
12 </html>  

在springMVC-servlet.xml声明视图访问路径:

1 <bean name="/mvc/hello" class="gd.hz.springmvc.controller.HelloWorld"></bean>  

输入url进行测试:http://localhost/SpringHelloWorld/mvc/hello

 

posted @ 2015-05-18 00:03  新绿薄荷  阅读(218)  评论(0编辑  收藏  举报