Spring Boot 整合 Swagger3 如何生成接口文档?,Java校招面试

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

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

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

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

value=“说明方法的用途、作用”

notes=“方法的备注说明”

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

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

name:参数名

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

required:参数是否必须传

paramType:参数放在哪个地方

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

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

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

· body(不常用)

· form(不常用)

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

defaultValue:参数的默认值

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

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

code:数字,例如400

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

response:抛出异常的类

@ApiModel:用于响应类上,表示一个返回响应数据的信息

(这种一般用在post创建的时候,使用@RequestBody这样的场景,

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

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

Controller层的配置:

@Api(tags = “用户信息管理”)

@RestController

@RequestMapping(“userRecord”)

public class UserRecordController extends ApiController {

/**

  • 服务对象

*/

@Resource

private UserRecordService userRecordService;

/**

  • 分页查询所有数据

  • @param page 分页对象

  • @param userRecord 查询实体

  • @return 所有数据

*/

@ApiOperation(“分页查询所有数据”)

@GetMapping(“page”)

public R selectAll(Page page, UserRecord userRecord) {

return success(this.userRecordService.page(page, new QueryWrapper<>(userRecord)));

}

/**

  • 通过主键查询单条数据

  • @param id 主键

  • @return 单条数据

*/

@ApiOperation(“通过主键查询单条数据”)

@GetMapping(“{id}”)

public R selectOne(@PathVariable Serializable id) {

return success(this.userRecordService.getById(id));

}

/**

  • 新增数据

  • @param userRecord 实体对象

  • @return 新增结果

*/

@ApiOperation(“新增数据”)

@PostMapping(“insert”)

public R insert(@RequestBody UserRecord userRecord) {

return success(this.userRecordService.save(userRecord));

}

/**

  • 修改数据

  • @param userRecord 实体对象

  • @return 修改结果

*/

@ApiOperation(“修改数据”)

@PutMapping(“update”)

public R update(@RequestBody UserRecord userRecord) {

return success(this.userRecordService.updateById(userRecord));

}

/**

  • 删除数据

  • @param idList 主键结合

  • @return 删除结果

*/

@ApiOperation(“删除数据”)

@DeleteMapping(“delete”)

public R delete(@RequestParam(“idList”) List idList) {

return success(this.userRecordService.removeByIds(idList));

}

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数Java工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年Java开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
img
img
img
img
img
img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Java开发知识点,真正体系化!

由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新

如果你觉得这些内容对你有帮助,可以添加V获取:vip1024b (备注Java)
img

最后

很多程序员,整天沉浸在业务代码的 CRUD 中,业务中没有大量数据做并发,缺少实战经验,对并发仅仅停留在了解,做不到精通,所以总是与大厂擦肩而过。

我把私藏的这套并发体系的笔记和思维脑图分享出来,理论知识与项目实战的结合,我觉得只要你肯花时间用心学完这些,一定可以快速掌握并发编程。

不管是查缺补漏还是深度学习都能有非常不错的成效,需要的话记得帮忙点个赞支持一下

整理不易,觉得有帮助的朋友可以帮忙点赞分享支持一下小编~

最后

很多程序员,整天沉浸在业务代码的 CRUD 中,业务中没有大量数据做并发,缺少实战经验,对并发仅仅停留在了解,做不到精通,所以总是与大厂擦肩而过。

我把私藏的这套并发体系的笔记和思维脑图分享出来,理论知识与项目实战的结合,我觉得只要你肯花时间用心学完这些,一定可以快速掌握并发编程。

不管是查缺补漏还是深度学习都能有非常不错的成效,需要的话记得帮忙点个赞支持一下

整理不易,觉得有帮助的朋友可以帮忙点赞分享支持一下小编~

  • 23
    点赞
  • 26
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Swagger是一种API文档生成工具,可以帮助开发人员自动生成API文档。Swagger3是Swagger的最新版本,它提供了更多的功能和更好的用户体验。下面是使用Swagger3生成接口文档的步骤: 1.在pom.xml文件中添加Swagger3的依赖: ```xml <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-boot-starter</artifactId> <version>3.0.0</version> </dependency> ``` 2.添加Swagger配置类: ```java @Configuration @EnableSwagger2WebMvc public class SwaggerConfig { @Bean public Docket api() { return new Docket(DocumentationType.SWAGGER_2) .select() .apis(RequestHandlerSelectors.basePackage("com.example.demo.controller")) .paths(PathSelectors.any()) .build() .apiInfo(apiInfo()); } private ApiInfo apiInfo() { return new ApiInfoBuilder() .title("API文档") .description("这是一个API文档示例") .version("1.0.0") .build(); } } ``` 3.在Controller中添加Swagger接口注解: ```java @RestController @RequestMapping("/api") @Api(tags = "用户管理") public class UserController { @GetMapping("/users") @ApiOperation("获取用户列表") public List<User> getUsers() { // ... } @PostMapping("/users") @ApiOperation("创建用户") public void createUser(@RequestBody User user) { // ... } @GetMapping("/users/{id}") @ApiOperation("获取用户信息") public User getUserById(@PathVariable Long id) { // ... } @PutMapping("/users/{id}") @ApiOperation("更新用户信息") public void updateUser(@PathVariable Long id, @RequestBody User user) { // ... } @DeleteMapping("/users/{id}") @ApiOperation("删除用户") public void deleteUser(@PathVariable Long id) { // ... } } ``` 4.启动应用程序并访问http://localhost:8080/swagger-ui/index.html,即可查看和测试接口。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值