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

网站云解析域名解析企业支付宝登录入口

网站云解析域名解析,企业支付宝登录入口,网页制作视频怎么设置,wordpress文章分类目录进不去在Java中#xff0c;代理模式#xff08;Proxy Pattern#xff09;可以通过静态代理和动态代理两种主要方式实现。 一、静态代理模式 在编译时就已经确定了代理类和被代理类的关系。 代理类和目标对象通常实现相同的接口或继承相同父类。 缺点是对于每个需要代理的目标对象…在Java中代理模式Proxy Pattern可以通过静态代理和动态代理两种主要方式实现。 一、静态代理模式 在编译时就已经确定了代理类和被代理类的关系。 代理类和目标对象通常实现相同的接口或继承相同父类。 缺点是对于每个需要代理的目标对象都需要创建一个代理类这会导致代码膨胀。 interface Service {void performAction(); }class RealService implements Service {Overridepublic void performAction() {System.out.println(Performing action in RealService.);} }class StaticProxy implements Service {private final Service realService;public StaticProxy(Service realService) {this.realService realService;}Overridepublic void performAction() {// 可以添加前置处理逻辑System.out.println(Before performing action.);realService.performAction();// 可以添加后置处理逻辑System.out.println(After performing action.);} } 二、动态代理模式 动态代理允许我们在运行时创建代理对象而不需要为每一个委托类都编写一个具体的代理类。这提供了更高的灵活性和可扩展性。Java中的动态代理主要分为两种基于接口的代理和基于子类的代理。 1. JDK动态代理 使用java.lang.reflect.Proxy类结合InvocationHandler接口在运行时动态生成代理对象。 只适用于实现了接口的类。 这种方式允许在不修改原代码的情况下为多个接口方法添加通用的行为。 import java.lang.reflect.InvocationHandler; import java.lang.reflect.Method; import java.lang.reflect.Proxy;public class DynamicProxyExample {public static void main(String[] args) {Service realService new RealService();Service proxyInstance (Service) Proxy.newProxyInstance(realService.getClass().getClassLoader(),realService.getClass().getInterfaces(),new InvocationHandler() {Overridepublic Object invoke(Object proxy, Method method, Object[] args) throws Throwable {System.out.println(Before method.getName());Object result method.invoke(realService, args);System.out.println(After method.getName());return result;}});proxyInstance.performAction();} } 2. CGLIB 动态代理 当目标对象没有实现任何接口时可以使用CGLIB库通过继承的方式生成代理类。 CGLIB会在运行时生成目标类的一个子类并重写其中的方法以插入自定义逻辑。 注意由于CGLIB是通过继承实现的因此不能用于代理final类或方法。 使用CGLIB需要引入相应的依赖如Maven依赖。 dependencygroupIdcglib/groupIdartifactIdcglib/artifactIdversion3.3.0/version /dependency import net.sf.cglib.proxy.Enhancer; import net.sf.cglib.proxy.MethodInterceptor; import net.sf.cglib.proxy.MethodProxy;import java.lang.reflect.Method;public class CglibProxyExample {public static void main(String[] args) {Enhancer enhancer new Enhancer();enhancer.setSuperclass(RealService.class);enhancer.setCallback(new MethodInterceptor() {Overridepublic Object intercept(Object obj, Method method, Object[] args, MethodProxy proxy) throws Throwable {System.out.println(Before method.getName());Object result proxy.invokeSuper(obj, args);System.out.println(After method.getName());return result;}});Service service (Service) enhancer.create();service.performAction();}
http://www.dnsts.com.cn/news/173706.html

相关文章:

  • 网页制作网站开发的论文夜场酒吧娱乐ktv类企业网站源码
  • 网站建设出错1004广告设计教学大纲
  • 二级域名可以做网站域名注册查询入口
  • 昆明网站建设流程精准客户数据采集软件
  • 做标签网站刷单假山制作
  • 黄山旅游攻略自由行攻略乐拾seo
  • 深圳住房和建设局网站置换平台wordpress文章模块化
  • 做名片最好的网站上海三大建筑设计院
  • 在网上做效果图网站做网站手机适配需要加价吗
  • 专业做汽配的网站深圳物流托运上门取件
  • 网站开发团队构成公关策划是做什么的
  • 网站开发方案目录wordpress注册项
  • 微网站 demo博物馆网站模版
  • 微信小程序本地服务器搭建兰州seo外包公司
  • 哪家公司提供专业的网站建设网站命名方式
  • 免费看电影的网站是什么网络营销企业推广策划
  • 自己的网站可以做淘客吗网址输入
  • 做网站卖产品怎么开展游戏网页版入口
  • 网站做优化必须要ftp吗开发商虚假宣传怎么赔偿
  • 吕梁网站设计wordpress用户添加资源
  • 昆山做网站的在手机上自己制作游戏软件
  • 公司网站开发设计题目怎么写广州网站设计成功柚米
  • 哪些网站可以找到做跨境电商的公司怎么在手机上做微电影网站
  • 游戏网站制作板式成都网站建设网站建设哪家好
  • 济南 微网站北京品牌网站设计
  • 做国际贸易网站哪家好wordpress 文章 分类
  • 江宁网站建设哪家好网站后台查找软件
  • 永兴网站制作软件二次开发什么意思
  • 手机网站seo怎么做wordpress注册美化
  • 网站会员注册怎么做给别人做网站是外包公司