基于Swagger3.0的真实项目常用注解

entity层

作用在类上

@Schema(类和字段皆用) Swagger3.0提供的注解,用来描述类或字段。

@Data 提供类的get、set、equals、hashCode、toString等方法。

@AllArgsConstructor 提供类的全参构造。

@NoArgsConstructor 提供类的无参构造。

@TableName(value=“”) 当数据库名与实体类名不一致或不符合驼峰命名时,需要在此注解指定表名。

作用在字段上

@TableId 标识实体类的主键

@TableField 标识除主键以外的其他字段

mapper层

作用在类上

@Mapper 描述数据层接口的注解

Service层

作用在类上

@Service 标记当前类为Service类,将当前类自动注入到Spring容器中。

@RequiredArgsConstructor 自动装配,可以代替@Autowired注解,需要注意的是在注入时需要用final定义,或者使用@NotNull注解。

@Slf4j lombok插件的注解,可以使用log打印日志。

@EnableAsync 开启异步功能。

作用在方法上

@Transactional(rollbackFor=Exception.class) 事务注解,在@Transactional注解中如果不配置rollbackFor属性,那么事物只会在遇到RuntimeException的时候才会回滚,加上rollbackFor=Exception.class,可以让事物在遇到非运行时异常时也回滚。

@Async(“AsyncTaskPond-RMS”) 标注方法为异步方法。

注意

如下方式会使@Async失效

  • 异步方法使用static修饰
  • 异步类没有使用@Component注解(或其他注解)导致spring无法扫描到异步类
  • 异步方法不能与被调用的异步方法在同一个类中
  • 类中需要使用@Autowired或@Resource等注解自动注入,不能自己手动new对象
  • 如果使用SpringBoot框架必须在启动类中增加@EnableAsync注解
query层

作用在类上

@Data 提供类的get、set、equals、hashCode、toString等方法。

@EqualsAndHashCode(callSuper=false) 当我们用于对象属性比较的时候:只比较子类的属性,也就是讲:如果两个对象子类属性一致,父类属性不一致,在比较时候出现相同的结果,也就是返回的true。

@Schema(description=“”)(类和字段皆用)

VO层

作用在类上

@Data 提供类的get、set、equals、hashCode、toString等方法。

@Schema(类和字段皆用) Swagger3.0提供的注解,用来描述类或字段

作用在字段上

@NotBlank(message=“”) 用在String上面属性的注解,不能为null,而且调用trim()后,长度必须大于0.

@JsonProperty(access = JsonProperty.Access.WRITE_ONLY) 只在序列化时使用修改后的字段,一般用在用户模块的密码字段上。

@Size(min = 6, max = 11, message = “账号长度必须是6-11个字符”) 字段校验

@Range(min = 0, max = 2, message = “性别只能为 0:未知,1:男,2:女”) 字段校验

@Email(message=“”) 邮箱校验

@JsonFormat(pattern=DateUtils.DATE_TIME_PATTERN) 时间校验

Convert层

作用在类上

@Mapper 描述数据层接口的注解

Controller层

作用在类上

@RestController @RestController 是@Controller和@ResponseBody 的结合,@Controller标注该类为Controller层,@ResponseBody该类的方法返回的数据转换成Json格式。

@RequestMapping 地址映射。

@AllArgsConstructor 默认只要是该类下的字段,无论什么修饰,都会被参与构造,与@RequiredConstructor不同的是,@RequiredConstructor只构造了有final或者@no-null修饰的字段。

@Tag(name=“”) Swagger中的注解,对类进行说明。

作用在方法上

@PostMapping 前端需要传参时用,例如保存功能的接口。

@Operation(summary=“”) 接口描述。

@PreAuthorize(“hasAuthority(‘xxx’)”) 用来鉴别当前登录用户所拥有的角色是否有xxx权限访问该接口。

@PutMapping 一般修改功能的接口使用。

@DeleteMapping 一般删除功能的接口使用。

@GetMapping 一般查询(不需要传参)功能的接口使用。

  • 5
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
Swagger 3.0 是一个用于构建、编写和管理 RESTful API 文档的工具。它提供了一种简单、易于理解和交互的方式来描述和测试 API,使开发者和客户端能够更好地了解和使用 API。Swagger 3.0 具有许多强大的功能,例如自动生成的 API 文档、交互式探索和调试界面、代码生成等等。 Swagger 3.0 的外网 Demo 可以是一个在线的展示页面,用于展示和测试一个特定的 RESTful API。在这个外网 Demo 中,用户可以看到该 API 的各个接口和其对应的请求参数、响应格式、请求方法等信息。同时,用户还可以在页面上进行接口的测试和调试,输入参数并查看对应的响应结果。 外网 Demo 的链接可以在 API 提供方的官方网站上找到。用户可以直接访问该链接,然后就可以开始使用 Swagger 3.0 的各项功能了。在 Demo 页面上,用户可以通过导航栏浏览 API 的各个接口,并查看每个接口的详细信息。用户还可以使用内置的测试界面进行请求参数的设置,并在发送请求后查看响应结果。 通过 Swagger 3.0 的外网 Demo,开发者和客户端可以更加直观地了解和使用 API。他们可以浏览 API 的各个接口,了解每个接口的功能和使用方法。同时,他们还可以通过 Demo 页面进行实际的测试和调试,验证 API 的正确性和稳定性。 总而言之,Swagger 3.0 的外网 Demo 是一个非常方便的工具,可以帮助开发者和客户端更好地了解和使用一个 RESTful API。它提供了简洁清晰的接口文档和交互式测试界面,使用户能够快速上手并使用 API。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

BUG忠实爱好者

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值