diff --git a/src/main/java/cn/langpy/kotime/staaop/AgentHandler.java b/src/main/java/cn/langpy/kotime/staaop/AgentHandler.java deleted file mode 100644 index 54bb23b..0000000 --- a/src/main/java/cn/langpy/kotime/staaop/AgentHandler.java +++ /dev/null @@ -1,37 +0,0 @@ -package cn.langpy.kotime.staaop; - - -import cn.langpy.kotime.util.Context; -import javassist.*; - -import java.io.IOException; -import java.lang.instrument.ClassFileTransformer; -import java.lang.instrument.IllegalClassFormatException; -import java.security.ProtectionDomain; - -public class AgentHandler implements ClassFileTransformer { - public byte[] transform(ClassLoader loader, String className, Class classBeingRedefined, ProtectionDomain protectionDomain, byte[] classfileBuffer) throws IllegalClassFormatException { - className = className.replace("/","."); - /**/ - - try { - CtClass ctClass= ClassPool.getDefault().get(className); - CtMethod[] declaredMethods = ctClass.getDeclaredMethods(); - for (CtMethod method : declaredMethods) { - if (Modifier.isStatic(method.getModifiers())) { - method.insertBefore("System.out.println(\"前置--\");"); - method.insertAfter("System.out.println(\"后置--\");"); - } - } - ctClass.detach(); - return ctClass.toBytecode(); - } catch (NotFoundException e) { - e.printStackTrace(); - } catch (CannotCompileException e) { - e.printStackTrace(); - } catch (IOException e) { - e.printStackTrace(); - } - return classfileBuffer; - } -} diff --git a/src/main/java/cn/langpy/kotime/staaop/StaticAgent.java b/src/main/java/cn/langpy/kotime/staaop/StaticAgent.java deleted file mode 100644 index df2d351..0000000 --- a/src/main/java/cn/langpy/kotime/staaop/StaticAgent.java +++ /dev/null @@ -1,22 +0,0 @@ -package cn.langpy.kotime.staaop; - -import java.lang.instrument.Instrumentation; -import java.lang.instrument.UnmodifiableClassException; - -public class StaticAgent { - public static void agentmain(String agentArgs, Instrumentation inst){ - System.out.println("修改静态方法"); - /*true 必须 */ - inst.addTransformer(new AgentHandler(),true); - Class[] classes = inst.getAllLoadedClasses(); - for (Class clazz : classes) { - if (clazz.getName().equals("com.example.demo.controller.Index2Controller")) { - try { - inst.retransformClasses(clazz); - } catch (UnmodifiableClassException e) { - e.printStackTrace(); - } - } - } - } -}