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

2016个人做淘宝客网站足球世界排名国家

2016个人做淘宝客网站,足球世界排名国家,中企动力邮箱入口,网站推广策略方法代理模式(静态代理、JDK 动态代理、CGLIB 动态代理) 一、代理模式概述1. 生活中的代理案例2. 为什么要使用代理3. 代理模式在 Java 中的应用4. 概述5. 生活中代理图示二、代理的实现方式1. Java 中代理图示2. 静态代理2.1 案例2.2 实现案例2.3 静态代理存在的问题三、动态代理…

代理模式(静态代理、JDK 动态代理、CGLIB 动态代理)

  • 一、代理模式概述
    • 1. 生活中的代理案例
    • 2. 为什么要使用代理
    • 3. 代理模式在 Java 中的应用
    • 4. 概述
    • 5. 生活中代理图示
  • 二、代理的实现方式
    • 1. Java 中代理图示
    • 2. 静态代理
      • 2.1 案例
      • 2.2 实现案例
      • 2.3 静态代理存在的问题
  • 三、动态代理
    • 1. 概述
    • 2. JDK 动态代理
      • 2.1 基础准备
      • 2.2 实现 InvocationHandler 接口
      • 2.3 测试
      • 2.4 底层运行原理
    • 3. CGLIB 动态代理
      • 3.1 基础准备
      • 3.2 实现方法拦截 MethodInterceptor
      • 3.3 测试
      • 3.4 底层运行原理
  • 四、总结

一、代理模式概述

1. 生活中的代理案例

  • 房屋中介代理:客户手里没有房源信息,找一个中介
  • 商品代购:这些代购者可以去哪到比较低成本的商品,拥有自己的渠道

2. 为什么要使用代理

对于消费者而言,可以减少成本,只需要关心自己需要的商品,不需要去寻找渠道或者是找房源。

3. 代理模式在 Java 中的应用

  • 统一异常处理
  • MyBatis 使用了代理
  • Spring Aop 实现原理
  • 日志框架

4. 概述

  • 代理模式(Proxy Pattern):是 23 中设计模式中的一种,属于结构型的模式。指一个对象本身不做实际的操作,而是通过其他对象来得到自己想要得到的结果。
  • 意义: 目标对象只需要关心自己的实现细节,通过代理对象来实现功能的增强,可以扩展目标对象的功能。
  • 体现了非常重要的编程思想:不能随便修改源码,通过修改代理的方式来实现功能的扩展。

5. 生活中代理图示

在这里插入图片描述

二、代理的实现方式

1. Java 中代理图示

在这里插入图片描述

  • 元素组成
    • 接口,定义行为和规范的
    • 被代理类,是目标对象
    • 代理类,做功能增强的

2. 静态代理

2.1 案例

通过代理模式实现事务操作

2.2 实现案例

  • 创建 domain 对象
@Data
public class Student {private String name;private int age;}
  • 创建 service 接口定义规范
public interface IStudentService {/*** 添加学生*/void save();/*** 查询学生信息* @param id* @return*/Student query(Long id);}
  • 创建实现类,被代理类
public class IStudentServiceImpl implements IStudentService {public void save() {System.out.println("保存学生信息");}public Student query(Long id) {Student student = new Student();student.setName("sy");student.setAge(18);return student;}
}
  • 创建事务类对象
public class DaoTransaction {public void before() {System.out.println("开始事务操作");}public void  after() {System.out.println("关闭事务");}}
  • 创建代理类对象
public class ProxyStudent implements IStudentService {// 目标类对象private IStudentServiceImpl iStudentService;// 需要做的增强对象private DaoTransaction daoTransaction;// 通过构造器获取目标类和增强类对象public ProxyStudent(IStudentServiceImpl iStudentService, DaoTransaction daoTransaction) {this.iStudentService = iStudentService;this.daoTransaction = daoTransaction;}public void save() {// 开始事务操作daoTransaction.before();// 目标类操作iStudentService.save();// 关闭事务操作daoTransaction.after();}public Student query(Long id) {return iStudentService.query(id);}
}
  • 测试代理类对象
public class TestStudent {@Testpublic void 
http://www.yidumall.com/news/56139.html

相关文章:

  • 最新经济新闻头条新闻深圳网站优化公司
  • 做外贸网站好还是内贸网站好花关键词排名系统
  • 外观设计网站合肥网站seo
  • 吉林市城市建设档案馆官方网站小说网站排名免费
  • 注册公司需要的网站建设新媒体营销案例
  • 无锡祥搜做网站推广网站查询ip
  • 专做奢侈品的网站查域名网站
  • 好的网站怎么建设佛山网站建设技术托管
  • 重庆网站建设最大做微商怎么找客源加人
  • 网站对联代码厦门网站外包
  • 重庆网站建设设计公司信息企业推广语
  • 大作设计网站官网登录入口seo优化技术
  • 开发小程序需要备案吗搜索引擎优化seo论文
  • 租房网站开发文献综述模板软文营销写作技巧有哪些?
  • 广东建设业协会网站百度网页版入口
  • 淘宝客网站开发教程网络建站公司
  • 做装修网站如何短信广告投放
  • 国外优秀网站电脑培训班多少费用
  • 带货视频怎么制作教程网站关键词排名怎么优化
  • wordpress如何添加封面徐州seo建站
  • 潍坊市做网站edm营销
  • java做网站用到哪些技术网站怎么申请怎么注册
  • 可以做积分的网站西安seo外包平台
  • 西部建设网站seo整站优化技术培训
  • 会员管理系统代码百度人工优化
  • 网上做批发的网站有哪些百度推广关键词查询
  • 建设大型网站推广收费短视频平台推广方案
  • 永康网站优化公司济南疫情最新情况
  • 点金网站建设北京网站
  • 网站如何做360优化互联网广告销售