SpringMVC(二)@RequestMapping
学习@RequestMapping注解,参考Spring API
1.@RequestMapping可以修饰在类类型和方法上
①.修饰在类定义上: 提供初步的URL映射,相对于web应用根目录。
②.修饰在方定义法上: 提供更细致的URL映射,若类定义上有注解,则相对于类定义上的URL映射。否则相对于web应用根目录映射
代码1:
只在方法上加@RequestMapping:
1: @Controller
2: public class TestRequestMapping {
3: @RequestMapping("/testMethod")
4: public String testMethod() {
5: System.out.println("testMethod");
6: return "success";
7: }
8: }URL:
1: <a href="testMethod">testMethod</a>
代码2:
在类和方法上加@RequestMapping:
1: @RequestMapping("/testClass")
2: @Controller
3: public class TestRequestMapping {
4: @RequestMapping("/testMethod")
5: public String testClassAndMethod() {
6: System.out.println("testClassAndMethod");
7: return "success";
8: }
9: }URL:
1: <a href="testClass/testMethod">testClassAndMethod</a>
代码3:
只在类上加@RequestMapping:
1: @RequestMapping("/testClass")
2: @Controller
3: public class TestRequestMapping {
4:
5: public String testClassAndMethod() {
6: System.out.println("testClass");
7: return "success";
8: }
9: }URL:
1: <a href="testClass">testClass</a>
运行时,发出Tomcat警告: No mapping found for HTTP request with URI [/mvc02/testClass] in DispatcherServlet with name 'dispatcherServlet'。
也就说在类上加注解后,必须在方法上也加注解。查看api,发现开头第一句 Annotation for mapping web requests onto specific handler classes and/or handler methods
好吧没仔细看api,classes and/or handler methods。(⊙﹏⊙)b
2.@RequestMapping有7个参数,value,method,headers,params之间是与的关系:
String[] value URL路径:"/myPath/myMethod" RequestMethod[] method 请求方式:GET, POST, HEAD, OPTIONS, PUT, PATCH, DELETE, TRACE String[] headers 请求头,用法与params类似,支持简单表达式 String[] params 请求参数,支持简单表达式
params={"name"}:参数中必须包含名为name的参数
params={"!name"}:参数中不能包含名为name的参数
params={"name!=xx"}:参数中若包含了名为name的参数,
则name!=xx。参数中也可以不包含名为name的参数
params={"name=xx"}:参数中必须包含名为name的参数,
且name=xx。String[] produces 指定哪些媒体类型可以不需要 String[] consumes 指定哪些媒体类型可以额外 添加 String name 映射名称
method——代码:
1: @RequestMapping("/testClass")
2: @Controller
3: public class TestRequestMapping {
4: @RequestMapping(value = "/testMethod_GET", method = RequestMethod.GET)
5: public String testMethod_GET() {
6: System.out.println("method running....");
7: return "success";
8: }
9:
10: @RequestMapping(value = "/testMethod_POST", method = RequestMethod.POST)
11: public String testMethod_POST() {
12: System.out.println("method running....");
13: return "success";
14: }
15:
16: }URL:
1: <form action="testClass/testMethod_POST" method="post">
2: <input type="submit" value="testMethod_POST"/>
3: </form>
4: <br/><br/>
5:
6: <a href="testClass/testMethod_GET">testMethod_GET</a>
SpringMVC(二)@RequestMapping的更多相关文章
- SpringMVC(二):RequestMapping修饰类、指定请求方式、请求参数或请求头、支持Ant路径
@RequestMapping用来映射请求:RequestMapping可以修饰方法外,还可以修饰类 1)SpringMVC使用@RequestMapping注解为控制指定可以处理哪些URL请求: 2 ...
- SpringMVC 学习笔记(二) @RequestMapping、@PathVariable等注解
版权声明:本文为博主原创文章,博客地址:http://blog.csdn.net/a67474506?viewmode=contents 1.1. @RequestMapping映射请求 Spring ...
- SpringMVC注解@RequestMapping之produces属性导致的406错误
废话不多说,各位,直接看图说话,敢吗?这个问题网上解决的办法写的狠是粗糙,甚至说这次我干掉它完全是靠巧合,但是也不否认网上针对406错误给出的解决方式,可能是多种情况下出现的406吧?我这次的流程就是 ...
- springMVC(1)---@RequestMapping详解
@RequestMapping详解 RequestMapping是一个用来处理请求地址映射的注解,可用于类或方法上.用于类上,表示类中的所有响应请求的方法都是以该地址作为父路径.这句话,太熟悉了. ...
- SpringMVC(三) RequestMapping修饰类
SpringMVC使用@RequestMapping 注解为控制器指定可以处理哪些URL请求. 可以用于类定义以及方法定义: 类定义:提供初步的请求映射信息.相对于WEB应用的根目录. 方法处:提供进 ...
- SpringMVC(十二) RequestMapping使用POJO作为参数
将一个普通的JAVA类对象作为一个参数传入. POJO类Address: package com.tiekui.springmvc.pojo; public class Address { priva ...
- SpringMVC中 -- @RequestMapping的作用及用法
一.@RequestMapping 简介 在Spring MVC 中使用 @RequestMapping 来映射请求,也就是通过它来指定控制器可以处理哪些URL请求,相当于Servlet中在web.x ...
- SpringMVC的@RequestMapping和Controller方法返回值
本节内容: @RequestMapping Controller方法返回值 一.@RequestMapping 通过@RequestMapping注解可以定义不同的处理器映射规则. 1. URL路径映 ...
- SpringMVC注解@RequestMapping @RequestParam @ResponseBody 和 @RequestBody 解析
SpringMVC Controller层获取参数及返回数据的方式: @RequestMapping @RequestMapping(“url”),这里的 url写的是请求路径的一部分,一般作用在 C ...
- 【SpringMVC】---RequestMapping、Ant 路径、PathVariable 注解、HiddenHttpMethodFilter 过滤器、用 POJO 作为参数
一.web.xml <?xml version="1.0" encoding="UTF-8"?> <web-app xmlns:xsi=&qu ...
随机推荐
- NOIP2016 DAY2 T2蚯蚓
传送门 Description 本题中,我们将用符号[c]表示对c向下取整,例如:[3.0」= [3.1」=[3.9」=3.蛐蛐国最近蚯蚓成灾了!隔壁跳 蚤国的跳蚤也拿蚯蚓们没办法,蛐蛐国王只好去请神 ...
- HDU 5729 Rigid Frameworks (联通块计数问题)
题目传送门 通过看题解画图可以发现: 不论怎么转,一列里的横边/一行里的竖边始终平行 当我们加固一个格子时,会让它所在的这一行的竖边和这一列的横边保证垂直 而我们的目标是求所有竖边和横边都保证垂直的方 ...
- elasticsearch6.4中文文档
男朋友翻译的,我这边做一个查看入口,分享给大家,O(∩_∩)O哈哈~ 版权声明:本文为博主原创文章,无需授权即可转载,甚至无需保留以上版权声明,转载时请务必注明作者. https://blog.csd ...
- ELK 聚合查询
在elasticsearch中es支持对存储文档进行复杂的统计.简称聚合. ES中的聚合被分为两大类. 1.Metrics, Metrics 是简单的对过滤出来的数据集进行avg,max等操作,是一个 ...
- Dagger2使用攻略
Dagger2使用攻略 Dagger 2 是 Square 的 Dagger 分支,是一种依赖注入框架.眼下由 Google 接手进行开发,Dagger2是使用代码自己主动生成和手写代码来实现依赖注入 ...
- ADO.NET Entity Framework Extensions
一.情景 如果你的项目中有返回多结果集的存储过程. 如果你的项目要和老项目中的ADO.Net共用事务. 如果你要动态的创建数据库的表. 但是你还是希望使用Entity Framework.那么继续往下 ...
- Android开机键失灵启动手机的解决的方法
问题描写叙述 Android手机的关机键损坏,无法开机. 解决方法 将手机通过USB线链接电脑,进入命令行.找到adb命令所在文件夹.执行例如以下命令: adb reboot 注意:用这样的方法的前提 ...
- Node.js:路由
ylbtech-Node.js:路由 1.返回顶部 1. Node.js 路由 我们要为路由提供请求的 URL 和其他需要的 GET 及 POST 参数,随后路由需要根据这些数据来执行相应的代码. 因 ...
- 几款jQuery右键菜单插件介绍
在网页中使用自定义右键菜单,实现上皆为使用javascript禁用浏览器默认的右键菜单,然后在网页中响应鼠标右键事件,弹出自定义的菜单. 类似右键菜单的组件网上很多.一般而言,改变浏览器的默认菜单应当 ...
- selenium 最大化浏览器是解决浏览器和驱动不匹配的方法如下
那么要想selenium成功的操作chrome浏览器需要经历如下步骤: 1.下载ChromeDriver驱动包(下载地址: http://chromedriver.storage.googleapis ...