springboot集成 Swagger2的使用

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;
    }
    }

參考博客

這輩子堅持與不堅持都不可怕,怕的是獨自走在堅持的道路上!
歡迎加入技術羣聊!
在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章