怎样分析SpringMVC中的HandlerAdapter

技术怎样分析SpringMVC中的HandlerAdapter这篇文章给大家介绍怎样分析SpringMVC中的HandlerAdapter,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。Dispatc

这篇文章给大家介绍怎样分析SpringMVC中的HandlerAdapter,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。

DispatcherServletHandlerAdapter关系

处理器映射器和处理器适配器的配置方式有三种:

xml配置!-配置处理器适配器simplecontroller handleraadapter-处理器需要实现控制器接口-bean class=' org。弹簧框架。网络。servlet。MVC。simplecontroller handleradadapter '/!-配置处理器映射器beannameurhandlermapping-使用豆的名字进行映射-bean class=' org。弹簧框架。网络。servlet。汉德勒。beannameurhandlermapping '/!-配置处理器适配器-bean name='/test。action ' class=' com。在占领下。控制器。test controller 1 '/bean bean id=' test controller 1 ' class=' com。在占领下。控制器。testhttprequestscontroller '/beanXML配置!- HttpRequestHandlerAdapter-处理器需要实现HttpRequestHandler接口-bean class=' org。弹簧框架。网络。servlet。MVC。http requestshandleradapter '/bean!-simpleurhandlermapping-使用豆的身份证明(识别)和路径进行映射-bean class=' org。弹簧框架。网络。servlet。汉德勒。simpleurlhhandlemarmapping ' property name=' mappings ' proppkey='/test1。动作测试控制器1/道具/道具/属性/bean通过注解的方式

!-使用注解方式配置处理器映射器和处理器适配器-MVC :注释驱动/MVC :注释驱动-驱动上下文:组件-扫描库-包=' com。在奥斯之下。控制器“/上下文:组件-扫描来看第一种方式的实现:

/***自定义处理器*实现控制器接口*/

公共类测试控制器1实现控制器{ @ Ove

rride

    public ModelAndView handleRequest(HttpServletRequest request,                             
                              HttpServletResponse response) throws Exception {
        //创建数据
        List<String> list=new ArrayList<>();
        list.add("qq");
        list.add("ww");
        ModelAndView modelAndView=new ModelAndView();
        modelAndView.addObject("list", list);
        modelAndView.setViewName("/WEB-INF/test/test.jsp");
        return modelAndView;
    }
}

 

第二种方式实现:

/**
 * 实现HttpRequestHandler接口 

 */
public class TestHttpRequestController implements HttpRequestHandler {
    @Override
    public void handleRequest(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
        // 创建数据
        List<String> list = new ArrayList<>();
        list.add("qq");
        list.add("ww");
        list.add("ee");
        request.setAttribute("list", list);
        request.getRequestDispatcher("/WEB-INF/test/test.jsp").forward(request, response);
    }
}

第三种方式实现:

/**
 * 测试注解处理器映射器与处理器适配器
 */
@Controller
public class TestAnnotationController {
    @RequestMapping("/test3.action")
    public ModelAndView test(){
        List<String> list=new ArrayList<>();
        list.add("qq");
        list.add("ww");
        list.add("ee");
        list.add("rr");
        ModelAndView modelAndView=new ModelAndView();
        modelAndView.addObject("list", list);
        modelAndView.setViewName("/WEB-INF/test/test.jsp");
        return modelAndView;
    }
}

关于怎样分析SpringMVC中的HandlerAdapter就分享到这里了,希望

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/131269.html

(0)

相关推荐

  • 设计模式07-装饰模式,Decorator)

    技术设计模式07-装饰模式,Decorator) 设计模式07-装饰模式(Decorator)通过实现与被装饰类实现的相同接口或父类,并将被装饰类作为属性注入到装饰器对象中来完成对装饰器模式的应用。装饰

    礼包 2021年10月28日
  • apacheflink零基础系列教程(flink脱离hadoop使用)

    技术如何在Apache Flink中使用RocksDB状态后端如何在Apache Flink中使用RocksDB状态后端,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简

    攻略 2021年12月23日
  • excel标准差函数,excel怎么算标准差和方差

    技术excel标准差函数,excel怎么算标准差和方差在excel表格中,VARPA函数可以用于计算方差,STDEVPA函数可以用于计算标准差excel标准差函数。 参考工具和原料: 1.一台Windows7系统笔记本电

    2021年10月22日
  • 网络很火的句子,你知道的今年最火的句子有哪些

    技术网络很火的句子,你知道的今年最火的句子有哪些听过无数话,看似都很有道理,但我最信两句:一个物以类聚,一个因果报应网络很火的句子。你还不认识我!我有一辈子可以认识你。不可能对所有人都好脸相迎,这是我人生的一大原则。

    生活 2021年10月21日
  • div鼠标放上去就放大用css3怎么写(css3实现div放大)

    技术css3如何实现div放大这篇文章主要讲解了“css3如何实现div放大”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“css3如何实现div放大”吧!

    攻略 2021年12月15日
  • 代理HTTP和HTTPS协议有什么区别

    技术代理HTTP和HTTPS协议有什么区别这篇文章将为大家详细讲解有关代理HTTP和HTTPS协议有什么区别,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。大家经常见的HT

    攻略 2021年10月21日