当前位置: 首页 > news >正文

做网站公司能赚钱吗影视制作拍摄公司

做网站公司能赚钱吗,影视制作拍摄公司,公司部门有哪些,哪个电商平台最能卖货一、JDK Jdk动态代理,拿到目标类所继承的接口,生成代理类,并且代理类也会实现和目标类一样的接口。 二、Cglib Cglib代理功能更强,无论目标类是否实现接口都可以代理,他是基于继承的方式类代理目标类,如果…

一、JDK

Jdk动态代理,拿到目标类所继承的接口,生成代理类,并且代理类也会实现和目标类一样的接口。

二、Cglib

Cglib代理功能更强,无论目标类是否实现接口都可以代理,他是基于继承的方式类代理目标类,如果目标类也实现了接口,代理类也会实现一次

public Object getProxy(@Nullable ClassLoader classLoader) {Class<?> rootClass = this.advised.getTargetClass();//目标类Class<?> proxySuperClass = rootClass;if (rootClass.getName().contains("$$")) { //如果目标类也是一个代理类,那么就拿到这个代理类的父类,因为这个代理类的父类,才是我们真正要代理的目标类。然后继承他proxySuperClass = rootClass.getSuperclass();Class<?>[] additionalInterfaces = rootClass.getInterfaces();//如果目标类是一个代理类,那么这个代理实现的接口,也就是新的代理类要实现的接口。this.advised.addInterface(additionalInterfaces); 把接口存起来下面要用}Enhancer enhancer = this.createEnhancer();enhancer.setSuperclass(proxySuperClass);  //设置代理的父类,可能是目标类的类型,可能是目标类的父类。enhancer.setInterfaces(AopProxyUtils.completeProxiedInterfaces(this.advised));  //设置新的代理类要实现的接口。//必实现的接口SpringProxy,如果是切面还会实现Advisedenhancer.setNamingPolicy(SpringNamingPolicy.INSTANCE);enhancer.setStrategy(new ClassLoaderAwareGeneratorStrategy(classLoader));Callback[] callbacks = this.getCallbacks(rootClass);Class<?>[] types = new Class[callbacks.length];。。。。。
}

三、如何选择

那么在Spring创建代理对象的时候是选择Cglib还是Jdk有一段代码

//判断是否是接口或者是否是代理类
if (targetClass.isInterface() || Proxy.isProxyClass(targetClass)) {new JdkDynamicAopProxy(config)
} else {new ObjenesisCglibAopProxy(config)
}public static boolean isProxyClass(Class<?> cl) {return Proxy.class.isAssignableFrom(cl) && proxyClassCache.containsValue(cl);
}

Proxy.class.isAssignableFrom(cl)就是判断cl所表示的类是不是SpringProxy或者SpringProxy的子类。因为所有的代理类都会继承SpringProxy,所以这个条件必须满足。满足这个条件也不能保证就是代理类,因为可能存在人为地编写一个类继承SpringProxy。proxyClassCache.containsValue(cl)这个方法是检查缓存中是否存在这个Class实例cl。只要生成过代理类都会被缓存,所以这个方法才是检测一个类是否是代理类的唯一标准。

http://www.yayakq.cn/news/357806/

相关文章:

  • 合肥如何做百度的网站开发流程图
  • 企业做网站维护江苏企业网站制作哪家好
  • 深圳网站推广外包网站怎么添加js广告位
  • 辛集市住房和城乡建设厅网站培训班该如何建站
  • 自适应响应式网站源码问卷调查
  • 用dw做的企业网站计算机网站维护建设
  • 做内网网站网站排名怎么优化
  • 网站后台改企业网站搭建步骤
  • 去掉网站侧边栏品牌建设题目
  • 关于网站的设计和制作建设工程检测网
  • 用来做网站的背景图wordpress标题图标
  • 上海网站排名公司网站规划与建设ppt模板
  • 长沙做网站seo优化外包微信小程序开发难吗
  • 可以做c语言任务的网站东莞seo排名扣费
  • 住房和建设厅网站首页云南公司网站制作
  • 杭州网站建设设计公司哪家好中国全案设计联盟
  • 淘宝联盟怎么做自己的网站html登录注册页面模板
  • HTML5做网站例子网站如何做熊掌号并绑定
  • aws使用wordpress整站seoseo优化
  • 南宁百度网站公司吗网络推广做些什么
  • 北京网站设计实力乐云践新太原网站建设需求多嘛
  • 网站怎样改logo怎么样注册公司流程和费用
  • 精美网页源码网站跨站攻击 wordpress
  • 商城网站建设合同范本福州建设网站
  • 宣传部网站建设计划书网站的落地页
  • 如何做地方门户网站平面设计速成班多少钱
  • 重庆网站建设哪个公司好wordpress 自动超链接
  • 太原做手机网站建设做维修家具广告在哪个网站好
  • 电商网站怎么做wordpress产品展示
  • 无锡网站建设要多少钱用于做网站头的图片