springmvc与swagger2

首先呢我们导入相关的jar包文件

springmvc与swagger2_第1张图片

springmvc与swagger2_第2张图片

为了方便copy我copy一份


        
            javax
            javaee-api
            7.0
        

        
        
            org.springframework
            spring-beans
            ${spring.version}
        

        
            org.springframework
            spring-context
            ${spring.version}
        

        
            org.springframework
            spring-web
            ${spring.version}
        

        
            org.springframework
            spring-webmvc
            ${spring.version}
        

        
        
            io.springfox
            springfox-swagger2
            ${swagger.version}
        

        
            io.springfox
            springfox-swagger-ui
            ${swagger.version}
        

        
    
        
            com.fasterxml.jackson.core
            jackson-core
            ${swagger.version}
        

        
            com.fasterxml.jackson.core
            jackson-databind
            ${swagger.version}
        

        
            com.fasterxml.jackson.core
            jackson-annotations
            ${swagger.version}
        

 

以上jar包有 spring的ioc的bean 上下文的context 还有springmvc的web 以集webmc  swagger2的整合還有swagger2返回的json数据用到的jar包

接下来我们分层编写

springmvc与swagger2_第3张图片

我嫩以User用户为案例 编写实体类

springmvc与swagger2_第4张图片

package cn.bdqn.beans;

/**
 * 实体类
 * @author ljn
 * @date 2017-10-21
 * @vesion 1.0
 * @detail
 */
public class User {

    protected Integer id;
    protected String name;
    public Integer getId() {
        return id;
    }
    public void setId(Integer id) {
        this.id = id;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public User(Integer id, String name) {
        super();
        this.id = id;
        this.name = name;
    }
    public User() {
        
    }
    
    
}

 

 接下来我们编写  SwaggerConfig类文件

springmvc与swagger2_第5张图片

copy 如下:

package cn.bdqn.swagger;

import io.swagger.annotations.BasicAuthDefinition;
import io.swagger.annotations.SwaggerDefinition;

import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.ComponentScan;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.EnableWebMvc;

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

/**
 * 启动@EnableSwagger2 swagger2 @EnableWebMvc mvc项目  扫描我的controller类  @componentScan
 * 配置变量
 * @author ljn
 * @date 2017-10-21
 * @vesion 1.0
 * @detail
 */
@Configuration
@EnableSwagger2
@EnableWebMvc
@ComponentScan(basePackages={"cn.bdqn.controller"})
public class SwaggerConfig {

    @Bean
    public Docket getDocket(){
        
        return new Docket(DocumentationType.SWAGGER_2).apiInfo(getApiInfo());
        
    }
    public ApiInfo getApiInfo(){
        ApiInfoBuilder ab=new ApiInfoBuilder();
        ab.title("title");
        ab.description("描述");
        return    ab.build();
    }
    
    
}

 

最后我们编写controller

springmvc与swagger2_第6张图片

以下是代码
@Controller("userController")
@Api(value = "干嘛的类", description = "描述")
@RequestMapping("user")
public class UserController {

    @RequestMapping("getLists")
    @ApiOperation(value = "查询集合", response = User.class, httpMethod = "POST")
    public List getLists(@ApiParam(value = "title") String title) {
        List lists = new ArrayList();
        User user = new User();
        user.setName(title);
        user.setId(1);
        User user1 = new User();
        user1.setName(title);
        user1.setId(1);
        lists.add(user);
        lists.add(user1);
        return lists;

    }

}
还有编写 springmvc.xml 文件springmvc与swagger2_第7张图片

 

 

copy 过来 如下:


    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:mvc="http://www.springframework.org/schema/mvc"
    xmlns:ctx="http://www.springframework.org/schema/context"
    xsi:schemaLocation="http://www.springframework.org/schema/beans
            http://www.springframework.org/schema/beans/spring-beans-4.3.xsd
            http://www.springframework.org/schema/context
            http://www.springframework.org/schema/context/spring-context.xsd
            http://www.springframework.org/schema/mvc
            http://www.springframework.org/schema/mvc/spring-mvc.xsd">
    
    
    
    
    
    
    
            class="org.springframework.web.servlet.view.InternalResourceViewResolver">
        
        
    
    
            mapping="swagger-ui.html" />
            mapping="/webjars/**" />

           
            最后编写 web.xml文件

 

springmvc与swagger2_第8张图片

然后我们启动服务器tomcat 访问springmvc与swagger2_第9张图片

localhost:8080/bokeyuan/swagger-ui.html  这是swagger api的路径

你可能感兴趣的:(springmvc与swagger2)