From 7494fe431ad82757e0f47c337c6ab05c7f3d7338 Mon Sep 17 00:00:00 2001 From: xiongxiaoyang <773861846@qq.com> Date: Thu, 24 Dec 2020 16:45:48 +0800 Subject: [PATCH] =?UTF-8?q?=E9=A1=B5=E9=9D=A2=E4=B8=8D=E5=AD=98=E5=9C=A8?= =?UTF-8?q?=E5=88=99=E8=B7=B3=E8=BD=AC=E5=88=B0404=E9=A1=B5=E9=9D=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../core/advice/CommonExceptionHandler.java | 2 +- .../core/advice/PageExceptionHandler.java | 26 +++++++++++++++++++ .../{controller => page}/PageController.java | 26 +++++-------------- 3 files changed, 33 insertions(+), 21 deletions(-) create mode 100644 novel-common/src/main/java/com/java2nb/novel/core/advice/PageExceptionHandler.java rename novel-front/src/main/java/com/java2nb/novel/{controller => page}/PageController.java (90%) diff --git a/novel-common/src/main/java/com/java2nb/novel/core/advice/CommonExceptionHandler.java b/novel-common/src/main/java/com/java2nb/novel/core/advice/CommonExceptionHandler.java index 882f830..1296d0d 100644 --- a/novel-common/src/main/java/com/java2nb/novel/core/advice/CommonExceptionHandler.java +++ b/novel-common/src/main/java/com/java2nb/novel/core/advice/CommonExceptionHandler.java @@ -13,7 +13,7 @@ import org.springframework.web.bind.annotation.RestControllerAdvice; * * @author 11797*/ @Slf4j -@RestControllerAdvice +@RestControllerAdvice(basePackages = "com.java2nb.novel.controller") public class CommonExceptionHandler { /** diff --git a/novel-common/src/main/java/com/java2nb/novel/core/advice/PageExceptionHandler.java b/novel-common/src/main/java/com/java2nb/novel/core/advice/PageExceptionHandler.java new file mode 100644 index 0000000..609ed6d --- /dev/null +++ b/novel-common/src/main/java/com/java2nb/novel/core/advice/PageExceptionHandler.java @@ -0,0 +1,26 @@ +package com.java2nb.novel.core.advice; + +import lombok.extern.slf4j.Slf4j; +import org.springframework.web.bind.annotation.ControllerAdvice; +import org.springframework.web.bind.annotation.ExceptionHandler; + +/** + * 页面异常处理器 + * + * @author 11797 + */ +@Slf4j +@ControllerAdvice(basePackages = "com.java2nb.novel.page") +public class PageExceptionHandler { + + + /** + * 处理所有异常 + */ + @ExceptionHandler(Exception.class) + public String handlerException(Exception e) { + log.error(e.getMessage(), e); + //跳转页面过程中出现异常时统一跳转到404页面 + return "404"; + } +} diff --git a/novel-front/src/main/java/com/java2nb/novel/controller/PageController.java b/novel-front/src/main/java/com/java2nb/novel/page/PageController.java similarity index 90% rename from novel-front/src/main/java/com/java2nb/novel/controller/PageController.java rename to novel-front/src/main/java/com/java2nb/novel/page/PageController.java index 23f69ca..e51d72a 100644 --- a/novel-front/src/main/java/com/java2nb/novel/controller/PageController.java +++ b/novel-front/src/main/java/com/java2nb/novel/page/PageController.java @@ -1,6 +1,6 @@ -package com.java2nb.novel.controller; +package com.java2nb.novel.page; -import com.java2nb.novel.core.bean.ResultBean; +import com.java2nb.novel.controller.BaseController; import com.java2nb.novel.core.bean.UserDetails; import com.java2nb.novel.core.utils.ThreadLocalUtil; import com.java2nb.novel.entity.*; @@ -15,12 +15,10 @@ import org.apache.commons.lang3.StringUtils; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.web.bind.annotation.PathVariable; -import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestMapping; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; -import java.net.URLEncoder; import java.util.List; /** @@ -29,7 +27,7 @@ import java.util.List; @Slf4j @RequiredArgsConstructor @Controller -public class PageController extends BaseController{ +public class PageController extends BaseController { private final BookService bookService; @@ -101,12 +99,8 @@ public class PageController extends BaseController{ * */ @SneakyThrows @RequestMapping("/book/{bookId}.html") - public String bookDetail(@PathVariable("bookId") Long bookId, HttpServletResponse resp, Model model) { + public String bookDetail(@PathVariable("bookId") Long bookId, Model model) { Book book = bookService.queryBookDetail(bookId); - if(book == null){ - resp.sendError(HttpServletResponse.SC_NOT_FOUND); - return null; - } model.addAttribute("book",book); if(book.getLastIndexId() != null) { //查询首章目录ID @@ -121,12 +115,8 @@ public class PageController extends BaseController{ * */ @SneakyThrows @RequestMapping("/book/indexList-{bookId}.html") - public String indexList(@PathVariable("bookId") Long bookId, HttpServletResponse resp, Model model) { + public String indexList(@PathVariable("bookId") Long bookId, Model model) { Book book = bookService.queryBookDetail(bookId); - if(book == null){ - resp.sendError(HttpServletResponse.SC_NOT_FOUND); - return null; - } model.addAttribute("book",book); List bookIndexList = bookService.queryIndexList(bookId,null,1,null); model.addAttribute("bookIndexList",bookIndexList); @@ -139,15 +129,11 @@ public class PageController extends BaseController{ * */ @SneakyThrows @RequestMapping("/book/{bookId}/{bookIndexId}.html") - public String indexList(@PathVariable("bookId") Long bookId,@PathVariable("bookIndexId") Long bookIndexId, HttpServletRequest request, HttpServletResponse resp,Model model) { + public String indexList(@PathVariable("bookId") Long bookId,@PathVariable("bookIndexId") Long bookIndexId, HttpServletRequest request, Model model) { //查询书籍 Book book = bookService.queryBookDetail(bookId); //查询目录 BookIndex bookIndex = bookService.queryBookIndex(bookIndexId); - if(book == null || bookIndex == null){ - resp.sendError(HttpServletResponse.SC_NOT_FOUND); - return null; - } model.addAttribute("book",book); model.addAttribute("bookIndex",bookIndex); //查询上一章节目录ID