使用SMM框架开发企业级应用-----代理(静态,JDK,CGLIB)

Posted haohanwuyin

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用SMM框架开发企业级应用-----代理(静态,JDK,CGLIB)相关的知识,希望对你有一定的参考价值。

静态代理

  步骤一:创建抽象主题(接口) 

技术图片

 

 

 

 步骤二:真实业务代码

技术图片

 

 

 步骤三:测试

技术图片

 

技术图片

 

 

 技术图片

 

 

 

 JDK代理

  步骤一:创建抽象主题(接口)

技术图片

 

 

 步骤二:真实业务代码

技术图片

 

 

 步骤三:测试

 

 

 技术图片

 技术图片

CGLIB代理

步骤一:代码层

技术图片

 

 

 步骤二:测试

public class ServiceCglib {
    public static void main(String[] args) {
        //步骤一:目标对象
        final Cglib cglib=new Cglib();
        //步骤二:生成代理
        Enhancer enhancer=new Enhancer();
        //步骤三:指定需要代理的目标对象木模板
        enhancer.setSuperclass(cglib.getClass());
        //步骤四:实现增强的处理操作
        enhancer.setCallback(new MethodInterceptor() {
            /**
             *
             * @param o             目标对象
             * @param method        目标方法
             * @param objects       目标方法的参数
             * @param methodProxy   代理目标对象的方法
             * @return
             * @throws Throwable
             */
            @Override
            public Object intercept(Object o, Method method, Object[] objects, MethodProxy methodProxy) throws Throwable {
                 System.out.println("后置增强==========="); 
          Object invoke = methodProxy.invoke(cglib, objects);
          System.out.println("后置增强==========="); return invoke; } });
       //最后一步:创建代理 Cglib o = (Cglib)enhancer.create(); o.Some(); } }

以上是关于使用SMM框架开发企业级应用-----代理(静态,JDK,CGLIB)的主要内容,如果未能解决你的问题,请参考以下文章

使用SMM框架开发企业级应用-----基础配置

使用SMM框架开发企业级应用-----基础配置

使用SMM框架开发企业级应用-----面试题

使用SMM框架开发企业级应用-----关联查询

使用SMM框架开发企业级应用-----Spring简介即Spring Ioc

使用SMM框架开发企业级应用-----打印机案例