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

新手如何建立自己网站建站 seo课程

新手如何建立自己网站,建站 seo课程,大气精美网站设计工作室织梦模板(附赠精美织梦后台模板),怎么介绍自己做的静态网站什么是代理#xff1f; 代理(Proxy)是一种设计模式,提供了对目标对象另外的访问方式;即通过代理对象访问目标对象.这样做的好处是:可以在目标对象实现的基础上,增强额外的功能操作,即扩展目标对象的功能. 这里使用到编程中的一个思想:不要随意去修改别人已经写好的代码或者方… 什么是代理 代理(Proxy)是一种设计模式,提供了对目标对象另外的访问方式;即通过代理对象访问目标对象.这样做的好处是:可以在目标对象实现的基础上,增强额外的功能操作,即扩展目标对象的功能. 这里使用到编程中的一个思想:不要随意去修改别人已经写好的代码或者方法,如果需改修改,可以通过代理的方式来扩展该方法 举个例子来说明代理的作用:假设我们想邀请一位明星,那么并不是直接连接明星,而是联系明星的经纪人,来达到同样的目的.明星就是一个目标对象,他只要负责活动中的节目,而其他琐碎的事情就交给他的代理人(经纪人)来解决.这就是代理思想在现实中的一个例子 java中的代理类型 静态代理 代理对象和目标对象委托对象都要实现相同的接口 当有很多目标需要被代理时需要手动写很多代理类会造成代码重复和膨胀 动态代理 目标对象需要实现接口代理对象不需要实现接口 能在运行时自动生成代理对象不需要手动写很多代理类不会有代码重复和膨胀 demo package delegate.jdk;public interface IHello {String hello(String name); }package delegate.jdk;public class HelloImpl implements IHello {Overridepublic String hello(String name) {return Hello, name;} } package delegate.jdk;import java.lang.reflect.Proxy;public class RuntimeProxyFactory {public static Object createProxy(Object target) {return Proxy.newProxyInstance(target.getClass().getClassLoader(),target.getClass().getInterfaces(),(proxy, method, args) - {long startTimeStamp System.currentTimeMillis();Object returnValue method.invoke(target, args);long endTimeStamp System.currentTimeMillis();long runtime endTimeStamp - startTimeStamp;System.out.println(Runtime: runtime);return returnValue;});} } package delegate.jdk;public class ProxyTest {public static void main(String[] args) {IHello hello (IHello) RuntimeProxyFactory.createProxy(new HelloImpl());System.out.println(hello.hello(Lee));} } 原理分析(todo) cglib代理 目标类也不需要实现接口代理类继承目标类以目标类子类的方式实现代理所以也叫子类代理因为是基于继承实现所以目标类及其方法不能被final修饰 demo package delegate.cglib;public class Hello {public String hello(String name) {return Hello, name;}} package delegate.cglib;import org.springframework.cglib.proxy.MethodInterceptor; import org.springframework.cglib.proxy.MethodProxy;import java.lang.reflect.Method;public class RuntimeInterceptor implements MethodInterceptor {Overridepublic Object intercept(Object o, Method method, Object[] objects, MethodProxy methodProxy) throws Throwable {long startTimeStamp System.currentTimeMillis();Object returnValue methodProxy.invokeSuper(o, objects);long endTimeStamp System.currentTimeMillis();long runtime endTimeStamp - startTimeStamp;System.out.println(Runtime: runtime);return returnValue;} }package delegate.cglib;import org.springframework.cglib.proxy.Enhancer;public class RuntimeProxyFactory {public static Object createProxy(Object target) {Enhancer enhancer new Enhancer();enhancer.setSuperclass(target.getClass());enhancer.setCallback(new RuntimeInterceptor());return enhancer.create();} } package delegate.cglib;public class ProxyTest {public static void main(String[] args) {Hello hello (Hello) RuntimeProxyFactory.createProxy(new Hello());System.out.println(hello.hello(Lee));} } 原理分析(todo) Spring AOP中的动态代理 在Spring的AOP编程中如果加入容器的目标对象有实现接口用JDK代理如果目标对象没有实现接口用Cglib代理。 参考资料 Java的三种代理模式 Spring | Aop核心 | Cglib源码详细解析 https://km.sankuai.com/collabpage/1584727104
http://www.hkea.cn/news/14377196/

相关文章:

  • 如何做产品网站的推广logo设计公司北京
  • 快速建设网站免费视频教程更改网站建设报价
  • 男孩子和男孩子在一起怎么做网站建站之星破解版下载
  • 用drupal做的网站淘宝刷单网站建设
  • 企业网站做广告郑州郑东新区
  • 云服务器做网站要备案吗精准客户电话号码资源
  • 果洛wap网站建设哪家好wordpress菜单栏图标
  • 网站建设 上传和下载功能做网站一般都用什么字体
  • 深圳购物网站建学习建站的网站
  • 用笔记本电脑能建设网站吗为什么网站在本地看没问题上传之后没有内容呢?
  • 网站常用热点hot小图标花木网站模版
  • 手机网站开发 宽度购买一个网站域名需要多少钱
  • 做网站大流量北京网站页设计制作
  • 做网站筹钱需要多少钱如何在百度建设企业网站
  • 成都企业网站维护百度账号个人中心
  • 建网站大公司盐城做网站的公司地址
  • 网站建设中企动力强knowall wordpress
  • python可以做网站吗网站建设音乐插件怎么弄
  • 南通网站建设兼职用asp做网站遇到的问题
  • 多新闻怎么做扁平网站江门住房和城乡建设部网站
  • 惠州网站建设多少钱苏州住建
  • 遵义做企业网站咨询公司组织架构
  • 济阳做网站开公司怎么做网站
  • 一个完美的网站怎么做电子商务平台的发展趋势
  • 小型网站建设价格低wordpress 检索文件夹
  • 网站开发语言在线检测站长工具seo综合查询adc
  • 如何做网站的百科湛江cms模板建站
  • 网站备案 广东一个网络空间如何做两个网站
  • 网站制作建设飞沐网站建设报价单模板
  • 上饶网站建设多少钱深圳最大的招聘网站是什么