public abstract class BaseRedisService extends Object
| 构造器和说明 |
|---|
BaseRedisService() |
| 限定符和类型 | 方法和说明 |
|---|---|
protected void |
bind(BaseConsumerTypeNotify notify)
绑定通知
|
protected void |
cleanAgileEntities()
清空数据
|
protected void |
deleteEntity(String entityKey)
根据Key特征,删除实体
|
void |
foreachFinder(IBaseFinder finder) |
BaseEntity |
getEntity(IBaseFinder finder) |
BaseEntity |
getEntity(Long id) |
protected BaseEntity |
getEntity(String entityKey)
获取实体
|
int |
getEntityCount(IBaseFinder finder) |
List<BaseEntity> |
getEntityList()
获取全局实体列表
|
List<BaseEntity> |
getEntityList(IBaseFinder finder) |
protected List<BaseConsumerEntityNotify> |
getEntityNotify() |
protected Map<String,BaseEntity> |
getEntitys()
获得一个副本
|
abstract String |
getEntityType()
从派生类中,获得处理的实体类型
|
protected String |
getHead() |
abstract RedisService |
getRedisService()
从派生类中,获得redisService
|
long |
getUpdateTime()
获取时间戳
|
protected void |
insertEntity(BaseEntity entity)
插入实体
|
boolean |
isEmpty()
检查:是否为空
|
boolean |
isInited()
是否已经完成初始化
|
protected boolean |
isNeedLoad() |
protected boolean |
isNeedSave() |
protected void |
loadAgileEntities()
消费者:从redis敏捷装载数据
|
protected void |
loadAllEntities()
生产者/消费者:从redis全量装载数据
|
protected void |
saveAgileEntities()
生产者:向redis敏捷保存数据
步骤1.先读取redis的敏捷数据
步骤2.检查先后敏捷数据是否结构不一致,不一致就全量更新,一致就进行后面的敏捷更新 步骤3.检查先后敏捷数据是否变化太大,变化太大就全量更新(敏捷更新没有意义),变化幅度小才进行后面的敏捷更新 步骤4.敏捷更新时,对发生变化的数据进行记录级更新,逐条写入redis |
protected void |
saveAllEntities()
生产者:向redis全量保存数据
|
protected BaseEntity |
selectEntity(BaseEntity entity)
根据Key特征,查询实体
|
protected void |
setDataMap(List<BaseEntity> dataMap)
将整个缓存设置为新的实体列表
|
void |
setInited()
标识已经完成初始化
|
protected void |
updateEntity(BaseEntity entity)
根据Key特征,更新实体
|
public abstract RedisService getRedisService()
public abstract String getEntityType()
public boolean isInited()
public void setInited()
public long getUpdateTime()
protected void bind(BaseConsumerTypeNotify notify)
notify - protected List<BaseConsumerEntityNotify> getEntityNotify()
protected String getHead()
protected void loadAllEntities()
throws com.fasterxml.jackson.core.JsonParseException
com.fasterxml.jackson.core.JsonParseExceptionprotected void loadAgileEntities()
throws IOException
IOExceptionprotected void saveAllEntities()
protected void saveAgileEntities()
protected void cleanAgileEntities()
protected boolean isNeedLoad()
protected boolean isNeedSave()
protected Map<String,BaseEntity> getEntitys()
protected BaseEntity getEntity(String entityKey)
public List<BaseEntity> getEntityList()
public void foreachFinder(IBaseFinder finder)
public List<BaseEntity> getEntityList(IBaseFinder finder)
public BaseEntity getEntity(IBaseFinder finder)
public int getEntityCount(IBaseFinder finder)
public BaseEntity getEntity(Long id)
public boolean isEmpty()
protected void insertEntity(BaseEntity entity)
entity - 实体protected BaseEntity selectEntity(BaseEntity entity)
entity - 实体protected void updateEntity(BaseEntity entity)
entity - 实体protected void deleteEntity(String entityKey)
entityKey - 实体protected void setDataMap(List<BaseEntity> dataMap)
dataMap - Copyright © 2024. All rights reserved.