springboot集成 Swagger2的使用
程序员文章站
2022-07-02 22:07:41
...
1.jar包
2.配置
3.controller
从配置说起
@Configuration
@EnableSwagger2
public class Swagger2 {
@Bean
public Docket createRestApi() {
//Swagger中添加请求头
ParameterBuilder userNamePar = new ParameterBuilder();
List<Parameter> pars = new ArrayList<Parameter>();
userNamePar.name("x_user_name").description("登陆用户名!!!")
.modelRef(new ModelRef("string")).parameterType("header")
.required(false).build(); //header中的x_user_name参数非必填,传空也可以
pars.add(userNamePar.build()); //根据每个方法名也知道当前方法在设置什么参数
return new Docket(DocumentationType.SWAGGER_2).apiInfo(apiInfo())
.select()
.apis(RequestHandlerSelectors.basePackage("com.××××.controller"))
.paths(PathSelectors.any()).build()
.globalOperationParameters(pars);
}
@SuppressWarnings("deprecation")
private ApiInfo apiInfo() {
return new ApiInfoBuilder()
.title("Demo RESTful APIs")
.description("Demo RESTful APIs")
.termsOfServiceUrl("")
.contact("").version("0.0.1-SNAPSHOT").build();
}
}
controller
@CrossOrigin(origins = "*") //解决跨域
@RefreshScope
@RestController
@Api(tags = {"Module"})
@RequestMapping("/Manager/Module")
public class ModuleManager {
private Logger logger = LoggerFactory.getLogger(ModuleManager.class);
@Autowired
private SysModuleService sysModuleService;
@ApiOperation(value="获取父级模块",notes="通过该接口获取父级模块,获取PId=0的模块")
@GetMapping("/Parents")
// public ResponseResult getModuleParents(@PathVariable Integer page_no, @PathVariable Integer page_size) {
public ResponseResult getModuleParents
(@RequestParam(value = "page_no",required = false) Integer page_no, @RequestParam(value = "page_size",required = false)
Integer page_size) {
logger.info("getModuleParents()");
HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest();
String username = request.getHeader("x_user_name");
//校验参数合法性
if(username == null){
//logger.info("请先登录系统!!!");
ExceptionCast.cast(CommonCode.UNAUTHORIZED);
}
if (page_no==null || page_size==null || page_no<1 || page_size < 0){
return new ResponseResult(CommonCode.INVALID_PARAM);
}
ResponseResult moduleParentList = sysModuleService.getModuleParents(page_no, page_size);
return moduleParentList;
}
}
这辈子坚持与不坚持都不可怕,怕的是独自走在坚持的道路上!
欢迎加入技术群聊!
上一篇: springboot + swagger2的简单使用
下一篇: 这多不好意思啊
推荐阅读
-
详解SpringBoot集成jsp(附源码)+遇到的坑
-
详解Springboot配置文件的使用
-
php集成套件服务器xampp安装使用教程(适合第一次玩PHP的新手)
-
SpringBoot集成阿里巴巴Druid监控的示例代码
-
springboot中使用redis的方法代码详解
-
微信公众平台开发教程⑥ 微信开发集成类的使用图文详解
-
详解springboot中使用异步的常用两种方式及其比较
-
SpringBoot使用AOP+注解实现简单的权限验证的方法
-
使用Spring Boot集成FastDFS的示例代码
-
SpringBoot项目使用RedisTemplate遇到key值\xac\xed\x00\x05t\x00的坑