java 上下文变量_如何在不重载的情况下在每个线程上下文中传递2个Java模块之间的变量?...

本文讨论了Java模块A和B之间的协作挑战,如何在模块B的事件流中传递特定的上下文ID,并避免冗长重构。作者寻求高效方法来自动连接或传递上下文中的变量,以在模块A中处理新增列需求,同时提及可能的库或设计模式建议。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

早上好。

我有2个Java模块。我们称之为模块A和模块B。

一个模块负责纯数据库交互。

B模块是服务层。例如,在b中的某个事件上,它接收到启动流(假设它类似于步骤1,步骤2,…),我们创建一个上下文,在某个步骤之后,它使用来自模块a的静态方法,如果有这样的记录,则使用增量db counter或add new。

问题:

在db中,我们需要再添加一列,这是一些只能从上下文接收的id。每个线程都有自己的上下文。

程序的工作方式如下:接收一些事件->init(创建上下文)->步骤1(do smth)并从模块a调用静态方法increment

上下文在模块b中的所有步骤中传递。

在一个模块中,有一个地方,如果我的id(每个上下文的id不同)来自b,那么它就可以工作。

增量(枚举,ID)

枚举(int id1,int id2,int id3)。有一个基本接口,每个枚举正在实现,在每个枚举类中,它正在创建对象,并像increment一样在流中使用(EnumRealization.SomeObject,Int ID)

问题

最明显的方法是在a中重载这个静态增量,并从调用增量的上下文中添加这个变量,问题是大约有>600个调用这个方法,我们可以这样做,但这是很长的一段路。我试图找到一个解决方案,我将能够保留,传递或自动连线我的变量从上下文和检索它在模块A。

伙计们,也许你们知道我该怎么解决我的问题?或者是图书馆。

谢谢!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值