• springmvc 开涛 注解式控制器


    版本 定义处理器类 处理器映射适配器 备注 支持的注解
    2.5前 controller      
    2.5 注解

    DefaultAnnotationHandlerMapping

    AnnotationMethodHandlerAdapter

    @Controller

    @RequestMapping

    @Controller

    @RequestMapping

    @RequestParam

    @ModelAndView

    @SessionAttributes

    @InitBinder

    3.0 ... ... ... @PathVariable

    @CookieValue

    @RequestHeader

    @RequestBody

    @ResponseBody

    @ResponseStatus

    @ExceptionHandler

    @PathVariable

    3.1 ...

    RequestMappingHandlerMapping

    RequestMappingHandlerAdapter

    ...  

    请求的映射分为四种:URL,方法,参数,头

    在处理器类上 可以加 @Controller @RequestMapping,后者主要用于窄化功能处理方法的映射

    开涛讲得开启注解的方式 跟 孔浩讲得不同呀,前者是引入两个bean,后者是引入<context><mvc>标签?

    前者只会去发现@Controller,@RequestMapping;后者会扫描所有带注解的bean
    

    ***-servlet.xml应该放在WEB-INF目录下,这样使用classpath:***-servlet.xml

    URL路径映射

    普通URL

    URL模板

    ant风格:http://blog.csdn.net/h396071018/article/details/8278389  ?不能为空,*(0或多个字符) **(0或多个目录)都可以。最长匹配优先

    正则表达式:{变量名:正则表达式}

    或 的关系:value={"/", "/test"};

    请求方法映射

    或 的关系:method={RequestMethod.POST, RequestMethod.GET};

    如果需要支持OPTIONS、TRACE,请添加DispatcherServlet在web.xml的初始化参数:dispatchOptionsRequest 和 dispatchTraceRequest 为true。

    请求参数映射

    @RequestMapping(params="create") 有create参数

    @RequestMapping(params!="create") 没有create参数

    @RequestMapping(params="create=sfp") create=sfp

    @RequestMapping(params="create!=sfp") create!=sfp

    且 的关系 @RequestMapping(params={"test1", "test2=create"})

    @RequestMapping("/user")或@RequestMapping(value="/user")  对路径进行映射
    @RequestMapping(params="user")  对参数进行映射
    @RequestParam(value="user") 对参数进行映射
     
    

    请求头映射

    @RequestMapping(header="Accept") 跟请求参数类似

    接下来看生产者,消费者请求限定

     

  • 相关阅读:
    软件测试需求分析与跟踪
    应用程序通用测试技术
    测试计算机软件发展历史
    多个iframe的刷新问题
    web:div模块自适应问题
    求:多人合作代码管理的好办法
    第一天
    jQuery,选择器,选择父页面的元素
    鼠标移入移出冒泡事件解决 Jquery mouseenter和mouseleave
    jQuery DOM操作IE6兼容性
  • 原文地址:https://www.cnblogs.com/wang-jing/p/4567214.html
Copyright © 2020-2023  润新知