# com.eos.foundation.eoscommon.CacheUtil

# 构件包说明

本工具类实现了对缓存的操作,参数中的缓存名称需要通过EOS Governoer进行添加,其名称与EOS Governor中指定的一致。

# 运算逻辑构件使用说明

该构件包包含以下构件:

序号 方法 功能描述
1 getAllKeys(String cacheName) 查询cache中所有的key的集合
2 getAllValues(String cacheName) 查询cache中所有的value的集合
3 getValue(String cacheName, Object key) 从缓存中取值
4 invalidCache(String cacheName) 使某一个缓存失效
5 invalidOneKey(String cacheName, Object key) 使某一个缓存中的某一个key失效
6 putValue(String cacheName, Object key, Object value) 向缓存中存数据

# getAllKeys:查询cache中所有的key的集合

# 【功能说明】

查询cache中所有的key的集合。

# 【版本说明】

从EOS 6.0开始提供。

# 【引用路径】

  1. 本运算逻辑构件对应JAVA方法路径: com.eos.foundation.eoscommon.CacheUtil.getAllKeys,包含在com.eos.foundation.jar中。
  2. 运算逻辑定义在构件包com.eos.foundation中。

# 【使用说明】

  1. 参数说明
类型 名称 数据类型 参数描述
参数 cacheName String 缓存名称
返回值 out0 java.util.Set cache中所有的key的集合
  1. 抛出异常说明 无。

  2. 规则说明 缓存名称需要通过EOS Governoer进行添加,其值与EOS Governor中指定的一致。

# 【参考案例】

示例:从缓存中获取所有key的集合。

  • 场景描述 无。

  • 参数设置

类型 名称 数据类型 值类别 传递方式
参数 cacheName String example1 常量 传引用
返回值 out0 java.util.Set keys 变量 传引用
  • 参数描述 无。

  • 其他说明 无。

  • 调用前的bizContext

<bizContext>
    <__root __id="0" __isNullOrEmpty="empty" __type="java:java.util.HashMap"/>
</bizContext>
  • 调用后的bizContext
<bizContext>
    <__root __id="0" __type="java:java.util.HashMap">
        <keys __collection="set" __collectionid="1" __index="0"
__type="java:java.lang.String">key1</keys>
        <keys __collection="set" __collectionid="1" __index="1"
__type="java:java.lang.String">key2</keys>
    </__root>
</bizContext>

# getAllValues:查询cache中所有的value的集合

# 【功能说明】

查询cache中所有的value的集合。

# 【版本说明】

从EOS 6.0开始提供。

# 【引用路径】

  1. 本运算逻辑构件对应JAVA方法路径: com.eos.foundation.eoscommon.CacheUtil.getAllValues,包含在com.eos.foundation.jar中。
  2. 运算逻辑定义在构件包com.eos.foundation中。

# 【使用说明】

  1. 参数说明
类型 名称 数据类型 参数描述
参数 cacheName String 缓存名称
返回值 out0 java.util.List cache中所有的value的集合
  1. 抛出异常说明 无。

  2. 规则说明 缓存名称需要通过EOS Governoer进行添加,其值与EOS Governor中指定的一致。

# 【参考案例】

示例:从缓存获所有的value的集合。

  • 场景描述 无。

  • 参数设置

类型 名称 数据类型 值类别 传递方式
参数 cacheName String example1 常量 传引用
返回值 out0 java.util.List values 变量 传引用
  • 参数描述 无。

  • 其他说明 无。

  • 调用前的bizContext

<bizContext>
    <__root __id="0" __isNullOrEmpty="empty" __type="java:java.util.HashMap"/>
</bizContext>
  • 调用后的bizContext
<bizContext>
    <__root __id="0" __type="java:java.util.HashMap">
        <values __collection="list" __collectionid="1" __index="0"
__type="java:java.lang.String">value1</values>
        <values __collection="list" __collectionid="1" __index="1"
__type="java:java.lang.String">value2</values>
    </__root>
</bizContext>

# getValue:从缓存中取值

# 【功能说明】

从某一个缓存中取值。

# 【版本说明】

从EOS 6.0开始提供。

# 【引用路径】

  1. 本运算逻辑构件对应JAVA方法路径: com.eos.foundation.eoscommon.CacheUtil.getValue,包含在com.eos.foundation.jar中。
  2. 运算逻辑定义在构件包com.eos.foundation中。

# 【使用说明】

  1. 参数说明
类型 名称 数据类型 参数描述
参数 cacheName String 缓存名称
参数 key Object 键值
返回值 out0 Object 缓存中的键所对应的值
  1. 抛出异常说明 无。

  2. 规则说明 缓存名称需要通过EOS Governoer进行添加,其值与EOS Governor中指定的一致。

# 【参考案例】

示例:从一个缓存中取值。

  • 场景描述 无。

  • 参数设置

类型 名称 数据类型 值类别 传递方式
参数 cacheName String example1 常量 传引用
参数 key Object key1 常量 传引用
返回值 out0 Object result 变量 传引用
  • 参数描述 无。

  • 其他说明 无。

  • 调用前的bizContext

<bizContext>
    <__root __id="0" __type="java:java.util.HashMap">
        <realDataMap __id="1" __type="java:java.util.HashMap">
            <key1 __type="java:java.lang.String">value1</key1>
        </realDataMap>
        <result __isNullOrEmpty="null"/>
    </__root>
</bizContext>
  • 调用后的bizContext
<bizContext>
    <__root __id="0" __type="java:java.util.HashMap">
        <realDataMap __id="1" __type="java:java.util.HashMap">
            <key1 __type="java:java.lang.String">value1</key1>
        </realDataMap>
        <result __type="java:java.lang.String">value1</result>
    </__root>
</bizContext>

