在 java 类之间共享缓存资源
Posted
技术标签:
【中文标题】在 java 类之间共享缓存资源【英文标题】:Sharing cached resources between java classes 【发布时间】:2021-12-19 03:57:35 【问题描述】:我有三个类,testContainer.java、recurringTest.java 和 databaseHelper.java
testContainer 类只运行一次并且在 recurringTest 一次又一次运行时保持活动状态。
public class testContainerA extends someExternalClass
public void initialize()
databaseHelper.getResoucefromDB(A)
runTestContinuously(new recurringTestA());
public class recurringTestA
// some load tests that accesses resourceMap.get(A)
public class testContainerB extends someExternalClass
public void initialize()
databaseHelper.getResoucefromDB(B)
runTestContinuously(new recurringTestB());
public class recurringTestB
// some different load tests that accesses resourceMap.get(B)
public class databaseHelper
public static HashMap<String, List<resource>> resourceMap;
public void getResoucefromDB(String resourceType)
resourceList.put(resourceType, callDatabase(resourceType));
要求:
-
recurringTest 构造函数不能有任何参数。
不能使用任何文件来保存资源列表。
recurringTestA 和 recurringTestB 设置为同时运行
我尝试将资源保存在一个文件中,它可以工作。我不想使用任何文件。如何缓存/保存资源,以便可以在测试内部访问它而无需多次调用数据库? 如何在 resourceList 中保存资源,以便重复测试可以访问它,而无需一次又一次地调用 DB。
【问题讨论】:
【参考方案1】:这可能是一个糟糕的答案,但您可以尝试为此使用静态变量。
【讨论】:
以上是关于在 java 类之间共享缓存资源的主要内容,如果未能解决你的问题,请参考以下文章