4000-520-616
欢迎来到免疫在线!(蚂蚁淘生物旗下平台)  请登录 |  免费注册 |  询价篮
主营:原厂直采,平行进口,授权代理(蚂蚁淘为您服务)
咨询热线电话
4000-520-616
当前位置: 首页 > 新闻动态 >
新闻详情
example=oKong) @NotBlank(message = 名称不能为空) String name...
来自 : www.baoding-soft.com/news/soft 发布时间:2021-03-24

媒介

前一章节先容了mybatisPlus的集成和简朴利用,本章节开始接着上一章节的用户表,举办Swagger2的集成。此刻都履行前后端疏散开拓和微处事大行其道,分微处事及前后端疏散后,前后端开拓的相同本钱就增加了。所以一款强大的RESTful API文档就至关重要了。而今朝在后端规模,根基上是Swagger的天下了。

Swagger2先容

Swagger是一款RESTful接口的文档在线自动生成、成果测试成果框架。一个类型和完整的框架,用于生成、描写、挪用和可视化RESTful气势气魄的Web处事,加上swagger-ui,可以有很好的泛起。

\"example=oKong)

SpringBoot集成

这里选用的swagger版本为:2.8.0

0.pom依赖
 !--swagger --  dependency  groupId io.springfox /groupId  artifactId springfox-swagger2 /artifactId  version 2.8.0 /version  /dependency  dependency  groupId io.springfox /groupId  artifactId springfox-swagger-ui /artifactId  version 2.8.0 /version  /dependency 
1.编写设置文件(Swagger2Config.java)

主要是添加注解@EnableSwagger2和界说Docket的bean类。

@EnableSwagger2@Configurationpublic class SwaggerConfig { //是否开启swagger,正式情况一般是需要封锁的,可按照springboot的多情况设置举办配置 @Value(value = ${swagger.enabled} ) Boolean swaggerEnabled; @Bean public Docket createRestApi() { return new Docket(DocumentationType.SWAGGER_2).apiInfo(apiInfo()) // 是否开启 .enable(swaggerEnabled).select() // 扫描的路径包 .apis(RequestHandlerSelectors.basePackage( cn.lqdev.learning.springboot.chapter10 )) // 指定路径处理惩罚PathSelectors.any()代表所有的路径 .paths(PathSelectors.any()).build().pathMapping( /  private ApiInfo apiInfo() { return new ApiInfoBuilder() .title( SpringBoot-Swagger2集成和利用-demo示例 ) .description( oKong | 趔趄的猿 ) // 作者信息 .contact(new Contact( oKong , https://blog.lqdev.cn/ , 499452441@qq.com )) .version( 1.0.0 ) .build();}
3.添加文档内容(一般上是在Controller,请求参数长举办注解,这里以上章节的UserController举办设置)

UserController

/** * 用户节制层 简朴演示增删改查及分页 * 新增了swagger文档内容 2018-07-21 * @author oKong@RestController@RequestMapping( /user )@Api(tags= 用户API )public class UserController { @Autowired IUserService userService; @PostMapping( add ) @ApiOperation(value= 用户新增 ) //正常业务时, 需要在user类内里举办事务节制,节制层一般不举办业务节制的。 //@Transactional(rollbackFor = Exception.class) public Map String,String addUser(@Valid @RequestBody UserReq userReq){ User user = new User(); user.setCode(userReq.getCode()); user.setName(userReq.getName()); //由于配置了主键计策 id可不消赋值 会自动生成 //user.setId(0L); userService.insert(user); Map String,String result = new HashMap String,String  result.put( respCode , 01  result.put( respMsg , 新增乐成  //事务测试 //System.out.println(1/0); return result; @PostMapping( update ) @ApiOperation(value= 用户修改 )  public Map String,String updateUser(@Valid @RequestBody UserReq userReq){ if(userReq.getId() == null || .equals(userReq.getId())) { throw new CommonException( 0000 , 更新时ID不能为空  User user = new User(); user.setCode(userReq.getCode()); user.setName(userReq.getName()); user.setId(Long.parseLong(userReq.getId()));  userService.updateById(user); Map String,String result = new HashMap String,String  result.put( respCode , 01  result.put( respMsg , 更新乐成  return result; @GetMapping( /get/{id} ) @ApiOperation(value= 用户查询(ID) )  @ApiImplicitParam(name= id ,value= 查询ID ,required=true) public Map String,Object getUser(@PathVariable( id ) String id){ //查询 User user = userService.selectById(id); if(user == null) { throw new CommonException( 0001 , 用户ID: + id + ,未找到  UserResp resp = UserResp.builder() .id(user.getId().toString()) .code(user.getCode()) .name(user.getName()) .status(user.getStatus()) .build(); Map String,Object result = new HashMap String,Object  result.put( respCode , 01  result.put( respMsg , 乐成  result.put( data , resp); return result; @GetMapping( /page ) @ApiOperation(value= 用户查询(分页) )  public Map String,Object pageUser(int current, int size){ //分页 Page User page = new Page (current, size); Map String,Object result = new HashMap String,Object  result.put( respCode , 01  result.put( respMsg , 乐成  result.put( data , userService.selectPage(page)); return result;}

本文链接: http://okong.immuno-online.com/view-713813.html

发布于 : 2021-03-24 阅读(0)
公司介绍
品牌分类
其他
联络我们
服务热线:4000-520-616
(限工作日9:00-18:00)
QQ :1570468124
手机:18915418616