首页 > 其他分享 >SpringBoot - @RequestMapping 注解

SpringBoot - @RequestMapping 注解

时间:2022-12-30 17:12:08浏览次数:47  
标签:... SpringBoot 请求 RequestMapping value 注解 login String

@Target({ElementType.TYPE, ElementType.METHOD}) //只能在方法上使用
@Retention(RetentionPolicy.RUNTIME)
@Documented
@Mapping
public @interface RequestMapping {
    //设置一个名称 说明该请求的作用
    String name() default "";

    //设置请求路径
    @AliasFor("path")
    String[] value() default {};

    //设置请求路径
    @AliasFor("value")
    String[] path() default {};

    //指定请求的类型 如Get,Post
    RequestMethod[] method() default {};

    //指定请求的参数
    String[] params() default {};

    //指定请求的请求头
    String[] headers() default {};

    //指定请求的Content-type
    String[] consumes() default {};

    //设置响应类型 Content-type
    String[] produces() default {};
}

1.name属性

此处name属性,相当于方法的注释,使方法更易理解

    @RequestMapping(path="login",name="用户登录")
    public String login(...){
        ...
    }

2.path与value属性

请求映射的名称 path与value作用都是一样的,并且都支持数组 写多个映射

    @RequestMapping(value={"login","user/login"})
    public String login(...){
        ...
    }

    @RequestMapping(value="loginOut")
    public String loginOut(...){
        ...
    }

3.method属性

设置请求的类型 如Get,Post,Delete,Put......

    @RequestMapping(value={"login","user/login"},method = {RequestMethod.GET,RequestMethod.POST})
    public String login(...){
        ...
    }

    @RequestMapping(value="loginOut",method = RequestMethod.POST)
    public String loginOut(...){
        ...
    }

4.params,headers,consumes,produces 属性

params 指定请求的参数,headers 指定请求的请求头,consumes 指定请求的类型(Content-Type)

produces 指定响应的类型(Content-Type)

    @RequestMapping(
            value="index",
            params = {"name","age=18"},
            headers = {"Accept","Content-Type=application/json"},
            consumes = "application/json",
            produces = "application/json;charset=UTF-8"
    )
    public String login(){
        return "Success";
    }

params请求的参数必须有name字段 age为18

header请求的请求头必须有Accept,Content-Type的值为application/json

consumes请求的请求内容,Content-Type的值为application/json

produces响应的内容格式为application/json;charset=UTF-8,就是叫游览器以json的格式显示返回给游览器的数据 编码为UTF-8

标签:...,SpringBoot,请求,RequestMapping,value,注解,login,String
From: https://www.cnblogs.com/ErenYeager/p/17015360.html

相关文章

  • SpringBoot - 定时任务 @EnableScheduling,@Scheduled
    1.在启动类上添加@EnableScheduling注解,开启对定时任务的支持//开启对定时任务的支持@EnableScheduling@SpringBootApplicationpublicclassLearn20221218Applicatio......
  • 【转】自定义注解详细介绍
    原文:https://blog.csdn.net/xsp_happyboy/article/details/809874841注解的概念1.1注解的官方定义首先看看官方对注解的描述:Anannotationisaformofmetadata,......
  • SpringBoot参数校验
    原文:https://juejin.cn/post/6856541106626363399简单使用JavaAPI规范(JSR303)定义了Bean校验的标准validation-api,但没有提供实现。hibernatevalidation是对这个规范的......
  • SpringBoot - 异步任务 @EnableAsync,@Async
    1.在启动类上添加@EnabnleAsync注解开启对异步任务的支持//开启对异步任务的支持@EnableAsync@SpringBootApplicationpublicclassLearn20221218Application{p......
  • springboot HandlerIntercept
    1、新建上下文类工具类publicclassContextHolder{privatestaticfinalInheritableThreadLocal<RequestContext>REQUEST_CONTEXT_INHERITABLE_THREAD_LOCAL=......
  • 【MybatisPlus】SpringBoot快速集成MybatisPlus
    目录一、引入依赖二、逆向生成工具类三、其他配置 一、引入依赖<!--mysql--><dependency><groupId>mysql</groupId><artifactId>mysql-con......
  • Hibernate注解配置一对多双向关联和多对一单向关联
    Hibernate提供了HibernateAnnotations扩展包,使用注解完成映射。在Hibernate3.3之前,需单独下载注解开发包 配置持久化类配置关联关系 下面我们先从多对一单向关联关系讲起......
  • 手把手的SpringBoot教程,SpringBoot创建web项目(三)
    这节课,我们来学习一下SpringBoot的环境配置,在SpringBoot中,所有的配置都写在application.properties中:我们启动项目,默认端口是8080,我们现在给他配置一个8088:server.port=808......
  • Hibernate环境部署与注解简单使用
    Hibernate是对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,对对象进行持久化。它可以自动生成SQL语句,自动执行。简单的说就是帮你把XXXDAO的繁琐工作都给自动完成了,要......
  • SpringBoot(九):整合Mybatis
    一、导入依赖<dependency><groupId>org.mybatis.spring.boot</groupId><artifactId>mybatis-spring-boot-starter</artifactId>......