使用java config配置spring mvc + swagger

来源:互联网 发布:java interface是什么 编辑:程序博客网 时间:2024/04/23 22:15

swagger 配置


import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.EnableWebMvc;


import springfox.documentation.builders.ApiInfoBuilder;
import springfox.documentation.builders.PathSelectors;
import springfox.documentation.builders.RequestHandlerSelectors;
import springfox.documentation.service.ApiInfo;
import springfox.documentation.spi.DocumentationType;
import springfox.documentation.spring.web.plugins.Docket;
import springfox.documentation.swagger2.annotations.EnableSwagger2;


@Configuration
@EnableSwagger2
@EnableWebMvc
public class Swagger2 {
    @Value("${swagger.host}")
    private String swaggerHost;
    @Bean
    public Docket createRestApi() {
        return new Docket(DocumentationType.SWAGGER_2)
                .host(swaggerHost)
                .apiInfo(apiInfo())
//                .pathMapping("/")
//                .directModelSubstitute(Date.class,String.class)
                .select()
                .apis(RequestHandlerSelectors.basePackage("com.youngo"))
                .paths(PathSelectors.any())
                .build();
    }
    private ApiInfo apiInfo() {
        return new ApiInfoBuilder()
                .title("蓝鲸灵 APIs")
                .contact("程序猿charlie")
                .version("1.0")
                .build();
    }
}



spring mvc 配置




import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.HandlerExceptionResolver;
import org.springframework.web.servlet.config.annotation.EnableWebMvc;
import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurerAdapter;
import org.springframework.web.servlet.view.BeanNameViewResolver;


@Configuration
@EnableWebMvc
public class WebMvcConfig extends WebMvcConfigurerAdapter{

private Logger logger = LoggerFactory.getLogger(this.getClass());

/**
* 静态资源声明
*/
@Override
public void addResourceHandlers(ResourceHandlerRegistry registry) {  
        logger.info("addResourceHandlers");  
        registry.addResourceHandler("/webjars/**").addResourceLocations(
                "classpath:/META-INF/resources/webjars/");
        registry.addResourceHandler("/swagger-ui.html").addResourceLocations("classpath:/META-INF/resources/swagger-ui.html");//springfox-swagger-ui-2.6.1.jar 静态资源声明
    


}  

/**
* 功能描述:注册异常控制器
*
* @author  彭志(pengzhistar@sina.com.cn)
* <p>创建日期 :2017年11月18日 下午6:06:53</p>
*
* @return
*
* <p>修改历史 :(修改人,修改时间,修改原因/内容)</p>
*/
@Bean(name ="handlerExceptionResolver")
public HandlerExceptionResolver handlerExceptionResolver() {
logger.info("Init mvc handler exception resolver[com.youngo.erp.config.ExceptionHandler]..");

return new ExceptionHandler();
}

/**
* 功能描述:注册view响应器
*
* @author  彭志(pengzhistar@sina.com.cn)
* <p>创建日期 :2017年11月18日 下午6:06:28</p>
*
* @return
*
* <p>修改历史 :(修改人,修改时间,修改原因/内容)</p>
*/
@Bean(name ="commonView")
public CommonView createCommonView() {
logger.info("Init mvc view..");
return new CommonView();
}
/**
* 功能描述:开启view响应控制器
*
* @author  彭志(pengzhistar@sina.com.cn)
* <p>创建日期 :2017年11月18日 下午6:06:41</p>
*
* @return
*
* <p>修改历史 :(修改人,修改时间,修改原因/内容)</p>
*/
@Bean(name ="viewResolver")
public BeanNameViewResolver beanNameViewResolver() {
logger.info("Init mvc view resolver..");

BeanNameViewResolver viewResolver = new BeanNameViewResolver();
viewResolver.setOrder(10);

return viewResolver;
}

}

阅读全文
0 0