Spring7-编写第一个Handler(非注解)

配置处理器适配器



这个处理器适配器的作用是用来执行Handler.
有人可能会问我只配置一个bean就知道是适配器吗?
答:所有的处理器适配器,都实现了HandlerAdapter接口.
其中有一个supports方法.

Spring7-编写第一个Handler(非注解)_第1张图片

这个方法的作用是判断这个适配器,支持哪一种类型的Handler.
上面的这个截图就表明,此适配器支持实现Controller接口的Handler.

编写Handler

我们写的这个Handler必须实现Controller接口才能由SimpleControllerHandlerAdapter适配器执行.

public class TestController implements Controller {
    @Override
    public ModelAndView handleRequest(HttpServletRequest request, HttpServletResponse response) throws Exception {
        //例如我们的这个测试的Handler是用来做查询用户测试的
        //这里会调用service的查询用户的功能.

        //这个方法需要返回一个ModelAndView对象所以我们创建一个.
        ModelAndView modelAndView = new ModelAndView();

        //这个方法相当于request的setAttribute()方法.
        modelAndView.addObject("key", "value");

        //指定视图
        //例如我们在/WEB-INF/jsp/test.jsp页面,所以我们的视图名称就要写成如下.
        modelAndView.setViewName("/WEB-INF/jsp/test.jsp");
        return modelAndView;
    }
}

上面就是我们自己的Handler了,下面这张图比较详细.


Spring7-编写第一个Handler(非注解)_第2张图片

配置处理器映射器

    
    

处理器映射器作用就是通过URL找到对应的Handler.
而这里配置的bean大家通过名字也能看出来,是将bean的name作为url进行查找.
所以我们还需要配置Handler

配置Handler


这样当我们请求/test/testController.do的时候就会找到对应的cc.test.TestControllerHandler了.

配置视图解析器


你可能感兴趣的:(Spring7-编写第一个Handler(非注解))