怎样分析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)

相关推荐

  • 山药鸡蛋饼的做法,山药糯米粉鸡蛋怎样做好吃

    技术山药鸡蛋饼的做法,山药糯米粉鸡蛋怎样做好吃你好非常感谢你提的问题山药鸡蛋饼的做法,是我的回答希望可以解决你的问题,首先我们先准备一些山药,糯米,黑芝麻,红枣,红糖,鸡蛋。然后把山药给清洗干净,再清洗干净以后我们把山药

    生活 2021年10月24日
  • 瓷砖打眼,在瓷砖上面打孔有什么好的办法

    技术瓷砖打眼,在瓷砖上面打孔有什么好的办法在玻化砖上开孔或者打孔的过程中,出现瓷砖开裂是一个比较常见的问题,下面就为大家介绍一下,如何去避免在后期的安装工作中打孔将瓷砖打裂的问题,个人觉得可以从以下几个方面着手: 1、检

    生活 2021年10月22日
  • openwrt lan口改成dhcp(openwrt wan口怎么设置)

    技术openwrt 19.7 驱动如何添加rndis模式4G模块这篇文章主要介绍openwrt 19.7 驱动如何添加rndis模式4G模块,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!在linu

    攻略 2021年12月17日
  • sql server排名函数DENSE_RANK的用法是什么

    技术sql server排名函数DENSE_RANK的用法是什么这篇文章将为大家详细讲解有关sql server排名函数DENSE_RANK的用法是什么,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文

    攻略 2021年11月30日
  • 如何理解Solidity的Bytecode和Opcode

    技术如何理解Solidity的Bytecode和Opcode本篇文章为大家展示了如何理解Solidity的Bytecode和Opcode,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收

    攻略 2021年11月23日
  • 如何快速给Hadoop集群加上弹性

    技术如何快速给Hadoop集群加上弹性本篇内容介绍了“如何快速给Hadoop集群加上弹性”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,

    攻略 2021年12月9日