swagger和spring MVC集成实例代码分享
写在前面
一直都想弄个小demo,让牛牛们都接触一下swagger,目前来说swagger用的公司还是蛮多的,因为好用所以用的多,
给我最大的感触就是,不用写文档。前后端都可以用的着的一个技术,详细的说了,写看下文!
开发工具:eclipse
开发环境:win7 , jdk 1.8
主要技术点:swagger , springmvc , spring Boot
主要几个文件交代
这里不需要把项目打包,然后添加到tomcat里面,启动方式为 spring boot 只要运行这个类即可。
我设置的是8081,也就意味着访问时 端口为8081
这个文件可随意修改!
项目总体结构
运行结构图
demo很小,很简单,但是够入门朋友看的了!
也使用了maven!
不会玩maven的请勿下载! 不会玩maven的请勿下载! 不会玩maven的请勿下载!
tips: 使用maven 编译完后 运行Application类,然后访问 http://localhost:8081/swagger/index.html/ (这里的端口如果你修改了也要改为你修改的端口!)
附swagger部分注解说明
1. @Api
用在类上,说明该类的作用
@Api(value = "UserController", description = "用户相关api")
2. @ApiOperation
用在方法上,说明方法的作用
@ApiOperation(value = "查找用户", notes = "查找用户", httpMethod = "GET", produces = MediaType.APPLICATION_JSON_UTF8_VALUE)
3 @ApiImplicitParams
用在方法上包含一组参数说明
4. @ApiImplicitParam
用在@ApiImplicitParams注解中,指定一个请求参数的各个方面
paramType:参数放在哪个地方
header–>请求参数的获取:@RequestHeader
query–>请求参数的获取:@RequestParam
path(用于restful接口)–>请求参数的获取:@PathVariable
body(不常用)
form(不常用)
name:参数名
dataType:参数类型
required:参数是否必须传
value:参数的意思
defaultValue:参数的默认值
@ApiImplicitParams({ @ApiImplicitParam(name = "id", value = "唯一id", required = true, dataType = "Long", paramType = "path"), })
5. @ApiResponses
用于表示一组响应
6. @ApiResponse
用在@ApiResponses中,一般用于表达一个错误的响应信息
code:数字,例如400
message:信息,例如”请求参数没填好”
response:抛出异常的类
@ApiResponses(value = { @ApiResponse(code = 400, message = "No Name Provided") })
7. @ApiModel
描述一个Model的信息(这种一般用在post创建的时候,使用@RequestBody这样的场景,请求参数无法使用@ApiImplicitParam注解进行描述的时候)
@ApiModel(value = "用户实体类")
8. @ApiModelProperty
描述一个model的属性
@ApiModelProperty(value = "登录用户")
猜你喜欢
- SpringMVC的三种统一异常处理实例代码分享
- Spring4+Redis+Shiro集成学习项目实例
- maven搭建 spring mvc实例代码
- springmvc+spring jdbc+velocity入门教程及其代码实例
- Spring MVC初学者的Hello World入门学习代码实例
- Spring MVC用户注册配置入门教程及其代码实例demo下载
- Spring MVC基于注解配置入门教程及其代码实例
- SpringBoot整合Swagger基本实现
- SpringMvc整合Mybatis搭建java Web入门项目实例,是基于MAVEN的java web工程
- bootstrap jquery underscore backbone 新浪微博 springmvc整合demo代码
- spring boot + swagger2集成api接口文档
- java servlet集成润乾报表实例
- /
- /swagger-springboot
- /swagger-springboot/.classpath
- /swagger-springboot/.gitignore
- /swagger-springboot/.project
- /swagger-springboot/.settings
- /swagger-springboot/.settings/org.eclipse.core.resources.prefs
- /swagger-springboot/.settings/org.eclipse.jdt.core.prefs
- /swagger-springboot/.settings/org.eclipse.m2e.core.prefs
- /swagger-springboot/pom.xml
- /swagger-springboot/src
- /swagger-springboot/src/main
- /swagger-springboot/src/main/java
- /swagger-springboot/src/main/java/com
- /swagger-springboot/src/main/java/com/demo
- /swagger-springboot/src/main/java/com/demo/swagger
- /swagger-springboot/src/main/java/com/demo/swagger/springmvc
- /swagger-springboot/src/main/java/com/demo/swagger/springmvc/web
- /swagger-springboot/src/main/java/com/demo/swagger/springmvc
- /swagger-springboot/src/main/java/com/demo/swagger
- /swagger-springboot/src/main/java/com/demo
- /swagger-springboot/src/main/java/com
- /swagger-springboot/src/main/java
- /swagger-springboot/src/main
- /swagger-springboot
- 证精 基于浏览器首选语言的springmvc和freemarker国际化配置的实现
- 原 基于maven与springMVC的拦截器Interceptor,控制器Controller的使用
- springmvc @RequestMapping注解的入门配置教程
- 精 SpringMVC的三种统一异常处理实例代码分享
- 证精 bootstrap jquery underscore backbone 新浪微博 springmvc整合demo代码
- 精 spring mvc-showcase,便于学习springmvc,maven工程,建议使用谷歌浏览器
- 原证精 springmvc @RequestMapping注解伪静态技术
- 原 springMVC注解与hibernate完美结合完成基本的增删改查demo源码下载
- 原 SpringMVC整合Redis demo小例子
- 原证精 java Web SpringMVC项目实现12306余票查询功能
- 原证 springmvc开发微信公众平台验证token接口教程及其java源代码分享
- 原 SpringMvc整合Mybatis搭建java Web入门项目实例,是基于MAVEN的java web工程