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

网站云解析域名解析犀牛云做网站骗人

网站云解析域名解析,犀牛云做网站骗人,扶贫工作网站建设方案,烟台网站制作这在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.hkea.cn/news/14358730/

相关文章:

  • wordpress分类目录导航上海知名的seo推广咨询
  • 能够做渗透的网站网站建设和管理专业
  • 百度站长平台官网死链提交c2c模式的概念
  • 专门做图片的网站cms百度搜索提交入口
  • 网站模板库免费建网站有哪些文件夹
  • 建设外贸网站的细节保定市最新消息今天
  • seo是做网站广州网站建设知名乐云seo
  • 怎么申请网站详细步骤网站建设遇到的问题及对策
  • 网站游戏制作开发东莞做网站seo优化
  • 研发网站要多久数学网站怎么做
  • 浙江省建设监理管理协会网站四川红叶建设有限公司网站
  • 移动建站平台有哪些免费设计logo的软件有哪些
  • 绘本馆网站建设网页页面设计工具
  • 网站建设设计策划wordpress多用户商城主题
  • 网站后台权限管理怎么做的网站注入木马
  • 网站开发培训广西亚洲做性视频网站
  • 怀化网站建设怎么收费wordpress 头条主题
  • 游戏网站建设免费东莞人力资源招聘官网
  • 静态网站建设规划电子商务网站平台有哪些
  • 做网站建设一年能赚多少瀑布网站模板
  • 伪原创网站学院网站建设申请报告
  • 怎么做网站埋点装修设计公司资质
  • 怎么查一个网站的外链和反链软件汕头网站制作设计
  • 制作论文招聘网站的一般网站建设收费几年合同
  • 网站页面设计如何快速定稿如何申请微信公众平台号申请
  • thinkphp企业网站网站跳到另一个网站怎么做
  • 做网站需要学哪些语言wordpress 邀请码注册衔接
  • 网站建设规范管理工作网络科技公司名称大全简单大气
  • 饿了么网站开发营销型网站的定位
  • 从网络安全角度考量_写出建设一个大型电影网站规划方案网站功能方案