From 88bc4b88a9386db67fea1ba00418972d0ec1bf78 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=AD=94?= <2393584716@qq.com> Date: Mon, 15 Jun 2020 22:03:41 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E6=96=87=E6=A1=A3=E9=83=A8?= =?UTF-8?q?=E5=88=86=E9=94=99=E8=AF=AF=E4=B9=8B=E5=A4=84?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/pj/satoken/MySaTokenConfig.java | 4 +- .../src/main/java/com/pj/test/AjaxJson.java | 4 +- ...opController.java => GlobalException.java} | 15 ++--- .../main/java/com/pj/test/TestController.java | 4 +- sa-token-doc/doc/index.css | 14 +++++ sa-token-doc/doc/index.html | 60 ++++++------------- sa-token-doc/doc/use/jur-auth.md | 2 +- 7 files changed, 47 insertions(+), 56 deletions(-) rename sa-token-demo-springboot/src/main/java/com/pj/test/{TopController.java => GlobalException.java} (77%) create mode 100644 sa-token-doc/doc/index.css diff --git a/sa-token-demo-springboot/src/main/java/com/pj/satoken/MySaTokenConfig.java b/sa-token-demo-springboot/src/main/java/com/pj/satoken/MySaTokenConfig.java index de39f88b..91ab3042 100644 --- a/sa-token-demo-springboot/src/main/java/com/pj/satoken/MySaTokenConfig.java +++ b/sa-token-demo-springboot/src/main/java/com/pj/satoken/MySaTokenConfig.java @@ -2,7 +2,7 @@ package com.pj.satoken; import org.springframework.context.annotation.Configuration; import org.springframework.web.servlet.config.annotation.InterceptorRegistry; -import org.springframework.web.servlet.config.annotation.WebMvcConfigurationSupport; +import org.springframework.web.servlet.config.annotation.WebMvcConfigurer; import cn.dev33.satoken.annotation.SaCheckInterceptor; @@ -10,7 +10,7 @@ import cn.dev33.satoken.annotation.SaCheckInterceptor; * sa-token代码方式进行配置 */ @Configuration -public class MySaTokenConfig extends WebMvcConfigurationSupport { +public class MySaTokenConfig implements WebMvcConfigurer { // 获取配置Bean (以代码的方式配置sa-token) // @Primary diff --git a/sa-token-demo-springboot/src/main/java/com/pj/test/AjaxJson.java b/sa-token-demo-springboot/src/main/java/com/pj/test/AjaxJson.java index 08accd72..1581888d 100644 --- a/sa-token-demo-springboot/src/main/java/com/pj/test/AjaxJson.java +++ b/sa-token-demo-springboot/src/main/java/com/pj/test/AjaxJson.java @@ -5,7 +5,7 @@ import java.util.List; /** - * ajax返回Json的封装 + * ajax请求返回Json格式数据的封装 */ public class AjaxJson implements Serializable{ @@ -21,7 +21,7 @@ public class AjaxJson implements Serializable{ public int code; // 状态码 public String msg; // 描述信息 public Object data; // 携带对象 - public Long dataCount; // 数据总数 + public Long dataCount; // 数据总数,用于分页 /** * 返回code diff --git a/sa-token-demo-springboot/src/main/java/com/pj/test/TopController.java b/sa-token-demo-springboot/src/main/java/com/pj/test/GlobalException.java similarity index 77% rename from sa-token-demo-springboot/src/main/java/com/pj/test/TopController.java rename to sa-token-demo-springboot/src/main/java/com/pj/test/GlobalException.java index 90e1723a..9107914e 100644 --- a/sa-token-demo-springboot/src/main/java/com/pj/test/TopController.java +++ b/sa-token-demo-springboot/src/main/java/com/pj/test/GlobalException.java @@ -9,16 +9,14 @@ import org.springframework.web.bind.annotation.ControllerAdvice; import org.springframework.web.bind.annotation.ExceptionHandler; import org.springframework.web.bind.annotation.ModelAttribute; -import com.fasterxml.jackson.databind.ObjectMapper; - import cn.dev33.satoken.exception.NotLoginException; import cn.dev33.satoken.exception.NotPermissionException; /** - * 加强版控制器 + * 全局异常处理 */ @ControllerAdvice // 可指定包前缀,比如:(basePackages = "com.pj.admin") -public class TopController { +public class GlobalException { // 在每个控制器之前触发的操作 @ModelAttribute @@ -28,7 +26,7 @@ public class TopController { // 全局异常拦截(拦截项目中的所有异常) @ExceptionHandler - public void handlerException(Exception e, HttpServletRequest request, HttpServletResponse response) + public AjaxJson handlerException(Exception e, HttpServletRequest request, HttpServletResponse response) throws Exception { // 打印堆栈,以供调试 @@ -44,10 +42,13 @@ public class TopController { } else { // 普通异常, 输出:500 + 异常信息 aj = AjaxJson.getError(e.getMessage()); } + + // 返回给前端 + return aj; // 输出到客户端 - response.setContentType("application/json; charset=utf-8"); // http说明,我要返回JSON对象 - response.getWriter().print(new ObjectMapper().writeValueAsString(aj)); +// response.setContentType("application/json; charset=utf-8"); // http说明,我要返回JSON对象 +// response.getWriter().print(new ObjectMapper().writeValueAsString(aj)); } } diff --git a/sa-token-demo-springboot/src/main/java/com/pj/test/TestController.java b/sa-token-demo-springboot/src/main/java/com/pj/test/TestController.java index 2cbf8290..6f295eb2 100644 --- a/sa-token-demo-springboot/src/main/java/com/pj/test/TestController.java +++ b/sa-token-demo-springboot/src/main/java/com/pj/test/TestController.java @@ -102,8 +102,8 @@ public class TestController { @SaCheckLogin // 注解式鉴权:当前会话必须登录才能通过 @RequestMapping("getInfo") - public String getInfo() { - return "用户信息"; + public AjaxJson getInfo() { + return AjaxJson.getSuccessData("用户信息"); } } diff --git a/sa-token-doc/doc/index.css b/sa-token-doc/doc/index.css new file mode 100644 index 00000000..efa01b0e --- /dev/null +++ b/sa-token-doc/doc/index.css @@ -0,0 +1,14 @@ +.logo-box {position: absolute;left: 30px;top: 10px;cursor: pointer;color: #000;} +.logo-box img {width: 50px;height: 50px;vertical-align: middle;} +.logo-box .logo-text {display: inline-block;vertical-align: middle;font-size: 24px;font-weight: 400;} +#main {padding-bottom: 100px;} +#main h2 {font-size: 1.6rem;} +#main h3 {font-size: 1.25rem;} +@media screen and (max-width: 800px) { + .logo-box {display: none;} +} + +.main-box img{max-width: 600px; margin: 0.5em; box-shadow: 0 0 3px #999; transition: all 0.3s;} + +.main-box img:hover{box-shadow: 0 0 10px #333; cursor: pointer;} + diff --git a/sa-token-doc/doc/index.html b/sa-token-doc/doc/index.html index af1c1533..7487639a 100644 --- a/sa-token-doc/doc/index.html +++ b/sa-token-doc/doc/index.html @@ -9,47 +9,8 @@ + - @@ -85,13 +46,28 @@ // search: 'auto', // 搜索功能 alias: { '/.*/_sidebar.md': '/_sidebar.md' - } + }, + plugins: [ // 自定义插件 + function(hook, vm) { + // 解析之后执行 + hook.afterEach(function(html) { + var url = 'https://github.com/click33/sa-token/tree/master/sa-token-doc/doc/' + vm.route.file; + var footer = [ + '







', + '
' + ].join(''); + return html + footer; + }); + } + ] } - +