Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1148640
  • 博文数量: 103
  • 博客积分: 1897
  • 博客等级: 上尉
  • 技术积分: 1717
  • 用 户 组: 普通用户
  • 注册时间: 2012-04-19 21:02
文章分类

全部博文(103)

文章存档

2013年(19)

2012年(84)

分类: Java

2013-01-29 17:31:02

 springMVc 是spring 推出的一个mvc框架,在此框架下,可以方便快捷地开发web应用,而且该框架与spring无缝连接,可以很好地将spring 的Ioc和aop应用到这里面。

下面我们将通过一个小程序来了解springMVC.

springMVC的总体处理流程图如下:


这里有一个核心的类,叫DispatcherServlet,这个是一个Servlet的分发类,它负责转发请求和加载Spring用来注入和管理部件的类,-WebApplicationContext,在相应的web.xml文件里面,配置如下:

    xmlns:xsi=""
    xsi:schemaLocation=" ">
 
    
    
        appServlet
        org.springframework.web.servlet.DispatcherServlet
        
            contextConfigLocation
            /WEB-INF/spring/appServlet/servlet-context.xml
        
        1
    
 
    
        appServlet
        /
    

配置其实和一般的Servlet是一样的,另外,大家可能注意到了,配置里面有一个contextConfigLoaction的配置变量,这是用来配置spring的配置文件的,内容如下:

    xmlns:xsi=""
    xmlns:mvc=""
    xmlns:context=""
    xsi:schemaLocation="
        
        
         ">
 
    
 
    
    
    
 
    
    
 

这里我们利用spring提供的包扫描去扫描对应包下的配置,采用的是annotation的方式。

另外,对应的每个请求,分发之后,都应该有一个控制类去响应这个请求。

package xyz.sample.baremvc;
 
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
 
/**
 * Handles requests for the application home page.
 */
@Controller
public class HomeController {
 
    @RequestMapping(value = "/")
    public String home() {
        System.out.println("HomeController: Passing through...");
        return "WEB-INF/views/home.jsp";
    }
}
这个控制类适配“/“命名空间下的请求,并将它交给方法home处理,处理完了之后,返回到对应的界面。

WEB-INF/views/home.jsp

<%@ taglib uri="" prefix="c" %>
<%@ page session="false" %>
    
        Home
    
    
        

Hello world!

    

此时我们访问项目,就能交到hello world的输出了。//注意,如果工程目录下有index.jsp文件,有时默认回去访问这个文件,此时将这个文件去掉,就又正常了。

阅读(3863) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~