src/main/java/com/example/jz/config/DefaultExceptionHandlerConfig.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/example/jz/controller/AnnouncementController.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/example/jz/enums/BusinessHttpStatus.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/example/jz/exception/BusinessException.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/example/jz/modle/entity/R.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
src/main/java/com/example/jz/config/DefaultExceptionHandlerConfig.java
@@ -2,6 +2,7 @@ import com.example.jz.enums.BusinessHttpStatus; import com.example.jz.exception.BusinessException; import com.example.jz.modle.entity.R; import org.springframework.http.HttpStatus; import org.springframework.http.ResponseEntity; import org.springframework.stereotype.Controller; @@ -19,21 +20,21 @@ @ExceptionHandler(BindException.class) public ResponseEntity<String> bindExceptionHandler(BindException e) { public R<String> bindExceptionHandler(BindException e) { e.printStackTrace(); return ResponseEntity.status(HttpStatus.BAD_REQUEST).body(e.getBindingResult().getFieldErrors().get(0).getDefaultMessage()); return R.failed(e.getBindingResult().getFieldErrors().get(0).getDefaultMessage()); } @ExceptionHandler(MethodArgumentNotValidException.class) public ResponseEntity<String> methodArgumentNotValidExceptionHandler(MethodArgumentNotValidException e) { public R<String> methodArgumentNotValidExceptionHandler(MethodArgumentNotValidException e) { e.printStackTrace(); return ResponseEntity.status(HttpStatus.BAD_REQUEST).body(e.getBindingResult().getFieldErrors().get(0).getDefaultMessage()); return R.failed(e.getBindingResult().getFieldErrors().get(0).getDefaultMessage()); } @ExceptionHandler(BusinessException.class) public ResponseEntity<String> unauthorizedExceptionHandler(BusinessException e) { public R<String> unauthorizedExceptionHandler(BusinessException e) { e.printStackTrace(); return ResponseEntity.status(e.getHttpStatusCode()).body(e.getMessage()); return R.failed(e.getMessage()); } } src/main/java/com/example/jz/controller/AnnouncementController.java
@@ -2,11 +2,10 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.api.ApiController; import com.baomidou.mybatisplus.extension.api.R; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.example.jz.modle.entity.Announcement; import com.example.jz.modle.entity.R; import com.example.jz.service.AnnouncementService; import org.springframework.http.ResponseEntity; import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; @@ -36,8 +35,8 @@ * @return 所有数据 */ @GetMapping public ResponseEntity<Page<Announcement>> selectAll(Page<Announcement> page, Announcement announcement) { return ResponseEntity.ok(this.announcementService.page(page, new QueryWrapper<>(announcement))); public R<Page<Announcement>> selectAll(Page<Announcement> page, Announcement announcement) { return R.ok(this.announcementService.page(page, new QueryWrapper<>(announcement))); } /** @@ -48,7 +47,7 @@ */ @GetMapping("{id}") public R selectOne(@PathVariable Serializable id) { return success(this.announcementService.getById(id)); return R.ok(this.announcementService.getById(id)); } /** @@ -59,7 +58,7 @@ */ @PostMapping public R insert(@RequestBody Announcement announcement) { return success(this.announcementService.save(announcement)); return R.ok(this.announcementService.save(announcement)); } /** @@ -70,7 +69,7 @@ */ @PutMapping public R update(@RequestBody Announcement announcement) { return success(this.announcementService.updateById(announcement)); return R.ok(this.announcementService.updateById(announcement)); } /** @@ -81,7 +80,7 @@ */ @DeleteMapping public R delete(@RequestParam("idList") List<Long> idList) { return success(this.announcementService.removeByIds(idList)); return R.ok(this.announcementService.removeByIds(idList)); } } src/main/java/com/example/jz/enums/BusinessHttpStatus.java
@@ -3,7 +3,10 @@ public enum BusinessHttpStatus { // 未登录 UNAUTHORIZED(401, "未授权"); UNAUTHORIZED(401, "未登录"), BAD_EXCEPTION(10000, "系统异常"), // 成功 SUCCESS(200, "成功"); private final int value; src/main/java/com/example/jz/exception/BusinessException.java
@@ -3,7 +3,7 @@ import com.example.jz.enums.BusinessHttpStatus; import org.springframework.http.HttpStatus; public class BusinessException extends RuntimeException{ public class BusinessException extends RuntimeException { /** * @@ -35,7 +35,7 @@ public BusinessException(String msg) { super(msg); this.httpStatusCode = HttpStatus.BAD_REQUEST.value(); this.httpStatusCode = BusinessHttpStatus.BAD_EXCEPTION.value(); } src/main/java/com/example/jz/modle/entity/R.java
New file @@ -0,0 +1,71 @@ package com.example.jz.modle.entity; import com.example.jz.enums.BusinessHttpStatus; import lombok.*; import lombok.experimental.Accessors; import java.io.Serializable; /** * 响应信息主体 * * @param <T> * @author lengleng */ @ToString @NoArgsConstructor @AllArgsConstructor @Accessors(chain = true) public class R<T> implements Serializable { private static final long serialVersionUID = 1L; @Getter @Setter private int code; @Getter @Setter private String msg; @Getter @Setter private T data; public static <T> R<T> ok() { return restResult(null, BusinessHttpStatus.SUCCESS.value(), null); } public static <T> R<T> ok(T data) { return restResult(data, BusinessHttpStatus.SUCCESS.value(), null); } public static <T> R<T> ok(T data, String msg) { return restResult(data, BusinessHttpStatus.SUCCESS.value(), msg); } public static <T> R<T> failed() { return restResult(null, BusinessHttpStatus.BAD_EXCEPTION.value(), null); } public static <T> R<T> failed(String msg) { return restResult(null, BusinessHttpStatus.BAD_EXCEPTION.value(), msg); } public static <T> R<T> failed(T data) { return restResult(data, BusinessHttpStatus.BAD_EXCEPTION.value(), null); } public static <T> R<T> failed(T data, String msg) { return restResult(data, BusinessHttpStatus.BAD_EXCEPTION.value(), msg); } private static <T> R<T> restResult(T data, int code, String msg) { R<T> apiResult = new R<>(); apiResult.setCode(code); apiResult.setData(data); apiResult.setMsg(msg); return apiResult; } }