# invalidCache:使某一个缓存失效

# 【功能说明】

使某一个缓存失效。

注意

invalidCache方法只是会清空cache里的数据,但不会调用CacheLoader的remove去清空数据源(这里不是指数据库连接池的数据源,而是指数据的来源)里的数据。 但是invalidOneKey方法不但会清空cache里的数据,还同时会调用CacheLoader的remove去清空数据源里的数据。

# 【版本说明】

从EOS 6.0开始提供。

# 【引用路径】

  1. 本运算逻辑构件对应JAVA方法路径: com.eos.foundation.eoscommon.CacheUtil.invalidCache,包含在com.eos.foundation.jar中。
  2. 运算逻辑定义在构件包com.eos.foundation中。

# 【使用说明】

  1. 参数说明
类型 名称 数据类型 参数描述
参数 cacheName String 缓存名称
  1. 抛出异常说明 无。

  2. 规则说明 缓存名称需要通过EOS Governoer进行添加,其值与EOS Governor中指定的一致。

# 【参考案例】

示例:使某一个缓存失效。

说明

这个用例是先往cache里存放了一个key1=value1的数据,而后直接修改了数据源的数据key1=newValue,使cache无效后,再次从cache中查找key1的值,就是数据源中的新值value1。

  • 场景描述 无。

  • 参数设置

类型 名称 数据类型 值类别 传递方式
参数 cacheName String example1 常量 传引用
  • 参数描述 无。

  • 其他说明 无。

  • 调用前的bizContext

<bizContext>
    <__root __id="0" __type="java:java.util.HashMap">
        <realDataMap __id="1" __type="java:java.util.HashMap">
            <key1 __type="java:java.lang.String">newValue</key1>
        </realDataMap>
        <result __isNullOrEmpty="null"/>
    </__root>
</bizContext>
  • 调用后的bizContext
<bizContext>
    <__root __id="0" __type="java:java.util.HashMap">
        <realDataMap __id="1" __type="java:java.util.HashMap">
            <key1 __type="java:java.lang.String">newValue</key1>
        </realDataMap>
        <result __isNullOrEmpty="null"/>
    </__root>
</bizContext>

# invalidOneKey:使某一个缓存中的某一个key失效

# 【功能说明】

使某一个缓存中的某一个key失效。

注意

invalidOneKey方法不但会清空cache里的数据,还同时会调用CacheLoader的remove去清空数据源里的数据。 invalidCache方法只是会清空cache里的数据,但不会调用CacheLoader的remove去清空数据源(这里不是指数据库连接池的数据源,而是指数据的来源)里的数据。

# 【版本说明】

从EOS 6.0开始提供。

# 【引用路径】

  1. 本运算逻辑构件对应JAVA方法路径: com.eos.foundation.eoscommon.CacheUtil.invalidOneKey,包含在com.eos.foundation.jar中。
  2. 运算逻辑定义在构件包com.eos.foundation中。

# 【使用说明】

  1. 参数说明
类型 名称 数据类型 参数描述
参数 cacheName String 缓存名称
参数 key Object 键值
  1. 抛出异常说明 无。

  2. 规则说明 缓存名称需要通过EOS Governoer进行添加,其值与EOS Governor中指定的一致。

# 【参考案例】

示例:使某一个缓存失效。

  • 场景描述 无。

  • 参数设置

类型 名称 数据类型 值类别 传递方式
参数 cacheName String example1 常量 传引用
参数 key Object key1 常量 传引用
  • 参数描述 无。

  • 其他说明 无。

  • 调用前的bizContext

<bizContext>
    <__root __id="0" __type="java:java.util.HashMap">
        <realDataMap __id="1" __type="java:java.util.HashMap">
            <key1 __type="java:java.lang.String">value1</key1>
        </realDataMap>
    </__root>
</bizContext>
  • 调用后的bizContext
<bizContext>
    <__root __id="0" __type="java:java.util.HashMap">
        <realDataMap __id="1" __isNullOrEmpty="empty" __type="java:java.util.HashMap"/>
    </__root>
</bizContext>

# putValue:向缓存中存数据

# 【功能说明】

向缓存中存数据。

# 【版本说明】

从EOS 6.0开始提供。

# 【引用路径】

  1. 本运算逻辑构件对应JAVA方法路径: com.eos.foundation.eoscommon.CacheUtil.putValue,包含在com.eos.foundation.jar中。
  2. 运算逻辑定义在构件包com.eos.foundation中。

# 【使用说明】

  1. 参数说明
类型 名称 数据类型 参数描述
类型 名称 数据类型 参数描述
参数 cacheName String 缓存名称
参数 key Object 键值
参数 value Object 缓存中的键所对应的值
  1. 抛出异常说明 无。

  2. 规则说明 缓存名称需要通过EOS Governoer进行添加,其值与EOS Governor中指定的一致。

# 【参考案例】

示例:向缓存中存数据。

  • 场景描述 无。

  • 参数设置

类型 名称 数据类型 值类别 传递方式
参数 cacheName String example1 常量 传引用
参数 key Object key1 常量 传引用
参数 value Object value1 常量 传引用
  • 参数描述 无。

  • 其他说明 无。

  • 调用前的bizContext

<bizContext>
    <__root __id="0" __type="java:java.util.HashMap">
        <realDataMap __id="1" __isNullOrEmpty="empty" __type="java:java.util.HashMap"/>
    </__root>
</bizContext>
  • 调用后的bizContext
<bizContext>
    <__root __id="0" __type="java:java.util.HashMap">
        <realDataMap __id="1" __type="java:java.util.HashMap">
            <key1 __type="java:java.lang.String">value1</key1>
        </realDataMap>
    </__root>
</bizContext>
上次更新: 2023/3/20下午3:44:43