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

药企网站怎么做简洁大方的网站模板

药企网站怎么做,简洁大方的网站模板,合肥网页制作,黄骅港潮汐一#xff0c;动态代理 我发现Spring框架中的动态代理是一种非常强大的机制#xff0c;它可以在运行时为接口或类创建动态代理#xff0c;然后通过这些代理在方法调用前后添加额外的行为。在后续Spring的AOP#xff08;面向切面编程#xff09;支持中扮演了关键角色。 二…一动态代理 我发现Spring框架中的动态代理是一种非常强大的机制它可以在运行时为接口或类创建动态代理然后通过这些代理在方法调用前后添加额外的行为。在后续Spring的AOP面向切面编程支持中扮演了关键角色。 二应用目的 Spring动态代理主要用于以下目的 事务管理在方法执行前后自动开始和提交事务。安全性在方法执行前进行权限检查。性能监控在方法执行前后添加日志来监测性能 三核心组件 Proxy代理是动态创建的类它在目标类的基础上增加了额外的处理逻辑。当通过代理对象调用方法时代理会先调用与之相关的拦截器链。InvocationHandlerJDK动态代理这是实际的拦截逻辑所在定义了在调用目标方法前后应当执行的操作。每个代理实例都有一个关联的调用处理程序。 当在代理实例上调用方法时方法调用将被编码并分派到其调用处理程序的invoke方法。(接口中仅有Invoke方法)invoke处理代理实例上的方法调用并返回结果。 当在与之关联的代理实例上调用方法时将在调用处理程序中调用此方法。 四 invoke(object proxy methodObject[] args)方法参数 proxy ---- 调用该方法的代理实例method----所述方法对应于调用代理实例上的接口方法的实例。 方法对象的声明类将是该方法声明的接口它可以是代理类继承该方法的代理接口的超级接口。args-----包含的方法调用传递代理实例的参数值的对象的阵列或null如果接口方法没有参数。 五例(案例参考租房需求代理) 1.创建动态代理 // 租赁公司用这个类自动生成代理类 public class ProxyInvocationHandler implements InvocationHandler {// 被代理的接口private Rent rent;public void setRent(Rent rent) {this.rent rent;}// 生成代理类public Object getProxy() {return Proxy.newProxyInstance(this.getClass().getClassLoader(), rent.getClass().getInterfaces(), this);}// 代理类要执行的方法增强public Object invoke(Object proxy, Method method, Object[] args) throws Throwable {// 调用代理对象就是使用真实对象调用!Object result method.invoke(rent, args);return result;} }这段代码定义了一个ProxyInvocationHandler类实现了Java的InvocationHandler接口用于创建一个动态代理。这个类中有几个关键部分 私有成员变量rent它是Rent接口的一个实现代表被代理的对象。setRent 方法用于设置代理的目标对象。getProxy 方法利用Proxy.newProxyInstance方法生成代理对象。这个方法需要三个参数类加载器接口数组代理类需要实现的接口以及一个InvocationHandler实例当前对象this。invoke 方法这是代理实例的方法调用时实际执行的代码。invoke方法可以在调用目标方法前后添加自定义逻辑本例中只是简单地调用了目标对象的相应方法。 2.定义租房接口 //租房 public interface Rent {public void rent(); } 3.定义房东租房任务 //模拟房东出租房屋 public class Host implements Rent{public void rent(){system.out.println(房东要出租房屋)} } 4.实现动态代理 package com.kuang.demo03;public class Client {public static void main(String[] args) {// 生成被代理对象Host host new Host();// 代理角色现在没有ProxyInvocationHandler pih new ProxyInvocationHandler();// 通过调用程序处理角色来处理我们要调用的接口对象---也就是可以调用host里面的任务pih.setRent(host);Rent proxy (Rent) pih.getProxy();proxy.rent();} }代码定义了一个客户端类Client演示如何使用动态代理。这里的重点在于如何创建代理对象并通过它来调用方法 Host实例化首先创建了一个Host对象Host是Rent接口的实现类代表租赁服务的具体实现。ProxyInvocationHandler实例化接着创建一个ProxyInvocationHandler的实例。这个类是用来定义代理逻辑的处理器。设置代理的目标对象通过pih.setRent(host)将host对象设置为代理的目标对象。获取代理对象通过pih.getProxy();获取代理对象。这一步是通过代理处理器和Java的Proxy类动态生成一个符合Rent接口的代理对象。通过代理对象调用方法最后通过代理对象调用Rent()方法。如果ProxyInvocationHandler的invoke方法可以添加特定逻辑如打印日志、权限校验等它们会在这一步执行。
http://www.hkea.cn/news/14496437/

相关文章:

  • android开发 网站开发网站建设公司的市场开发方案
  • 国家住房部和城乡建设部 网站首页部署一个网站要做哪些工作
  • 做国际物流在哪些网站找客户京津冀协同发展10周年
  • 东山县建设官方网站软件工程考研学校推荐
  • 水处理网站模板专业营销的网站建设公司排名
  • 最专业网站建设公司wordpress标签 分类
  • 网站建设书店目标客户分析石家庄新闻最新
  • 怎么在建设银行网站挂号wordpress海外建站
  • html生成网站施工企业的期间费用包括
  • 南昌营销型网站落寞文学网单本多本小说wordpress主题
  • 网站开发技术 难点外贸添加外链网站
  • 动效网站怎么做兰州网站建设托管
  • 汕头门户网站建设怎么做查询数据输入的网站
  • 重点培育学科建设网站网站管理员登陆域名
  • 网站建设流程中哪些部分比较重要站长工具备案查询
  • 网站营销方案设计公司微信 微网站
  • 该怎么做网站编辑主要做什么wordpress模板定制
  • 网站内容建设策略站群cms网站系统
  • 东莞wordpress建站网络规划设计师课件
  • 杭州企业网站建设方案网站建设框架模板下载
  • 专注网站制作网站建设捌金手指花总六
  • 网站内页做友链京东优惠券网站建设
  • 嘉祥网站建设哪家便宜公众号开发难吗
  • 建设通类型网站叫啥网站排名提升工具免费
  • 可以做分销的网站现在建设网站都用什么软件
  • 各种网站app购买了域名怎么使用
  • 个体网站建设网站建设风格
  • 医院网站 整站源码wordpress头像同步
  • 公司注册地址与实际经营地址不符长春seo服务
  • 网站开发从入门到实战生产型或服务型企业网站有哪些