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

网站上线确认书开网站的是啥公司

网站上线确认书,开网站的是啥公司,win7优化工具,网络营销和传统营销的关系代理模式是一种结构型设计模式#xff0c;它通过一个代理对象作为中间层来控制对目标对象的访问#xff0c;从而增强或扩展目标对象的功能#xff0c;同时保持客户端对目标对象的使用方式一致。 代理模式在Java中的应用,例如 1.统一异常处理 2.Mybatis使用代理 3.Spring…代理模式是一种结构型设计模式它通过一个代理对象作为中间层来控制对目标对象的访问从而增强或扩展目标对象的功能同时保持客户端对目标对象的使用方式一致。 代理模式在Java中的应用,例如 1.统一异常处理 2.Mybatis使用代理 3.Spring AOP实现原理 4.日志框架 讲些空话,大话,大白话: 接口:定义行为规范,为了多态 实现类:对具体接口的实现(目标对象),被代理的类 代理类:做功能增强与扩展 静态代理:(常用于代理接口的实现类,也可以代理普通类) 代理接口的实现类 定义接口 public interface Service {     void doWork(); } 实现目标对象 public class RealService implements Service {     Override     public void doWork() {         System.out.println(RealService 正在执行工作。);     } } 创建代理类 public class ServiceProxy implements Service {     private final Service realService; // 持有目标对象的引用     //我还可以引入些其他,用来在doWork方法前后做增强或者扩展     //private Xxxx   xxxx;可以构造中做初始化     public ServiceProxy(Service realService) {         this.realService realService;     }     Override     public void doWork() {         System.out.println(代理调用方法之前记录日志...);         realService.doWork(); // 调用目标对象的方法         System.out.println(代理调用方法之后记录日志...);     } } 测试静态代理 public class StaticProxyExample {     public static void main(String[] args) {         // 创建目标对象         Service realService new RealService();         // 创建代理对象并传入目标对象         Service proxy new ServiceProxy(realService);         // 调用代理对象的方法         proxy.doWork();     } } 静态代理在Boot中实际使用 --------------------------------------------------------------------------------------------------------------- 代理普通类 // 目标类 public class RealService {     public void doWork() {         System.out.println(RealService 正在工作...);     } } // 代理类 public class ServiceProxy {     private RealService realService;     public ServiceProxy(RealService realService) {         this.realService realService;     }     public void doWork() {         System.out.println(代理: 调用方法之前...);         realService.doWork();         System.out.println(代理: 调用方法之后...);     } } // 使用代理 public class Main {     public static void main(String[] args) {         RealService realService new RealService();         ServiceProxy proxy new ServiceProxy(realService);         proxy.doWork();     } } JDK动态代理  1.JDK 动态代理的特点 必须基于接口 代理对象必须实现目标类的接口。如果目标类没有接口JDK 动态代理无法使用。 运行时动态生成代理对象 代理类的代码不是在编译时生成而是在运行时动态创建。 通过 InvocationHandler 实现增强逻辑 使用 InvocationHandler 接口处理方法的调用逻辑。可以对方法调用进行拦截并添加额外的增强功能。 生成的代理类是目标接口的实现类 代理对象的类型是接口类型不能直接当作目标类使用。 2. JDK 动态代理的核心类 (1) Proxy 类 Java 动态代理的核心类用于生成代理对象。方法 Proxy.newProxyInstance(ClassLoader loader, Class?[] interfaces, InvocationHandler h)ClassLoader loader目标类的类加载器用于加载代理对象。Class?[] interfaces目标类实现的接口数组。InvocationHandler h调用处理器用于定义代理对象的方法逻辑。 (2) InvocationHandler 接口 用于定义代理对象的行为。核心方法 Object invoke(Object proxy, Method method, Object[] args) throws Throwableproxy代理对象本身。method当前调用的方法。args调用方法的参数。 3. JDK 动态代理的实现步骤 (1) 定义接口和实现类 // 定义接口 public interface Service {     void doWork(); } // 实现类目标类 public class RealService implements Service {     Override     public void doWork() {         System.out.println(RealService 正在执行工作...);     } } (2) 创建 InvocationHandler 该接口作用是方法拦截 import java.lang.reflect.InvocationHandler; import java.lang.reflect.Method; public class ServiceInvocationHandler implements InvocationHandler {     private Object target; // 持有目标对象的引用     public ServiceInvocationHandler(Object target) {         this.target target;     }     Override     public Object invoke(Object proxy, Method method, Object[] args) throws Throwable {         System.out.println(代理: 调用方法之前记录日志...);         Object result method.invoke(target, args); // 调用目标方法         System.out.println(代理: 调用方法之后记录日志...);         return result;     } } (3) 创建代理对象 import java.lang.reflect.Proxy; public class Main {     public static void main(String[] args) {         // 创建目标对象         Service realService new RealService();         // 创建 InvocationHandler         ServiceInvocationHandler handler new ServiceInvocationHandler(realService);         // 生成代理对象         Service proxy (Service) Proxy.newProxyInstance(                 realService.getClass().getClassLoader(), // 类加载器                 new Class?[]{Service.class},          // 实现的接口                 handler                                 // 调用处理器         );         // 调用代理对象的方法         proxy.doWork();     } } CGLIB代理
http://www.dnsts.com.cn/news/19976.html

相关文章:

  • 石家庄网站建设wsjz网络营销策略有哪几种
  • 做dj平台网站莒县做网站的公司
  • 织梦网站怎么做投票模板网站如何引擎收录
  • 网站 展示seo如何提高排名
  • 津做网站网络营销是什么课
  • 专业做二手房装修网站网站h标签
  • 做网站注册35类还是42注册了网站怎么建设
  • 系统官网网站模板下载企业关键词排名优化哪家好
  • 智能建站平台zui设计师做网站
  • 家具网站建设策划方案哈尔滨信息工程学院地址
  • 东莞网站关键词优化收费网页游戏排行榜2017前十名
  • 备案 手机网站软件开发外包报价
  • 用jsp做学校网站wordpress f5
  • seo网站设计点击软件免费表格模板下载
  • 科技成果展示网站建设方案制作一个网站怎么做的
  • nofollow标签对网站收录的影响谷歌seo算法规则
  • 百度给做网站吗做网站难么
  • 网站建设logo网站密码是什么情况
  • 详情页在线设计网站推荐顺德外贸网站建设
  • 济南正规的网站制作大数据营销是什么
  • 公司找人做网站wordpress特定账户注册
  • 安全生产门户网站建设wordpress页面模板是哪个
  • 网站订单模板网站开发加盟商怎么做
  • 知行网站建设wordpress调用分类标题
  • 上海住建部网站wordpress app插件
  • 网站开发 组织架构福安城乡建设与规划局网站
  • jsp网站怎么做的好看网站购物系统制作雨辰资讯电子商务类网站开发
  • 服装网站开发方案武陟县住房和城乡建设局网站
  • 创意灵感网站重庆网站推广产品
  • 为什么要更新网站修改wordpress入口地址