注解swagger2

目录

 

@RestController:

@Service

@ResponseBody

@Slf4j

@Api(tags ="",value="")

@ApiOperation(value = "",notes="")

@ApiImplicitParams:

@ApiResponses:

@ApiModel:

@ApiModelProperty:

@Valid

@Autowired

@ApiIgnore

@Data

@NoArgsConstructor

@RequiredArgsConstructor

@AllArgsContructor

@RequestMapping

@PostMapping("/products/add")

@PutMapping("/products/update")

@GetMapping("/products/detail")

@DeleteMapping("/products/delete")


@RestController:

@RestController注解相当于@ResponseBody + @Controller合在一起的作用

1.如果只是使用@RestController注解Controller,则Controller中的方法无法返回jsp页面,或者html。

2.如果需要返回到指定页面,则需要用 @Controller配合视图解析器InternalResourceViewResolver才行。

3.如果需要返回JSON,XML或自定义mediaType内容到页面,则需要在对应的方法上加上@ResponseBody注解。

@Service

如果一个类带了@Service注解,将自动注册到Spring容器,不需要再在applicationContext.xml文件定义bean了,

类似的还包括@Component、@Repository、@Controller。

@ResponseBody

作用是将controller的方法返回的对象通过适当的转换器转换为指定的格式之后,写入到response对象的body区,通常用来返回JSON数据或者是XML

数据,需要注意的呢,在使用此注解之后不会再走试图处理器,而是直接将数据写入到输入流中,他的效果等同于通过response对象输出指定格式的数据。

@Slf4j

实现日志输出

@Api(tags ="",value="")

用在请求的类上,表示对类的说明

tags="说明该类的作用,可以在UI界面上看到的注解"

value="该参数没什么意义,在UI界面上也看到,所以不需要配置"

@ApiOperation(value = "",notes="")

用在请求的方法上,说明方法的用途、作用

value="说明方法的用途、作用"

notes="方法的备注说明"

@ApiImplicitParams:

用在请求的方法上,表示一组参数说明

@ApiImplicitParams:用在@ApiImplicitParams注解中,指定一个请求参数的各个方面

name:参数名

value:参数的汉字说明、解释

required:参数是否必须传

paramType:参数放在哪个地方

   · header --> 请求参数的获取:@RequestHeader

   · query --> 请求参数的获取:@RequestParam

   · path(用于restful接口)--> 请求参数的获取:@PathVariable

   · body(不常用)

   · form(不常用)

dataType:参数类型,默认String,其它值dataType="Integer"

defaultValue:参数的默认值

@ApiResponses:

用在请求的方法上,表示一组响应

@ApiResponses:用在@ApiResponses中,一般用于表达一个错误的响应信息

code:数字,例如400

message:信息,例如"请求参数没填好"

response:抛出异常的类

@ApiModel:

用于响应类上,表示一个返回响应数据的信息(这种一般用在post创建的时候,使用@RequestBody这样的场景,

请求参数无法使用@ApiImplicitParam注解进行描述的时候)

@ApiModelProperty:

用在属性上,描述响应类的属性

value–字段说明 

name–重写属性名字 

dataType–重写属性类型 

required–是否必填 

example–举例说明 

hidden–隐藏

@Valid

用于验证注解是否符合要求,直接加在变量user之前,在变量中添加验证信息的要求,当不符合要求时就会在方法中返回message的错误提示信息。

@Null 限制只能为null

@NotNull 限制必须不为null

@AssertFalse 限制必须为false

@AssertTrue 限制必须为true

@DecimalMax(value) 限制必须为一个不大于指定值的数字

@DecimalMin(value) 限制必须为一个不小于指定值的数字

@Digits(integer,fraction) 限制必须为一个小数,且整数部分的位数不能超过integer,小数部分的位数不能超过fraction

@Future 限制必须是一个将来的日期

@Max(value) 限制必须为一个不大于指定值的数字

@Min(value) 限制必须为一个不小于指定值的数字

@Past 限制必须是一个过去的日期

@Pattern(value) 限制必须符合指定的正则表达式

@Size(max,min) 限制字符长度必须在min到max之间

@Past 验证注解的元素值(日期类型)比当前时间早

@NotEmpty 验证注解的元素值不为null且不为空(字符串长度不为0、集合大小不为0)

@NotBlank 验证注解的元素值不为空(不为null、去除首位空格后长度为0),

不同于@NotEmpty,@NotBlank只应用于字符串且在比较时会去除字符串的空格

@Email 验证注解的元素值是Email,也可以通过正则表达式和flag指定自定义的email格式

@Autowired

它可以对类成员变量、方法及构造函数进行标注,完成自动装配的工作。 通过 @Autowired的使用来消除 set ,get方法。

@ApiIgnore

加注解在类或者方法上

表示在swagger页面,忽略掉这个类或者方法,不显示

@Data

注解在类上, 为类提供读写属性, 此外还提供了 equals()、hashCode()、toString() 方法

@NoArgsConstructor

是Lombok插件三种生成不同构造方法的注解之一,来完成项目中不同构造方法的需求。

生成一个无参数的构造方法

@RequiredArgsConstructor

是Lombok插件三种生成不同构造方法的注解之一,来完成项目中不同构造方法的需求。

?会生成一个包含所有变量

@AllArgsContructor

是Lombok插件三种生成不同构造方法的注解之一,来完成项目中不同构造方法的需求。

会生成一个包含常量,和标识了NotNull的变量的构造方法。生成的构造方法是私有的private

@RequestMapping

如果没有指定请求方式,将接收Get、Post、Head、Options等所有的请求方式

@PostMapping("/products/add")

是一个组合注解,是@RequestMapping(method = RequestMethod.POST)的缩写。

@PutMapping("/products/update")

@GetMapping("/products/detail")

是一个组合注解,是@RequestMapping(method = RequestMethod.GET)的缩写。该注解将HTTP Get 映射到 特定的处理方法上。

@DeleteMapping("/products/delete")

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值