Unit03: Spring Web MVC简介 、 基于XML配置的MVC应用 、 基于注解配置的MVC应用  

(1)springmvc是什么?

是一个mvc框架,用来简化基于mvc架构的web应用程序的开发。
注:springmvc属于spring框架的一部分。

(2)五大组件

DispatcherServlet 前端控制器

HandleMapping (请求地址与模型的对应关系)

Controller 处理器 (业务逻辑处理)

ModelAndView (封装处理结果)

ViewResolver 视图解析器 (处理结果与视图的对应关系)

step1. DispatcherServlet收到请求之后,依据HandlerMapping的配置 调用对应的Controller来处理。
step2. Controller将处理结果封装成ModelAndView,返回给 DispatcherServlet。
step3. DispatcherServlet依据ViewResolver的配置,调用 对应的jsp来将处理结果进行展现。

Unit03: Spring Web MVC简介 、 基于XML配置的MVC应用 、 基于注解配置的MVC应用

(3)编程步骤

step1. 导包。
step2. 添加spring配置文件。
step3. 配置DispatcherServlet。
step4. 写处理器(Controller)。
step5. 写jsp。

Unit03: Spring Web MVC简介 、 基于XML配置的MVC应用 、 基于注解配置的MVC应用

案例:

Unit03: Spring Web MVC简介 、 基于XML配置的MVC应用 、 基于注解配置的MVC应用

 

src/main/java/

controller

package controller;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.mvc.Controller;

/**
 * 处理器类
 *
 */
public class HelloController implements 
Controller{

    public ModelAndView handleRequest(
            HttpServletRequest req, 
            HttpServletResponse res)
                    throws Exception {
        System.out.println("handleRequest()");
        /*
         * ModelAndView有两个构造器:
         * a. ModelAndView(String viewName)
         * b. ModelAndView(String viewName,
         * Map data)
         * 注: 
         *         viewName是视图名(视图名会被
         *     ViewResolver解析成真正的视图对象,
         * 比如某个jsp)。
         *         data是处理结果。
         * 
         */
        return new ModelAndView("hello");
    }
    

}
HelloController.java

相关文章: