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

相关推荐

  • javascript删除指定覆盖物方法是什么

    技术javascript删除指定覆盖物方法是什么这篇文章主要讲解了“javascript删除指定覆盖物方法是什么”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“javasc

    攻略 2021年11月11日
  • Javaee与Javase有什么区别

    技术Javaee与Javase有什么区别本篇内容介绍了“Javaee与Javase有什么区别”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅

    攻略 2021年10月30日
  • 智能机怎么刷机,nokla智能机怎么刷机

    技术智能机怎么刷机,nokla智能机怎么刷机有两种刷机。1软刷:恢复出厂设置 2硬刷:(个人不建议)刷机前要备份好重要数据像手机号码什么的 。下面是硬刷过程(搜索粘贴的)  一、准备  1、下载navifirm  2、下

    生活 2021年10月22日
  • 感觉拼音,如果让你用拼音来写QQ空间的日志

    技术感觉拼音,如果让你用拼音来写QQ空间的日志估计真要用汉语拼音写日志感觉拼音,汉语拼音创始人,17世纪的法国(也算比利时)传教士金尼格也能看懂吧。
    中国自己的拼音第一人卢戆章却未必能看懂(他一直擅长拼音闽南语)
    方言是

    生活 2021年10月20日
  • 三明治的英语,三明治和汉堡的区别在哪里

    技术三明治的英语,三明治和汉堡的区别在哪里老铁三明治的英语,你分得清三角形和圆形吗?哈哈哈,在壹周君浅薄的认知中,三明治都是三角形的呢,而汉堡都是圆形,他们最大的共通点都是夹夹夹,裹挟着各种配料吃吃吃。 开个玩笑啦,严谨

    生活 2021年10月25日
  • 数据之POD数据类型

    技术数据之POD数据类型 数据之POD数据类型1.POD数据类型的起源
    在C语言时代,只有基本数据类型char、int、float和复合数据类型数组、指针、结构体等。但是在C++时代,出现了抽象数据结构

    礼包 2021年12月9日