@RequestMapping注解
Spring MVC中用于参数绑定的注解有很多,都在org.springframework.web.bind.annotation包中,根据它们处理的request的不同内容部分可以分为四类(主要讲解常用类型)
>>处理request body 部分的注解: @RequestParam,@RequestBody
>>处理reuqest url 部分的注解: @PathVariable
>>处理request header 部分的注解: @RequestHeader,@CookieValue
>>处理attribute类型的注解: @SessionAttibute,@ModelAttribute
@RequestMapping注解:
**@RequestMapping虽然也在org.springframework.web.bind.annotation下面,但是严格来说,他并不属于参数绑定注解
开发者需要在控制器内部为每一个请求动作开发相应的处理方法。org.springframework.web.bind.annotation.RequestMapping注解类型指示Spring用哪一个类或方法来处理请求动作,该注解可用于类或方法。
@RequestMapping可以用来注释一个控制器类,在这种情况下,所有方法都将映射为相对于类级别的请求,表示该控制器处理的所有请求都被映射到value属性所指示的路径下
@Controller
@RequestMapping(value = "/user")
public class UserController{
@RequestMapping(value = "/register")
public String register(){
return "register";
}
@RequestMapping(value = "/login")
public String login(){
return "login";
}
}
请求URL : http://localhost:8080/user/register
http://localhost:8080/user/login
>>1.value属性
@RequestMapping(value = "/hello")
public ModelAndView hello(){
return ...;
}
该实例使用@RequestMapping注释的value属性将URL映射到方法上,在这个例子中,将hello映射到hello方法上,使用如下URL访问应用时将由hello方法进行处理:
http://localhost:8080/context/hello
由于value属性是@RequestMapping注释的默认属性,因此,如果只有唯一的属性,则可以省略属性名
@RequestMapping(value = "/hello")
@RequestMapping("/hello")
但如果超过一个属性,就必须写上value属性名称
value属性的值也可以是一个空字符串,此时该方法被映射到如下请求URL:
http://localhost:8080/context
>>2.method属性
该属性用来指示该方法仅仅处理那些HTTP请求方式
@RequestMapping(value = "/hello" method = "RequestMethod.POST")
以上代码表示该方法仅支持POST请求
也可以同时支持多个HTTP请求方式:
@RequestMapping(value = "/hello",method = {RequestMethod.POST,RequestMethod.GET})
如果没有指定method属性值,则请求处理方法可以处理任意的HTTP请求方式
@RequestMapping注解的更多相关文章
- @RequestMapping注解详解
@RequestMapping是一个用来处理请求地址映射的注解,可用于类或者方法上.用于类上,表示类中的所有响应请求的方法都是以该地址作为父路径.@RequestMapping注解有六个属性,下面进行 ...
- springmvc 中RequestMapping注解的使用
1.RequestMapping注解既可以修饰方法,又可以修饰类型,类型指定的url相对于web跟路径,而方法修饰的url相对于类url: 2.RequestMapping的几个属性: value:用 ...
- Spring MVC @RequestMapping注解详解
@RequestMapping 参数说明 value:定义处理方法的请求的 URL 地址.(重点) method:定义处理方法的 http method 类型,如 GET.POST 等.(重点) pa ...
- 超详细 Spring @RequestMapping 注解使用技巧
@RequestMapping 是 Spring Web 应用程序中最常被用到的注解之一.这个注解会将 HTTP 请求映射到 MVC 和 REST 控制器的处理方法上. 在这篇文章中,你将会看到 @R ...
- Spring @RequestMapping 注解使用技巧
@RequestMapping 是 Spring Web 应用程序中最常被用到的注解之一.这个注解会将 HTTP 请求映射到 MVC 和 REST 控制器的处理方法上. 在这篇文章中,你将会看到 @R ...
- 超详细 Spring @RequestMapping 注解使用技巧 (转)
@RequestMapping 是 Spring Web 应用程序中最常被用到的注解之一.这个注解会将 HTTP 请求映射到 MVC 和 REST 控制器的处理方法上. 在这篇文章中,你将会看到 @R ...
- spring @RequestMapping注解技巧
@RequestMapping 是 Spring Web 应用程序中最常被用到的注解之一.这个注解会将 HTTP 请求映射到 MVC 和 REST 控制器的处理方法上. 下面我们看看,@Request ...
- SpringMVC源码解读 - RequestMapping注解实现解读 - RequestMappingInfo
使用@RequestMapping注解时,配置的信息最后都设置到了RequestMappingInfo中. RequestMappingInfo封装了PatternsRequestCondition, ...
- SpringMVC源码解读 - RequestMapping注解实现解读 - RequestCondition体系
一般我们开发时,使用最多的还是@RequestMapping注解方式. @RequestMapping(value = "/", param = "role=guest& ...
随机推荐
- django图书管理半成品(MySQL)
本次需要用到MySQL数据库,所以先配置数据库,在seeting文件中配置: 数据库第一次使用需要配置: python manage.py makemigrations #生成配置文件 python ...
- backbone 要点知识整理
1.backbone 是个mvc的库,官方文档说它是个库,而不是个框架.库和框架的区别就是,库只是个工具,方便你的项目应用,不会改变你的项目结构,而框架会有一套自己的机制,项目需要遵循框架的设计来实现 ...
- 我的第二个网页制作:p,hn,br标签的使用
<html> <head> <title>这是我的第二个html代码</title> <body> <!-- <p>Hel ...
- Android开发——BroadcastReceiver广播的使用
想要了解广播定义及相关原理的可以看下这一篇BroadcastReceiver史上最全面解析 简单地对广播进行分类吧,广播有两个角色,一个是广播发送者,另外一个是广播接收者 广播按照类型分为两种,一种是 ...
- Java客户端API
添加依赖 <dependency> <groupId>org.apache.zookeeper</groupId> <artifactId>zookee ...
- vue-cli脚手架的.babelrc文件 详解
{ // 此项指明,转码的规则 "presets": [ // env项是借助插件babel-preset-env,下面这个配置说的是babel对es6,es7,es8进行转码,并 ...
- linux一键安装
http://source.docs.cloudcare.cn/support/faq/webfaq/webfaq_11/?spm=5176.730006-cmgj000262.102.8.QsmPR ...
- Java Draw
简单绘画 直线 矩形 圆 根据矩阵画图 package com.zhoudm; import java.awt.*; import javax.swing.*; public class Draw e ...
- postgresql+mybatis返回值是数据库字段名
mybatis 返回map的时候是下划线 role_id, user_id 两种解决方法 1.重命名 postgresql不支持驼峰 加上双引号重命名 SELECT role_id "ro ...
- java中的按位与运算
package scanner; public class SingleAnd { public static void main(String[] args) { int[] first = {10 ...