From 3cf54ef4c20277592dd1824b06e29b58232a9d6e Mon Sep 17 00:00:00 2001 From: sunzhiqiang23 Date: Sat, 6 Jun 2020 22:33:57 +0800 Subject: [PATCH] =?UTF-8?q?=E5=AE=8C=E6=88=90JWT=E6=A8=A1=E5=9D=97?= =?UTF-8?q?=EF=BC=8C=E9=83=A8=E5=88=86proxy=E6=A8=A1=E5=9D=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pom.xml | 17 +++- shiro-sprinboot-proxy/pom.xml | 93 ++++++++++++++++++ .../bjmashibing/shiro/ProxyApplication.java | 17 ++++ .../AnnotationProcessorConfiguration.java | 25 +++++ .../shiro/proxy/AopLogMethodInterceptor.java | 24 +++++ .../bjmashibing/shiro/proxy/LogAdvisor.java | 58 +++++++++++ .../com/bjmashibing/shiro/proxy/SysLog.java | 14 +++ .../bjmashibing/shiro/proxy/SysLogAspect.java | 52 ++++++++++ .../shiro/service/UserService.java | 12 +++ .../shiro/service/UserServiceImpl.java | 27 +++++ .../src/main/resources/application.yml | 16 +++ .../src/main/resources/logback-spring.xml | 8 ++ .../bjmashibing/shiro/ApplicationTests.java | 14 +++ .../bjmashibing/shiro/UserServiceTest.java | 27 +++++ .../com/bjmashibing/shiro/proxy/Client.java | 35 +++++++ .../shiro/proxy/LogInvocationHandler.java | 31 ++++++ .../bjmashibing/shiro/proxy/LogService.java | 11 +++ .../shiro/proxy/LogServiceImpl.java | 15 +++ .../shiro/proxy/MataspaceOOMTest.java | 44 +++++++++ shiro-springboot-admin-jwt-9011/pom.xml | 87 ++++++++++++++++ .../framework/util/Base64ConvertUtil.java | 32 ++++++ .../shiro/framework/util/JwtUtil.java | 91 +++++++++++++++++ .../bjmashibing/shiro/framework/util/R.java | 47 +++++++++ .../shiro/framework/util/JwtUtilTest.java | 39 ++++++++ 资料/shiro.emmx | Bin 874488 -> 884276 bytes 25 files changed, 834 insertions(+), 2 deletions(-) create mode 100644 shiro-sprinboot-proxy/pom.xml create mode 100644 shiro-sprinboot-proxy/src/main/java/com/bjmashibing/shiro/ProxyApplication.java create mode 100644 shiro-sprinboot-proxy/src/main/java/com/bjmashibing/shiro/proxy/AnnotationProcessorConfiguration.java create mode 100644 shiro-sprinboot-proxy/src/main/java/com/bjmashibing/shiro/proxy/AopLogMethodInterceptor.java create mode 100644 shiro-sprinboot-proxy/src/main/java/com/bjmashibing/shiro/proxy/LogAdvisor.java create mode 100644 shiro-sprinboot-proxy/src/main/java/com/bjmashibing/shiro/proxy/SysLog.java create mode 100644 shiro-sprinboot-proxy/src/main/java/com/bjmashibing/shiro/proxy/SysLogAspect.java create mode 100644 shiro-sprinboot-proxy/src/main/java/com/bjmashibing/shiro/service/UserService.java create mode 100644 shiro-sprinboot-proxy/src/main/java/com/bjmashibing/shiro/service/UserServiceImpl.java create mode 100644 shiro-sprinboot-proxy/src/main/resources/application.yml create mode 100644 shiro-sprinboot-proxy/src/main/resources/logback-spring.xml create mode 100644 shiro-sprinboot-proxy/src/test/java/com/bjmashibing/shiro/ApplicationTests.java create mode 100644 shiro-sprinboot-proxy/src/test/java/com/bjmashibing/shiro/UserServiceTest.java create mode 100644 shiro-sprinboot-proxy/src/test/java/com/bjmashibing/shiro/proxy/Client.java create mode 100644 shiro-sprinboot-proxy/src/test/java/com/bjmashibing/shiro/proxy/LogInvocationHandler.java create mode 100644 shiro-sprinboot-proxy/src/test/java/com/bjmashibing/shiro/proxy/LogService.java create mode 100644 shiro-sprinboot-proxy/src/test/java/com/bjmashibing/shiro/proxy/LogServiceImpl.java create mode 100644 shiro-sprinboot-proxy/src/test/java/com/bjmashibing/shiro/proxy/MataspaceOOMTest.java create mode 100644 shiro-springboot-admin-jwt-9011/pom.xml create mode 100644 shiro-springboot-admin-jwt-9011/src/main/java/com/bjmashibing/shiro/framework/util/Base64ConvertUtil.java create mode 100644 shiro-springboot-admin-jwt-9011/src/main/java/com/bjmashibing/shiro/framework/util/JwtUtil.java create mode 100644 shiro-springboot-admin-jwt-9011/src/main/java/com/bjmashibing/shiro/framework/util/R.java create mode 100644 shiro-springboot-admin-jwt-9011/src/test/java/com/bjmashibing/shiro/framework/util/JwtUtilTest.java diff --git a/pom.xml b/pom.xml index 21eb306..9b21f5f 100644 --- a/pom.xml +++ b/pom.xml @@ -30,9 +30,9 @@ shiro-springboot-cas-tmail-9005 shiro-springboot-cas-pac4j-taobao-9006 shiro-springboot-cas-pac4j-tmail-9007 - shiro-springboot-jwt-9008 - shiro-springboot-cas-pac4j-admin-9008 shiro-springboot-admin-9010 + shiro-springboot-admin-jwt-9011 + shiro-sprinboot-proxy @@ -50,6 +50,7 @@ 3.2.0 2.9.9 1.2.5 + 3.10.3 @@ -59,6 +60,11 @@ spring-boot-starter-freemarker 2.2.6.RELEASE + + org.springframework.boot + spring-boot-starter-aop + 2.2.6.RELEASE + org.springframework.boot spring-boot-starter-web @@ -180,6 +186,13 @@ pagehelper-spring-boot-starter ${pagehelper.version} + + + com.auth0 + java-jwt + ${jwt.version} + + diff --git a/shiro-sprinboot-proxy/pom.xml b/shiro-sprinboot-proxy/pom.xml new file mode 100644 index 0000000..db6d9d3 --- /dev/null +++ b/shiro-sprinboot-proxy/pom.xml @@ -0,0 +1,93 @@ + + + + shiro + com.bjmashibing.shiro + 0.0.1-SNAPSHOT + + 4.0.0 + + shiro-sprinboot-proxy + + + + org.springframework.boot + spring-boot-starter-aop + + + org.springframework.boot + spring-boot-starter-web + + + + org.projectlombok + lombok + true + + + org.springframework.boot + spring-boot-starter-test + test + + + org.junit.vintage + junit-vintage-engine + + + + + com.alibaba + fastjson + + + org.apache.commons + commons-lang3 + + + commons-lang + commons-lang + 2.6 + compile + + + + + ${project.artifactId} + + + org.springframework.boot + spring-boot-maven-plugin + + true + + + + + repackage + + + + + + + org.apache.maven.plugins + maven-surefire-plugin + + true + + + + org.apache.maven.plugins + maven-compiler-plugin + 3.5.1 + + + 1.8 + 1.8 + + + + + \ No newline at end of file diff --git a/shiro-sprinboot-proxy/src/main/java/com/bjmashibing/shiro/ProxyApplication.java b/shiro-sprinboot-proxy/src/main/java/com/bjmashibing/shiro/ProxyApplication.java new file mode 100644 index 0000000..a4e063a --- /dev/null +++ b/shiro-sprinboot-proxy/src/main/java/com/bjmashibing/shiro/ProxyApplication.java @@ -0,0 +1,17 @@ +package com.bjmashibing.shiro; + +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; +import org.springframework.boot.builder.SpringApplicationBuilder; +import org.springframework.boot.web.servlet.support.SpringBootServletInitializer; + +@SpringBootApplication +public class ProxyApplication extends SpringBootServletInitializer { + public static void main(String[] args) { + SpringApplication.run(ProxyApplication.class, args); + } + @Override + protected SpringApplicationBuilder configure(SpringApplicationBuilder application) { + return application.sources(ProxyApplication.class); + } +} \ No newline at end of file diff --git a/shiro-sprinboot-proxy/src/main/java/com/bjmashibing/shiro/proxy/AnnotationProcessorConfiguration.java b/shiro-sprinboot-proxy/src/main/java/com/bjmashibing/shiro/proxy/AnnotationProcessorConfiguration.java new file mode 100644 index 0000000..ba33d39 --- /dev/null +++ b/shiro-sprinboot-proxy/src/main/java/com/bjmashibing/shiro/proxy/AnnotationProcessorConfiguration.java @@ -0,0 +1,25 @@ +package com.bjmashibing.shiro.proxy; + +import org.springframework.aop.framework.autoproxy.DefaultAdvisorAutoProxyCreator; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; + +/** + *

+ * + * @author sunzhiqiang23 + * @date 2019/9/27 13:42 + */ +//@Configuration +public class AnnotationProcessorConfiguration { + @Bean + public DefaultAdvisorAutoProxyCreator defaultAdvisorAutoProxyCreator(){ + return new DefaultAdvisorAutoProxyCreator(); + } + @Bean + public LogAdvisor logAdvisor(){ + LogAdvisor logAdvisor = new LogAdvisor(); + return logAdvisor; + } + +} \ No newline at end of file diff --git a/shiro-sprinboot-proxy/src/main/java/com/bjmashibing/shiro/proxy/AopLogMethodInterceptor.java b/shiro-sprinboot-proxy/src/main/java/com/bjmashibing/shiro/proxy/AopLogMethodInterceptor.java new file mode 100644 index 0000000..189b945 --- /dev/null +++ b/shiro-sprinboot-proxy/src/main/java/com/bjmashibing/shiro/proxy/AopLogMethodInterceptor.java @@ -0,0 +1,24 @@ +package com.bjmashibing.shiro.proxy; +import org.aopalliance.intercept.MethodInterceptor; +import org.aopalliance.intercept.MethodInvocation; + +import java.lang.reflect.Method; + +/** + *

