<dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger2</artifactId> <version>2.8.0</version> </dependency> <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger-ui</artifactId> <version>2.8.0</version> </dependency>
版本信息,能夠經過swagger官網查詢,或經過maven倉庫搜索!html
import org.springframework.context.annotation.Configuration; 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 public class Swagger2Config { public Docket createRestApi(){ return new Docket(DocumentationType.SWAGGER_2) .apiInfo(apiInfo()) .select()
.apis(RequestHandlerSelectors.basePackage("com.example")) .paths(PathSelectors.any()) .build(); } private ApiInfo apiInfo(){ return new ApiInfoBuilder() .title("Spring Boot————Swagger2構建Restful APIs") .description("消息中心使用") .termsOfServiceUrl("https://swagger.io") .version("1.0") .build(); } }
//代替@responsebody和@Controller,返回json格式 @RestController //方法的描述 @ApiOperation //單個參數 @ApiImplicitParam(name = "",value = "",requires = true/false,dataType = "") //多個參數 @ApiImplicitParams{ @ApiImplicitParam(name = "",value = "",requires = true/false,dataType = ""), @ApiImplicitParam(name = "",value = "",requires = true/false,dataType = "") } //配置url映射 @RequestMapping //url中佔位參數 @PathVariable
通常用於執行查詢操做。get請求中URL有長度限制,而且url中的數據都明文暴露。java
在作一些修改的操做的時候使用,突破了長度限制,且數據存放在body中。web
HEAD請求只會返回首部的信息,不會返回相應體。一般用於測試數據是否存在,能夠作心跳測試等。spring
與GET相反,用於改變某些內容。json
刪除某些資源時使用。api
用於觀察某一請求在到達服務前的變化,該請求會在到達服務前的最後一步返回原始信息,以此來觀察到,數據在中間傳輸時是否有過修改。安全
常常用於跨站攻擊,有必定的安全隱患。服務器
詢問服務器支持的方法restful
用於更新部分字段時使用,區別於PUT的所有提交,當更新的部分數據不存在時則新建,相似於neworupdate。架構
更多詳情可查看RESTFUL架構詳解