Swagger
Swagger可以很方便的直接生成项目的接口,便于前后端的分离式开发,并且它还具备调试等功能,可以说十分方便。以这篇文章记录一些Swagger在Springboot项目开发中的使用。
1. 引入依赖
<!-- swagger--><dependency><groupId>io.springfox</groupId><artifactId>springfox-swagger2</artifactId><version>2.7.0</version></dependency><dependency><groupId>io.springfox</groupId><artifactId>springfox-swagger-ui</artifactId><version>2.7.0</version></dependency>
2.Swagger接口注解
2.1 实体类
@ApiModel为实体类的解释说明
@ApiModel("User实体类")@Data@Repositorypublic class User {@ApiModelProperty("用户的ID")private String userName;private String password;private User user;}
2.2 Controller层
@Api为Controller类的解释说明
@ApiOperation为Controller类方法的解释说明
@Api("HelloController")@RestControllerpublic class HelloController {@ApiOperation("hello控制类")@RequestMapping(method = RequestMethod.GET, value = "/api/javainuse")public String sayHello() {return "Swagger Hello World";}@ApiOperation("测试登录")@RequestMapping(method = RequestMethod.POST,value = "/api/testLogin")public User send(String username, String password){User user = new User();User user1 = new User();user.setUserName(username);user.setPassword(password);user1.setUserName(username);user1.setPassword(password);user.setUser(user1);return user;}}
3. Swagger配置层
在这里进行SwaggerUI界面的配置,显示一些相关信息。
@Configuration@EnableSwagger2public class SpringFoxConfig {@Beanpublic Docket docket(){return new Docket(DocumentationType.SWAGGER_2).apiInfo(apiInfo()).select().apis(RequestHandlerSelectors.any()).build();}//配置Swagger的信息 apiInfoprivate ApiInfo apiInfo(){//作者信息Contact contact = new Contact("yao","none","1482089698@");return new ApiInfo("SwaggerDemo","这是一个DEMO","1.0","http://localhost:8080",contact,"Apache 2.0","/licenses/LICENSE-2.0",new ArrayList<VendorExtension>());}}
4. 显示接口的地址
http://localhost:8080/swagger-ui.html
(ps:这里的8080是你的项目默认启动端口,如果非8080可以自行修改)
5. 显示界面
其它技术文章
https://halo-2g7yx69u1c372d6f-1311471022.ap-shanghai./archives/swagger%E2%80%93zi-dong-sheng-cheng-jie-kou-wen-dang