+ * + * @author sunzhiqiang23 + * @date 2019/9/27 13:43 + */ +public class AopLogMethodInterceptor implements MethodInterceptor { + @Override + public Object invoke(MethodInvocation invocation) throws Throwable { + Method method = invocation.getThis().getClass().getDeclaredMethod(invocation.getMethod().getName(),invocation.getMethod().getParameterTypes()); +// SysLog sysLog = method.getAnnotation(SysLog.class); +// System.out.println("log: "+sysLog); + System.out.println("======"); + return invocation.proceed(); + } + + +} diff --git a/shiro-sprinboot-proxy/src/main/java/com/bjmashibing/shiro/proxy/LogAdvisor.java b/shiro-sprinboot-proxy/src/main/java/com/bjmashibing/shiro/proxy/LogAdvisor.java new file mode 100644 index 0000000..bccbe06 --- /dev/null +++ b/shiro-sprinboot-proxy/src/main/java/com/bjmashibing/shiro/proxy/LogAdvisor.java @@ -0,0 +1,58 @@ +package com.bjmashibing.shiro.proxy; + +import org.springframework.aop.support.StaticMethodMatcherPointcutAdvisor; +import org.springframework.core.annotation.AnnotationUtils; + +import java.lang.annotation.Annotation; +import java.lang.reflect.Method; + +/** + *

+ * + * @author sunzhiqiang23 + * @date 2019/9/27 19:33 + */ +public class LogAdvisor extends StaticMethodMatcherPointcutAdvisor { + private static final Class[] ANNOTATION_CLASSES = new Class[] {SysLog.class}; + public LogAdvisor() { + setAdvice(new AopLogMethodInterceptor()); + } + + @Override + public boolean matches(Method method, Class targetClass) { + Method m = method; + + if ( isAuthzAnnotationPresent(m) ) { + return true; + } + if ( targetClass != null) { + try { + m = targetClass.getMethod(m.getName(), m.getParameterTypes()); + return isAuthzAnnotationPresent(m) || isAuthzAnnotationPresent(targetClass); + } catch (NoSuchMethodException ignored) { + } + } + + return false; + } + + private boolean isAuthzAnnotationPresent(Class targetClazz) { + for( Class annClass : ANNOTATION_CLASSES ) { + Annotation a = AnnotationUtils.findAnnotation(targetClazz, annClass); + if ( a != null ) { + return true; + } + } + return false; + } + + private boolean isAuthzAnnotationPresent(Method method) { + for( Class annClass : ANNOTATION_CLASSES ) { + Annotation a = AnnotationUtils.findAnnotation(method, annClass); + if ( a != null ) { + return true; + } + } + return false; + } +} diff --git a/shiro-sprinboot-proxy/src/main/java/com/bjmashibing/shiro/proxy/SysLog.java b/shiro-sprinboot-proxy/src/main/java/com/bjmashibing/shiro/proxy/SysLog.java new file mode 100644 index 0000000..8485e1d --- /dev/null +++ b/shiro-sprinboot-proxy/src/main/java/com/bjmashibing/shiro/proxy/SysLog.java @@ -0,0 +1,14 @@ +package com.bjmashibing.shiro.proxy; + +import java.lang.annotation.*; + +/** + * + * @author sunzhiqiang23 + * @date 2020-06-06 17:40 + */ +@Target(ElementType.METHOD) +@Retention(RetentionPolicy.RUNTIME) +@Documented +public @interface SysLog { +} diff --git a/shiro-sprinboot-proxy/src/main/java/com/bjmashibing/shiro/proxy/SysLogAspect.java b/shiro-sprinboot-proxy/src/main/java/com/bjmashibing/shiro/proxy/SysLogAspect.java new file mode 100644 index 0000000..193d9d4 --- /dev/null +++ b/shiro-sprinboot-proxy/src/main/java/com/bjmashibing/shiro/proxy/SysLogAspect.java @@ -0,0 +1,52 @@ +package com.bjmashibing.shiro.proxy; + +import com.alibaba.fastjson.JSON; +import org.aspectj.lang.JoinPoint; +import org.aspectj.lang.ProceedingJoinPoint; +import org.aspectj.lang.annotation.Around; +import org.aspectj.lang.annotation.Aspect; +import org.aspectj.lang.annotation.Pointcut; +import org.aspectj.lang.reflect.MethodSignature; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Component; +import sun.reflect.misc.MethodUtil; + +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import java.io.ByteArrayOutputStream; +import java.io.PrintStream; +import java.lang.reflect.Method; + + +/** + * 系统日志,切面处理类 + * + * @author chenshun + * @email sunlightcs@gmail.com + * @date 2017年3月8日 上午11:07:35 + */ +@Aspect +@Component +public class SysLogAspect { + + @Pointcut("@annotation(com.bjmashibing.shiro.proxy.SysLog)") + public void logPointCut() { + + } + @Around("logPointCut()") + public Object around(ProceedingJoinPoint point) throws Throwable { + //执行方法 + Object result =null ; + try { + result = point.proceed(); + System.out.println("============="); + //执行时长(毫秒) + }catch (Exception e){ + e.printStackTrace(); + } + return result; + } + +} diff --git a/shiro-sprinboot-proxy/src/main/java/com/bjmashibing/shiro/service/UserService.java b/shiro-sprinboot-proxy/src/main/java/com/bjmashibing/shiro/service/UserService.java new file mode 100644 index 0000000..20e76a1 --- /dev/null +++ b/shiro-sprinboot-proxy/src/main/java/com/bjmashibing/shiro/service/UserService.java @@ -0,0 +1,12 @@ +package com.bjmashibing.shiro.service; + +/** + *

+ * + * @author sunzhiqiang23 + * @date 2020-06-06 17:40 + */ +public interface UserService { + int add(); + int select(); +} diff --git a/shiro-sprinboot-proxy/src/main/java/com/bjmashibing/shiro/service/UserServiceImpl.java b/shiro-sprinboot-proxy/src/main/java/com/bjmashibing/shiro/service/UserServiceImpl.java new file mode 100644 index 0000000..dd44733 --- /dev/null +++ b/shiro-sprinboot-proxy/src/main/java/com/bjmashibing/shiro/service/UserServiceImpl.java @@ -0,0 +1,27 @@ +package com.bjmashibing.shiro.service; + +import com.bjmashibing.shiro.proxy.SysLog; +import org.springframework.stereotype.Service; + +/** + *

+ * + * @author sunzhiqiang23 + * @date 2020-06-06 17:41 + */ +@Service +public class UserServiceImpl implements UserService{ + @SysLog + @Override + public int add() { + System.out.println("添加用户"); + select(); + return 0; + } + @SysLog + @Override + public int select() { + System.out.println("查询用户"); + return 0; + } +} diff --git a/shiro-sprinboot-proxy/src/main/resources/application.yml b/shiro-sprinboot-proxy/src/main/resources/application.yml new file mode 100644 index 0000000..623d2e3 --- /dev/null +++ b/shiro-sprinboot-proxy/src/main/resources/application.yml @@ -0,0 +1,16 @@ +# Tomcat +server: + tomcat: + uri-encoding: UTF-8 + max-threads: 1000 + min-spare-threads: 30 + port: 80 +spring: + mvc: + static-path-pattern: /static/** + freemarker: + suffix: .html + request-context-attribute: request + jackson: + time-zone: GMT+8 + date-format: yyyy-MM-dd HH:mm:ss \ No newline at end of file diff --git a/shiro-sprinboot-proxy/src/main/resources/logback-spring.xml b/shiro-sprinboot-proxy/src/main/resources/logback-spring.xml new file mode 100644 index 0000000..18e03ea --- /dev/null +++ b/shiro-sprinboot-proxy/src/main/resources/logback-spring.xml @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/shiro-sprinboot-proxy/src/test/java/com/bjmashibing/shiro/ApplicationTests.java b/shiro-sprinboot-proxy/src/test/java/com/bjmashibing/shiro/ApplicationTests.java new file mode 100644 index 0000000..d54f9af --- /dev/null +++ b/shiro-sprinboot-proxy/src/test/java/com/bjmashibing/shiro/ApplicationTests.java @@ -0,0 +1,14 @@ +package com.bjmashibing.shiro; + +import org.junit.jupiter.api.Test; +import org.springframework.boot.test.context.SpringBootTest; + +@SpringBootTest +public class ApplicationTests { + + @Test + void contextLoads() { + + } + +} diff --git a/shiro-sprinboot-proxy/src/test/java/com/bjmashibing/shiro/UserServiceTest.java b/shiro-sprinboot-proxy/src/test/java/com/bjmashibing/shiro/UserServiceTest.java new file mode 100644 index 0000000..0adab23 --- /dev/null +++ b/shiro-sprinboot-proxy/src/test/java/com/bjmashibing/shiro/UserServiceTest.java @@ -0,0 +1,27 @@ +package com.bjmashibing.shiro; + +import com.bjmashibing.shiro.service.UserService; +import com.bjmashibing.shiro.service.UserServiceImpl; +import lombok.extern.slf4j.Slf4j; +import org.junit.jupiter.api.Test; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +/** + *

+ * + * @author sunzhiqiang23 + * @date 2020-06-06 17:43 + */ +@Slf4j +public class UserServiceTest extends ApplicationTests { + + @Autowired + private UserService userService; + @Test + public void add(){ + //userservice 真正运行的时候,是不是代理对象? + userService.add(); + + } +} diff --git a/shiro-sprinboot-proxy/src/test/java/com/bjmashibing/shiro/proxy/Client.java b/shiro-sprinboot-proxy/src/test/java/com/bjmashibing/shiro/proxy/Client.java new file mode 100644 index 0000000..0d557fa --- /dev/null +++ b/shiro-sprinboot-proxy/src/test/java/com/bjmashibing/shiro/proxy/Client.java @@ -0,0 +1,35 @@ +package com.bjmashibing.shiro.proxy; + +import org.junit.jupiter.api.Test; +import org.springframework.cglib.proxy.Enhancer; +import org.springframework.cglib.proxy.NoOp; + +/** + *

+ * + * @author sunzhiqiang23 + * @date 2020-06-06 17:16 + */ + +public class Client { + + @Test + public void testJdkProxy(){ + LogService logService = new LogServiceImpl(); + LogInvocationHandler handler = new LogInvocationHandler(logService); + LogService proxy = (LogService)handler.getProxy(); + proxy.log(); + } + + @Test + public void testCglib() { + LogService logService = new LogServiceImpl(); + Enhancer enhancer = new Enhancer(); + enhancer.setSuperclass(logService.getClass()); + enhancer.setCallback(NoOp.INSTANCE); + //设置类加载器 + enhancer.setClassLoader(logService.getClass().getClassLoader()); + LogServiceImpl proxy = (LogServiceImpl)enhancer.create(); + proxy.log(); + } +} diff --git a/shiro-sprinboot-proxy/src/test/java/com/bjmashibing/shiro/proxy/LogInvocationHandler.java b/shiro-sprinboot-proxy/src/test/java/com/bjmashibing/shiro/proxy/LogInvocationHandler.java new file mode 100644 index 0000000..0109f7c --- /dev/null +++ b/shiro-sprinboot-proxy/src/test/java/com/bjmashibing/shiro/proxy/LogInvocationHandler.java @@ -0,0 +1,31 @@ +package com.bjmashibing.shiro.proxy; + +import org.springframework.aop.interceptor.PerformanceMonitorInterceptor; + +import java.lang.reflect.InvocationHandler; +import java.lang.reflect.Method; +import java.lang.reflect.Proxy; + +/** + *

+ * + * @author sunzhiqiang23 + * @date 2020-06-06 15:57 + */ +public class LogInvocationHandler implements InvocationHandler { + private Object target; + + public LogInvocationHandler(Object target) { + super(); + this.target = target; + } + @Override + public Object invoke(Object proxy, Method method, Object[] args) throws Throwable { + Object result = method.invoke(target, args); + return result; + } + + public Object getProxy(){ + return Proxy.newProxyInstance(Thread.currentThread().getContextClassLoader(), target.getClass().getInterfaces(), this); + } +} diff --git a/shiro-sprinboot-proxy/src/test/java/com/bjmashibing/shiro/proxy/LogService.java b/shiro-sprinboot-proxy/src/test/java/com/bjmashibing/shiro/proxy/LogService.java new file mode 100644 index 0000000..2cea9f3 --- /dev/null +++ b/shiro-sprinboot-proxy/src/test/java/com/bjmashibing/shiro/proxy/LogService.java @@ -0,0 +1,11 @@ +package com.bjmashibing.shiro.proxy; + +/** + *

+ * + * @author sunzhiqiang23 + * @date 2020-06-06 15:05 + */ +public interface LogService { + void log(); +} diff --git a/shiro-sprinboot-proxy/src/test/java/com/bjmashibing/shiro/proxy/LogServiceImpl.java b/shiro-sprinboot-proxy/src/test/java/com/bjmashibing/shiro/proxy/LogServiceImpl.java new file mode 100644 index 0000000..4d21a3a --- /dev/null +++ b/shiro-sprinboot-proxy/src/test/java/com/bjmashibing/shiro/proxy/LogServiceImpl.java @@ -0,0 +1,15 @@ +package com.bjmashibing.shiro.proxy; + +/** + *

+ * + * @author sunzhiqiang23 + * @date 2020-06-06 15:05 + */ +public class LogServiceImpl implements LogService { + + @Override + public void log() { + System.out.println("记录日志"); + } +} diff --git a/shiro-sprinboot-proxy/src/test/java/com/bjmashibing/shiro/proxy/MataspaceOOMTest.java b/shiro-sprinboot-proxy/src/test/java/com/bjmashibing/shiro/proxy/MataspaceOOMTest.java new file mode 100644 index 0000000..5d2b0a7 --- /dev/null +++ b/shiro-sprinboot-proxy/src/test/java/com/bjmashibing/shiro/proxy/MataspaceOOMTest.java @@ -0,0 +1,44 @@ +package com.bjmashibing.shiro.proxy; + +import org.springframework.cglib.proxy.Enhancer; +import org.springframework.cglib.proxy.MethodInterceptor; +import org.springframework.cglib.proxy.MethodProxy; + +import java.lang.reflect.Method; + +/** + * 〈一句话功能简述〉
+ * JVM参数 + * -XX:MetaspaceSize=8m -XX:MaxMetaspaceSize=12m + * 模拟Metaspace空间溢出,我们不断生成类王空间灌,类占据的空间总是会超过Metaspace指定的空间大小的。 + **/ + +public class MataspaceOOMTest { + static class OOMTest{ + } + public static void main(String[] args) { + int i = 0; //模拟计数多少次以后发生异常 + try { + while(true){ + i++; + Enhancer enhancer = new Enhancer(); + enhancer.setSuperclass(OOMTest.class); + enhancer.setUseCache(false); + enhancer.setCallback(new MethodInterceptor() { + @Override + public Object intercept(Object o, Method method, Object[] objects, MethodProxy methodProxy) throws Throwable { + return methodProxy.invoke(o,args); + } + }); + enhancer.create(); + } + + } catch (Throwable throwable) { + System.out.println("*******多少次后发生了异常:" + i); + throwable.printStackTrace(); + } + + + } + +} diff --git a/shiro-springboot-admin-jwt-9011/pom.xml b/shiro-springboot-admin-jwt-9011/pom.xml new file mode 100644 index 0000000..ca852d9 --- /dev/null +++ b/shiro-springboot-admin-jwt-9011/pom.xml @@ -0,0 +1,87 @@ + + + + shiro + com.bjmashibing.shiro + 0.0.1-SNAPSHOT + + 4.0.0 + + shiro-springboot-admin-jwt-9011 + + + org.springframework.boot + spring-boot-starter-web + + + + org.projectlombok + lombok + true + + + org.springframework.boot + spring-boot-starter-test + test + + + org.junit.vintage + junit-vintage-engine + + + + + com.alibaba + fastjson + + + org.apache.commons + commons-lang3 + + + com.auth0 + java-jwt + + + + + ${project.artifactId} + + + org.springframework.boot + spring-boot-maven-plugin + + true + + + + + repackage + + + + + + + org.apache.maven.plugins + maven-surefire-plugin + + true + + + + org.apache.maven.plugins + maven-compiler-plugin + 3.5.1 + + + 1.8 + 1.8 + + + + + + \ No newline at end of file diff --git a/shiro-springboot-admin-jwt-9011/src/main/java/com/bjmashibing/shiro/framework/util/Base64ConvertUtil.java b/shiro-springboot-admin-jwt-9011/src/main/java/com/bjmashibing/shiro/framework/util/Base64ConvertUtil.java new file mode 100644 index 0000000..0497eb2 --- /dev/null +++ b/shiro-springboot-admin-jwt-9011/src/main/java/com/bjmashibing/shiro/framework/util/Base64ConvertUtil.java @@ -0,0 +1,32 @@ +package com.bjmashibing.shiro.framework.util; + +import java.io.UnsupportedEncodingException; +import java.util.Base64; + +/** + * Base64工具 + * @author 孙志强 + * @date 2018/11/05 23:10 + */ +public class Base64ConvertUtil { + /** + * 加密 + * @param str + * @return java.lang.String + */ + public static String encode(String str) throws UnsupportedEncodingException { + byte[] encodeBytes = Base64.getEncoder().encode(str.getBytes("utf-8")); + return new String(encodeBytes); + } + + /** + * 解密 + * @param str + * @return java.lang.String + */ + public static String decode(String str) throws UnsupportedEncodingException { + byte[] decodeBytes = Base64.getDecoder().decode(str.getBytes("utf-8")); + return new String(decodeBytes); + } + +} diff --git a/shiro-springboot-admin-jwt-9011/src/main/java/com/bjmashibing/shiro/framework/util/JwtUtil.java b/shiro-springboot-admin-jwt-9011/src/main/java/com/bjmashibing/shiro/framework/util/JwtUtil.java new file mode 100644 index 0000000..88c251d --- /dev/null +++ b/shiro-springboot-admin-jwt-9011/src/main/java/com/bjmashibing/shiro/framework/util/JwtUtil.java @@ -0,0 +1,91 @@ +package com.bjmashibing.shiro.framework.util; + +import com.auth0.jwt.JWT; +import com.auth0.jwt.JWTVerifier; +import com.auth0.jwt.algorithms.Algorithm; +import com.auth0.jwt.exceptions.JWTDecodeException; +import com.auth0.jwt.interfaces.DecodedJWT; +import lombok.Data; +import lombok.extern.slf4j.Slf4j; +import org.springframework.stereotype.Component; +import java.io.UnsupportedEncodingException; +import java.util.Date; + +/** + * JWT工具类 + * @author sunzhiqiang23 + * @date 2020/05/29 21:23 + */ +@Slf4j +@Component +public class JwtUtil { + + + /** + * 过期时间改为从配置文件获取 + */ + private static String accessTokenExpireTime ="300"; + + /** + * JWT认证加密私钥(Base64加密) + */ + private static String encryptJWTKey="a30ade645272536288ccae58570738ee"; + + public static final String CLAIM = "account"; + + + /** + * 校验验证帐号加JWT私钥解密 是否正确 + * @param token Token + * @return boolean 是否正确 + */ + public static boolean verify(String token) { + try { + String secret = getClaim(token, CLAIM) + Base64ConvertUtil.decode(encryptJWTKey); + Algorithm algorithm = Algorithm.HMAC256(secret); + JWTVerifier verifier = JWT.require(algorithm).build(); + verifier.verify(token); + return true; + } catch (UnsupportedEncodingException e) { + throw new RuntimeException("认证解密异常:" + e.getMessage()); + } + } + + /** + * 获得Token中的信息 + * @param token + * @param claim + * @return java.lang.String + */ + public static String getClaim(String token, String claim) { + try { + DecodedJWT jwt = JWT.decode(token); + return jwt.getClaim(claim).asString(); + } catch (JWTDecodeException e) { + throw new RuntimeException("解密异常:" + e.getMessage()); + } + } + + /** + * 生成签名 + * @param account 帐号 + * @return java.lang.String 返回加密的Token + */ + public static String sign(String account) { + try { + // 帐号加JWT私钥加密 + String secret = account + Base64ConvertUtil.decode(encryptJWTKey); + // 此处过期时间是以毫秒为单位,所以乘以1000 + Date date = new Date(System.currentTimeMillis() + Long.parseLong(accessTokenExpireTime) * 1000); + Algorithm algorithm = Algorithm.HMAC256(secret); + // 附带account帐号信息 + return JWT.create() + .withClaim("account", account) + .withClaim("currentTimeMillis", String.valueOf(System.currentTimeMillis())) + .withExpiresAt(date) + .sign(algorithm); + } catch (UnsupportedEncodingException e) { + throw new RuntimeException("加密异常:" + e.getMessage()); + } + } +} diff --git a/shiro-springboot-admin-jwt-9011/src/main/java/com/bjmashibing/shiro/framework/util/R.java b/shiro-springboot-admin-jwt-9011/src/main/java/com/bjmashibing/shiro/framework/util/R.java new file mode 100644 index 0000000..cd44141 --- /dev/null +++ b/shiro-springboot-admin-jwt-9011/src/main/java/com/bjmashibing/shiro/framework/util/R.java @@ -0,0 +1,47 @@ +package com.bjmashibing.shiro.framework.util; + +import java.util.HashMap; + +/** + * 返回数据 + * + * @author 孙志强 + + * @date 2019年12月19日 下午4:59:27 + */ +public class R extends HashMap { + private static final long serialVersionUID = 1L; + + public R() { + put("code", 0); + } + public static R error() { + return error(500, "未知异常,请联系管理员"); + } + + public static R error(String info) { + return error(500, info); + } + + public static R error(int code, String info) { + R r = new R(); + r.put("code", code); + r.put("info", info); + return r; + } + public static R ok(String info) { + R r = new R(); + r.put("info", info); + return r; + } + + public static R ok() { + return new R(); + } + + @Override + public R put(String key, Object value) { + super.put(key, value); + return this; + } +} diff --git a/shiro-springboot-admin-jwt-9011/src/test/java/com/bjmashibing/shiro/framework/util/JwtUtilTest.java b/shiro-springboot-admin-jwt-9011/src/test/java/com/bjmashibing/shiro/framework/util/JwtUtilTest.java new file mode 100644 index 0000000..95559bd --- /dev/null +++ b/shiro-springboot-admin-jwt-9011/src/test/java/com/bjmashibing/shiro/framework/util/JwtUtilTest.java @@ -0,0 +1,39 @@ +package com.bjmashibing.shiro.framework.util; + +import org.junit.jupiter.api.Test; + +import static org.junit.jupiter.api.Assertions.*; + +/** + *

+ * + * @author sunzhiqiang23 + * @date 2020-06-01 21:15 + */ +class JwtUtilTest { + + @Test + void verify() { + String token = "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJjdXJyZW50VGltZU1pbGxpcyI6IjE1OTE0NDcyOTU4NTMiLCJleHAiOjE1OTE0NDc1OTUsImFjY291bnQiOiJzeXN0ZW0ifQ._y17zAMGtwGNDTmLNMmaEEGP99zMvognQqwla87174s"; + String account = JwtUtil.getClaim(token, "account"); + boolean system = JwtUtil.verify(token); + System.out.println(system); + + } + + @Test + void getClaim() { + String token = "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJjdXJyZW50VGltZU1pbGxpcyI6IjE1OTE0NDcyOTU4NTMiLCJleHAiOjE1OTE0NDc1OTUsImFjY291bnQiOiJzeXN0ZW0ifQ._y17zAMGtwGNDTmLNMmaEEGP99zMvognQqwla87174s"; + String claim = "account"; + String account = JwtUtil.getClaim(token, claim); + System.out.println(account); + } + + @Test + void sign() { + String account = "system"; + String sign = JwtUtil.sign(account); + System.out.println(sign); + + } +} \ No newline at end of file diff --git a/资料/shiro.emmx b/资料/shiro.emmx index cf17741b00ba3f16527d7eb6db55f10a2b533277..5d669b515bc14a80be49395084299b2308bd6a3f 100644 GIT binary patch delta 70104 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 e?8