【JAVA】-调用链设计demo
【JAVA】-调用链设计demo
- 1-JAVA链式调用
- 1-1 执行链
- 1-2 执行者
- 1-3 程序调用者,执行链的主要实现
- 1-4 程序调用者,执行链的主要实现
1-JAVA链式调用
1-1 执行链
主要作用是执行
public interface ExectorChain {void execute();
}
1-2 执行者
执行链上的元素,主要是执行动作的具体实现
public interface Executor{void execute(ExectorChain chain);
}
1-3 程序调用者,执行链的主要实现
public class DefaultExectorChain implements ExectorChain {private final List<Executor> ExecutorList = new LinkedList();private int position;public int getPosition() {return position;}public void setPosition(int position) {this.position = position;}public void addExecutor(Executor executor) {ExecutorList.add(executor);}@Overridepublic void execute() {while (position < this.ExecutorList.size()) {Executor executor = ExecutorList.get(position);position = position + 1;executor.execute(this);}}public static void main(String[] args) {DefaultExectorChain chain = new DefaultExectorChain();chain.addExecutor(new Executor1());chain.addExecutor(new Executor2());chain.addExecutor(new Executor3());chain.execute();}
}
1-4 程序调用者,执行链的主要实现
public class Executor1 implements Executor {@Overridepublic void execute(ExectorChain chain) {System.out.println("--------------------Hello World");}
}
public class Executor2 implements Executor {@Overridepublic void execute(ExectorChain chain) {System.out.println("--------------------1111111");}
}
public class Executor3 implements Executor {@Overridepublic void execute(ExectorChain chain) {System.out.println("--------------------2222222");}
}
【JAVA】-调用链设计demo相关推荐
- JNI实现Java调用C代码Demo AndroidStudio
JNI(Java Native Interface)的本意是Java本地调用,它是为了方便java调用C/C++等本地代码所封装的一层接口 Android NDK(Native Development ...
- 【web3j】java调用链上合约里的方法
提前准备infura的链接,链上合约地址,合约里的方法名,钱包私钥(小狐狸插件里点账户地址右边的三个点,再点账户详情就看到了).注:下面的示例调用了两个get方法,传参Uint 一.用到的包 < ...
- java 父子线程 调用链_ZipKin原理学习--Zipkin多线程及线程池中追踪一致性问题解决...
在学习Zipkin分布式追踪系统中我们了解到Trace在整个调用链是一致的,在web服务中可以通过在header设置Trace值在不同的服务中进行传递,那样在一个服务内部不同的线程,甚至是线程池中Zi ...
- 网易云信短信接口java,调用网易云短信验证码接口Demo
最近在开发新的项目,因为需要使用验证码验证这个功能.我选择的是 网易云 的验证码接口.免费使用20条.并且在正式使用的过程中,对比了很多家以后,感觉还是他家的便宜.因为随着你购买的短信包数量的增加,价 ...
- Java代码审计——Fastjson TemplatesImpl调用链
0x00 前言 反序列化总纲 除开jdbc调用链,还有一个TemplatesImpl的调用链,这个在CC链中是出现过的.可以参考:调用链 主要的要点在满以下三个变量 _bytecodes _name ...
- java高可用grpc_GRPC java 分布式调用链跟踪实践
Opentracing基本模型 image.png 如图,在跟踪链中有以下几个比较重要的数据结构和概念: span:标识一次分布式调用,其自身包含了id,parentId(指向上级Span的id), ...
- 阿里云 EDAS Java服务日志中打印调用链TraceId
最近要搭建阿里云的日志服务SLS,收集服务日志,进行统一的搜索查询.但遇到一个问题如何在日志中打印链路的TraceId,本文章记录一下对EDAS免费的解决方法. 先看一下阿里官方文档 业务日志关联调用 ...
- 高性能 Java 应用层网关设计实践
前言 上文我们简单阐述了一下接入层网关的实现原理 不少人对 Java 网关的实现也比较感兴趣,所以这篇文章我们来简单谈谈 Java 应用网关设计,本文将会从以下几个方面来阐述 Java 应用层网关的设 ...
- Istio调用链埋点原理剖析—是否真的“零修改”?
前言 在Istio的实践中最近经常被问到一个问题,使用Istio做调用链用户的业务代码是不是完全0侵入,到底要不要修改业务代码? 看官方介绍: Istio makes it easy to creat ...
最新文章
- 微服务架构实践之缓存
- 三菱plc232通讯实例_「台达ASDA-B2系列伺服使用手册」第八章 通讯机能
- webstom新增vue模板
- php 多维数组 array sort 排序 :array_multisort
- ITK:侵蚀灰度图像
- c语言六角填数答案,【蓝桥杯】第五届-6-六角填数
- 《看完它面试必solo | 寻找C站宝藏》
- Teams App设备的地理位置能力
- 团队作业—预则立他山之石
- 仅信用卡大小,性能比TX2强15倍,英伟达边缘AI计算新品Jetson Xavier NX
- @scheduled 每30s 执行一次_荣耀30S正式发布:麒麟820 5G SoC/6400万像素AI四摄/40W超级快充...
- 74 岁的柳传志和 34 岁的联想
- Spring + Ibatis + MySql实例详解
- 客户端与服务站《Socket》
- 【读书笔记->统计学】05-02 “概率”的整体影响-随机变量的线性变换、独立观测值概念简介
- searchview怎么改hint大小_老司机偷偷告诉你:改水电一般多少钱?水电改造价格怎么算?...
- 最新版本飞信协议抓包
- OpenCV的配置过程和可能遇到的问题
- 深入浅出移动直播技术之帧率、码率和分辨率
- 华为鸿蒙微波炉,再见EMUI,你好鸿蒙!华为不止做手机
热门文章
- js判断浏览器是否是谷歌浏览器
- 腾讯微云免费领取一个月会员
- Windows响应“网络错误-1326”。
- 微信小程序要这样去解读
- 航空发动机模型(2)
- 618挑选网络电视盒子哪个好?发烧友整理目前最强的电视盒子
- 多元函数第二:线性空间(3)线性独立与交换定理
- 美通企业日报 | 亚太区企业传播白皮书发布;安踏集团全球零售总部落地上海...
- 智能驾驶ADAS算法设计及Prescan仿真(1): 前向碰撞预警FCW算法设计与simulink仿真
- ViSP学习笔记(十五):关键点跟踪