找传奇、传世资源到传世资源站!
Java 正文

swagger+springboot 入门级示例

8.5玩家评分(1人评分)
下载后可评
介绍 评论 失效链接反馈

package com.cjt.web;import java.util.ArrayList;import java.util.Collections;import java.util.HashMap;import java.util.List;import java.util.Map;import org.springframework.http.ResponseEntity;import org.springframework.web.bind.annotation.PathVariable;import org.springframework.web.bind.annotation.RequestBody;import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.bind.annotation.RequestMethod;import org.springframework.web.bind.annotation.RestController;import com.cjt.config.JsonResult;import comcjt.entity.User;import io.swagger.annotations.ApiImplicitParam;import io.swagger.annotations.ApiImplicitParams;import io.swagger.annotations.ApiOperation;import springfox.documentation.annotations.ApiIgnore;@RestControllerpublic class UserController {// 创建线程安全的Mapstatic Map<Integer, User> users = Collections.synchronizedMap(new HashMap<Integer, User>());/** * 根据ID查询用户 * @param id * @return */@ApiOperation(value="获取用户详细信息", notes="根据url的id来获取用户详细信息")@ApiImplicitParam(name = "id", value = "用户ID", required = true, dataType = "Integer", paramType = "path")@RequestMapping(value = "user/{id}", method = RequestMethod.GET)public ResponseEntity<JsonResult> getUserById (@PathVariable(value = "id") Integer id){JsonResult r = new JsonResult();try {User user = users.get(id);r.setResult(user);r.setStatus("ok");} catch (Exception e) {r.setResult(e.getClass().getName() ":" e.getMessage());r.setStatus("error");e.printStackTrace();}return ResponseEntity.ok(r);}/** * 查询用户列表 * @return */@ApiOperation(value="获取用户列表", notes="获取用户列表")@RequestMapping(value = "users", method = RequestMethod.GET)public ResponseEntity<JsonResult> getUserList (){JsonResult r = new JsonResult();try {List<User> userList = new ArrayList<User>(users.values());r.setResult(userList);r.setStatus("ok");} catch (Exception e) {r.setResult(e.getClass().getName() ":" e.getMessage());r.setStatus("error");e.printStackTrace();}return ResponseEntity.ok(r);}/** * 添加用户 * @param user * @return */@ApiOperation(value="创建用户", notes="根据User对象创建用户")@ApiImplicitParam(name = "user", value = "用户详细实体user", required = true, dataType = "User")@RequestMapping(value = "user", method = RequestMethod.POST)public ResponseEntity<JsonResult> add (@RequestBody User user){JsonResult r = new JsonResult();try {users.put(user.getId(), user);r.setResult(user.getId());r.setStatus("ok");} catch (Exception e) {r.setResult(e.getClass().getName() ":" e.getMessage());r.setStatus("error");e.printStackTrace();}return ResponseEntity.ok(r);}/** * 根据id删除用户 * @param id * @return */@ApiOperation(value="删除用户", notes="根据url的id来指定删除用户")@ApiImplicitParam(name = "id", value = "用户ID", required = true, dataType = "Long", paramType = "path")@RequestMapping(value = "user/{id}", method = RequestMethod.DELETE)public ResponseEntity<JsonResult> delete (@PathVariable(value = "id") Integer id){JsonResult r = new JsonResult();try {users.remove(id);r.setResult(id);r.setStatus("ok");} catch (Exception e) {r.setResult(e.getClass().getName() ":" e.getMessage());r.setStatus("error");e.printStackTrace();}return ResponseEntity.ok(r);}/** * 根据id修改用户信息 * @param user * @return */@ApiOperation(value="更新信息", notes="根据url的id来指定更新用户信息")@ApiImplicitParams({@ApiImplicitParam(name = "id", value = "用户ID", required = true, dataType = "Long",paramType = "path"),@ApiImplicitParam(name = "user", value = "用户实体user", required = true, dataType = "User")})@RequestMapping(value = "user/{id}", method = RequestMethod.PUT)public ResponseEntity<JsonResult> update (@PathVariable("id") Integer id, @RequestBody User user){JsonResult r = new JsonResult();try {User u = users.get(id);u.setUsername(user.getUsername());u.setAge(user.getAge());users.put(id, u);r.setResult(u);r.setStatus("ok");} catch (Exception e) {r.setResult(e.getClass().getName() ":" e.getMessage());r.setStatus("error");e.printStackTrace();}return ResponseEntity.ok(r);}@ApiIgnore//使用该注解忽略这个API@RequestMapping(value = "/hi", method = RequestMethod.GET)public String jsonTest() {return " hi you!";}/*@Api:修饰整个类,描述Controller的作用 @ApiOperation:描述一个类的一个方法,或者说一个接口 @ApiParam:单个参数描述 @ApiModel:用对象来接收参数 @ApiProperty:用对象接收参数时,描述对象的一个字段 @ApiResponse:HTTP响应其中1个描述 @ApiResponses:HTTP响应整体描述 @ApiIgnore:使用该注解忽略这个API @ApiError :发生错误返回的信息 @ApiImplicitParam:一个请求参数 @ApiImplicitParams:多个请求参数 */}

评论

发表评论必须先登陆, 您可以 登陆 或者 注册新账号 !


在线咨询: 问题反馈
客服QQ:174666394

有问题请留言,看到后及时答复