所需jar包(2.6.1)
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger2</artifactId>
<version>${swagger.vaersion}</version>
</dependency>
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger-ui</artifactId>
<version>${swagger.vaersion}</version>
</dependency>
import com.alibaba.fastjson.JSONObject;
import io.swagger.annotations.ApiOperation;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.ResponseBody;
import pers.aidenj.ostrich.model.Dictionary;
/**
* Created by dell、 on 2017/7/6.
*/
@Controller
@RequestMapping("swagger")
public class SwaggerDemoController {
/**
* 隐藏此接口
* @return
*/
@ApiOperation(value = "获取**详细信息", notes = "根据url的id来获取**详细信息", httpMethod = "POST", hidden = true)
@RequestMapping(value="getDemo01", method= RequestMethod.POST)
@ResponseBody
private JSONObject getDemo01(){
return null;
}
@RequestMapping(value="getDemo02", method= RequestMethod.POST)
@ResponseBody
public JSONObject getDemo02(String name,String age){
JSONObject jo = new JSONObject();
jo.put("name",name);
jo.put("age",age);
return jo;
}
@ApiOperation(value = "测试Demo接口 03", notes = "根据相关信息查询信息", httpMethod = "DELETE")
@RequestMapping(value="getDemo03", method= RequestMethod.POST)
@ResponseBody
public JSONObject getDemo03(Dictionary dictionary){
JSONObject jo = new JSONObject();
jo.put("Dictionary",dictionary);
return jo;
}
}
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 org.springframework.web.servlet.config.annotation.WebMvcConfigurationSupport;
import springfox.documentation.builders.ApiInfoBuilder;
import springfox.documentation.builders.PathSelectors;
import springfox.documentation.builders.RequestHandlerSelectors;
import springfox.documentation.service.ApiInfo;
import springfox.documentation.service.Contact;
import springfox.documentation.spi.DocumentationType;
import springfox.documentation.spring.web.plugins.Docket;
import springfox.documentation.swagger2.annotations.EnableSwagger2;
@EnableWebMvc
@EnableSwagger2
@Configuration
@ComponentScan(basePackages ="pers.aidenj.ostrich")
public class RestApiConfig extends WebMvcConfigurationSupport {
@Bean
public Docket createRestApi() {
return new Docket(DocumentationType.SWAGGER_2)
.apiInfo(apiInfo())
.select()
.apis(RequestHandlerSelectors.basePackage("pers.aidenj.ostrich.controller"))
.paths(PathSelectors.any())
.build();
}
private ApiInfo apiInfo() {
return new ApiInfoBuilder()
.title("SpringMVC中使用Swagger2构建RESTful APIs Demo")
.termsOfServiceUrl("https://swagger.io/")
.contact(new Contact("swagger测试Demo","www.xxxxx.com","xxxxxxxxx@qq.com"))
.version("1.0.0")
.build();
}
}
*项目名/swagger-ui.html