Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/design-patterns/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 跟踪谁请求什么数据的最佳方法?_Java_Design Patterns - Fatal编程技术网

Java 跟踪谁请求什么数据的最佳方法?

Java 跟踪谁请求什么数据的最佳方法?,java,design-patterns,Java,Design Patterns,我有一个API(我没有任何控制权),通过它我可以从外部数据源检索数据。API将表名和列名列表作为输入 例如,带有C1、C2、C3等列的表T1 现在,我遇到了一种情况,在这种情况下,可能会有一群客户机请求具有重叠表名和列名的数据。比如说, 客户端1请求表T1和列C1、C2、C3中的数据 客户机2要求从表T1和列C1、C2获取数据 客户机3请求表T1和列C1中的数据 我打算用表名作为键和列列表作为值来维护一个映射。对于上面的例子,类似于T1,列表(C1,C2,C3)。然后,我将使用我拥有的API检索

我有一个API(我没有任何控制权),通过它我可以从外部数据源检索数据。API将表名和列名列表作为输入

例如,带有C1、C2、C3等列的表T1

现在,我遇到了一种情况,在这种情况下,可能会有一群客户机请求具有重叠表名和列名的数据。比如说,

客户端1请求表T1和列C1、C2、C3中的数据
客户机2要求从表T1和列C1、C2获取数据
客户机3请求表T1和列C1中的数据

我打算用
表名
作为
列列表
作为值来维护一个映射。对于上面的例子,类似于T1,列表(C1,C2,C3)。然后,我将使用我拥有的API检索数据

当我不断检索数据时,一位客户可能会回来说他现在对数据不感兴趣。例如,C1过来说我不需要T1和C1、C2、C3列的数据。但是C2和C3仍然感兴趣并且需要数据&因此我仍然需要检索T1和clomuns C1和C2的数据


我的问题是:在这种情况下,跟踪哪个客户端请求了什么数据的最佳方法是什么?

允许您的客户端指定所需的输出数据格式。这样,您就不必担心客户对输出列的要求会发生变化