Class PersistService
- java.lang.Object
-
- com.alibaba.nacos.config.server.service.PersistService
-
- Direct Known Subclasses:
PermissionPersistService,RolePersistService,UserPersistService
@Repository public class PersistService extends Object
数据库服务,提供ConfigInfo在数据库的存取
3.0开始增加数据版本号, 并将物理删除改为逻辑删除
3.0增加数据库切换功能- Since:
- 1.0
- Author:
- boyan, leiwen.zh
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classPersistService.ConfigInfoBetaWrapperstatic classPersistService.ConfigInfoTagWrapperstatic classPersistService.ConfigInfoWrapper
-
Field Summary
Fields Modifier and Type Field Description protected org.springframework.jdbc.core.JdbcTemplatejtstatic StringSPOTprotected org.springframework.transaction.support.TransactionTemplatetjtprotected static com.alibaba.nacos.config.server.service.PersistService.UserRowMapperUSER_ROW_MAPPER
-
Constructor Summary
Constructors Constructor Description PersistService()
-
Method Summary
All Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description booleanaddAggrConfigInfo(String dataId, String group, String tenant, String datumId, String appName, String content)增加聚合前数据到数据库, select -> update or insertvoidaddConfigInfo(String srcIp, String srcUser, ConfigInfo configInfo, Timestamp time, Map<String,Object> configAdvanceInfo, boolean notify)添加普通配置信息,发布数据变更事件voidaddConfigInfo4Beta(ConfigInfo configInfo, String betaIps, String srcIp, String srcUser, Timestamp time, boolean notify)添加普通配置信息,发布数据变更事件voidaddConfigInfo4Tag(ConfigInfo configInfo, String tag, String srcIp, String srcUser, Timestamp time, boolean notify)添加普通配置信息,发布数据变更事件voidaddConfiTagRelationAtomic(long configId, String tagName, String dataId, String group, String tenant)增加配置;数据库原子操作,最小sql动作,无业务封装voidaddConfiTagsRelationAtomic(long configId, String configTags, String dataId, String group, String tenant)增加配置;数据库原子操作,最小sql动作,无业务封装intaggrConfigInfoCount(String dataId, String group, String tenant)intaggrConfigInfoCountIn(String dataId, String group, String tenant, List<String> datumIds)intaggrConfigInfoCountNotIn(String dataId, String group, String tenant, List<String> datumIds)Map<String,Object>batchInsertOrUpdate(List<ConfigAllInfo> configInfoList, String srcUser, String srcIp, Map<String,Object> configAdvanceInfo, Timestamp time, boolean notify, SameConfigPolicy policy)batch operation,insert or update the format of the returned: succCount: number of successful imports skipCount: number of import skips (only with skip for the same configs) failData: import failed data (only with abort for the same configs) skipData: data skipped at import (only with skip for the same configs)booleanbatchPublishAggr(String dataId, String group, String tenant, Map<String,String> datumMap, String appName)批量添加或者更新数据.事务过程中出现任何异常都会强制抛出TransactionSystemExceptionbooleanbatchRemoveAggr(String dataId, String group, String tenant, List<String> datumList)批量删除聚合数据,需要指定datum的列表booleancheckMasterWritable()BooleancompleteMd5()intconfigInfoBetaCount()返回beta配置项个数intconfigInfoCount()返回配置项个数intconfigInfoCount(String tenant)返回配置项个数intconfigInfoTagCount()返回beta配置项个数ConfigHistoryInfodetailConfigHistory(Long nid)List<ConfigInfoChanged>findAllAggrGroup()找到所有聚合数据组。Page<ConfigInfo>findAllConfigInfo(int pageNo, int pageSize, String tenant)分页查询所有的配置信息List<ConfigAllInfo>findAllConfigInfo4Export(String dataId, String group, String tenant, String appName, List<Long> ids)query all configuration information according to group, appName, tenant (for export)Page<ConfigInfoBase>findAllConfigInfoBase(int pageNo, int pageSize)Deprecated.Page<PersistService.ConfigInfoBetaWrapper>findAllConfigInfoBetaForDumpAll(int pageNo, int pageSize)Page<PersistService.ConfigInfoWrapper>findAllConfigInfoForDumpAll(int pageNo, int pageSize)Page<PersistService.ConfigInfoWrapper>findAllConfigInfoFragment(long lastMaxId, int pageSize)Page<PersistService.ConfigInfoTagWrapper>findAllConfigInfoTagForDumpAll(int pageNo, int pageSize)Page<ConfigKey>findAllConfigKey(int pageNo, int pageSize, String tenant)分页查询所有的配置信息List<ConfigInfo>findAllDataIdAndGroup()Deprecated.Page<PersistService.ConfigInfoWrapper>findChangeConfig(String dataId, String group, String tenant, String appName, Timestamp startTime, Timestamp endTime, int pageNo, int pageSize, long lastMaxId)根据时间段和配置条件查询符合条件的配置List<PersistService.ConfigInfoWrapper>findChangeConfig(Timestamp startTime, Timestamp endTime)ConfigAdvanceInfofindConfigAdvanceInfo(String dataId, String group, String tenant)查询配置信息;数据库原子操作,最小sql动作,无业务封装ConfigAllInfofindConfigAllInfo(String dataId, String group, String tenant)查询配置信息;数据库原子操作,最小sql动作,无业务封装Page<ConfigHistoryInfo>findConfigHistory(String dataId, String group, String tenant, int pageNo, int pageSize)list配置的历史变更记录intfindConfigHistoryCountByTime(Timestamp startTime)获取指定时间前配置条数ConfigInfofindConfigInfo(long id)根据数据库主键ID查询配置信息ConfigInfofindConfigInfo(String dataId, String group, String tenant)查询配置信息;数据库原子操作,最小sql动作,无业务封装ConfigInfo4BetafindConfigInfo4Beta(String dataId, String group, String tenant)根据dataId和group查询配置信息Page<ConfigInfo>findConfigInfo4Page(int pageNo, int pageSize, String dataId, String group, String tenant, Map<String,Object> configAdvanceInfo)ConfigInfo4TagfindConfigInfo4Tag(String dataId, String group, String tenant, String tag)根据dataId和group查询配置信息ConfigInfofindConfigInfoAdvanceInfo(String dataId, String group, String tenant, Map<String,Object> configAdvanceInfo)根据dataId和group查询配置信息List<ConfigInfoAggr>findConfigInfoAggr(String dataId, String group, String tenant)查找一个dataId下面的所有聚合前的数据.Page<ConfigInfoAggr>findConfigInfoAggrByPage(String dataId, String group, String tenant, int pageNo, int pageSize)Page<ConfigInfoAggr>findConfigInfoAggrLike(int pageNo, int pageSize, ConfigKey[] configKeys, boolean blacklist)查询符合条件的聚合数据ConfigInfofindConfigInfoApp(String dataId, String group, String tenant, String appName)根据dataId和group查询配置信息ConfigInfoBasefindConfigInfoBase(String dataId, String group)根据dataId和group查询配置信息Page<ConfigInfoBase>findConfigInfoBaseByDataId(int pageNo, int pageSize, String dataId)根据dataId查询配置信息Page<ConfigInfoBase>findConfigInfoBaseByGroup(int pageNo, int pageSize, String group)根据group查询配置信息Page<ConfigInfoBase>findConfigInfoBaseLike(int pageNo, int pageSize, String dataId, String group, String content)根据dataId和group模糊查询配置信息Page<ConfigInfo>findConfigInfoByAdvance(int pageNo, int pageSize, String tenant, Map<String,Object> configAdvanceInfo)Page<ConfigInfo>findConfigInfoByApp(int pageNo, int pageSize, String tenant, String appName)根据group查询配置信息List<ConfigInfo>findConfigInfoByBatch(List<String> dataIds, String group, String tenant, int subQueryLimit)通过select in方式实现db记录的批量查询; subQueryLimit指定in中条件的个数,上限20Page<ConfigInfo>findConfigInfoByDataId(int pageNo, int pageSize, String dataId, String tenant)根据dataId查询配置信息Page<ConfigInfo>findConfigInfoByDataIdAndAdvance(int pageNo, int pageSize, String dataId, String tenant, Map<String,Object> configAdvanceInfo)Page<ConfigInfo>findConfigInfoByDataIdAndApp(int pageNo, int pageSize, String dataId, String tenant, String appName)根据dataId查询配置信息Page<ConfigInfo>findConfigInfoByGroup(int pageNo, int pageSize, String group, String tenant)根据group查询配置信息Page<ConfigInfo>findConfigInfoByGroupAndAdvance(int pageNo, int pageSize, String group, String tenant, Map<String,Object> configAdvanceInfo)Page<ConfigInfo>findConfigInfoByGroupAndApp(int pageNo, int pageSize, String group, String tenant, String appName)根据group查询配置信息Page<ConfigInfo>findConfigInfoLike(int pageNo, int pageSize, ConfigKey[] configKeys, boolean blacklist)根据dataId和group模糊查询配置信息Page<ConfigInfo>findConfigInfoLike(int pageNo, int pageSize, String dataId, String group, String tenant, String appName, String content)根据dataId和group模糊查询配置信息Page<ConfigInfo>findConfigInfoLike4Page(int pageNo, int pageSize, String dataId, String group, String tenant, Map<String,Object> configAdvanceInfo)List<ConfigInfo>findConfigInfosByIds(String ids)longfindConfigMaxId()获取最大maxIdList<String>findDatumIdByContent(String dataId, String groupId, String content)由datum内容查找datumIdList<ConfigInfo>findDeletedConfig(Timestamp startTime, Timestamp endTime)ConfigInfoAggrfindSingleConfigInfoAggr(String dataId, String group, String tenant, String datumId)查找聚合前的单条数据List<TenantInfo>findTenantByKp(String kp)TenantInfofindTenantByKp(String kp, String tenantId)List<String>getConfigTagsByTenant(String tenant)StringgetCurrentDBUrl()List<String>getGroupIdList(int page, int pageSize)org.springframework.jdbc.core.JdbcTemplategetJdbcTemplate()单元测试用List<String>getTenantIdList(int page, int pageSize)org.springframework.transaction.support.TransactionTemplategetTransactionTemplate()voidinit()voidinsertOrUpdate(String srcIp, String srcUser, ConfigInfo configInfo, Timestamp time, Map<String,Object> configAdvanceInfo)voidinsertOrUpdate(String srcIp, String srcUser, ConfigInfo configInfo, Timestamp time, Map<String,Object> configAdvanceInfo, boolean notify)写入主表,插入或更新voidinsertOrUpdateBeta(ConfigInfo configInfo, String betaIps, String srcIp, String srcUser, Timestamp time, boolean notify)voidinsertOrUpdateSub(SubInfo subInfo)写入主表,插入或更新voidinsertOrUpdateTag(ConfigInfo configInfo, String tag, String srcIp, String srcUser, Timestamp time, boolean notify)voidinsertTenantInfoAtomic(String kp, String tenantId, String tenantName, String tenantDesc, String createResoure, long time)insert tenant infobooleanisExistTable(String tableName)List<PersistService.ConfigInfoWrapper>listAllGroupKeyMd5()获取所有的配置的Md5值,通过分页方式获取。PersistService.ConfigInfoWrapperqueryConfigInfo(String dataId, String group, String tenant)voidreload()voidremoveAggrConfigInfo(String dataId, String group, String tenant)删除一个dataId下面所有的聚合前数据voidremoveConfigHistory(Timestamp startTime, int limitSize)删除startTime前的数据voidremoveConfigInfo(String dataId, String group, String tenant, String srcIp, String srcUser)删除配置信息, 物理删除voidremoveConfigInfo4Beta(String dataId, String group, String tenant)删除beta配置信息, 物理删除List<ConfigInfo>removeConfigInfoByIds(List<Long> ids, String srcIp, String srcUser)voidremoveConfigInfoTag(String dataId, String group, String tenant, String tag, String srcIp, String srcUser)删除配置;数据库原子操作,最小sql动作,无业务封装voidremoveSingleAggrConfigInfo(String dataId, String group, String tenant, String datumId)删除单条聚合前数据voidremoveTagByIdAtomic(long id)voidremoveTenantInfoAtomic(String kp, String tenantId)booleanreplaceAggr(String dataId, String group, String tenant, Map<String,String> datumMap, String appName)批量替换,先全部删除聚合表中指定DataID+Group的数据,再插入数据.List<String>selectTagByConfig(String dataId, String group, String tenant)voidsetBasicDataSourceService(DataSourceService dataSourceService)inttenantInfoCountByTenantId(String tenantId)query tenantInfo (namespace) existence based by tenantIdvoidupdateConfigInfo(ConfigInfo configInfo, String srcIp, String srcUser, Timestamp time, Map<String,Object> configAdvanceInfo, boolean notify)更新配置信息voidupdateConfigInfo4Beta(ConfigInfo configInfo, String srcIp, String srcUser, Timestamp time, boolean notify)更新配置信息voidupdateConfigInfo4Tag(ConfigInfo configInfo, String tag, String srcIp, String srcUser, Timestamp time, boolean notify)更新配置信息voidupdateMd5(String dataId, String group, String tenant, String md5, Timestamp lastTime)更新md5voidupdateTenantNameAtomic(String kp, String tenantId, String tenantName, String tenantDesc)Update tenantInfo showname
-
-
-
Field Detail
-
SPOT
public static final String SPOT
- See Also:
- Constant Field Values
-
USER_ROW_MAPPER
protected static final com.alibaba.nacos.config.server.service.PersistService.UserRowMapper USER_ROW_MAPPER
-
jt
protected org.springframework.jdbc.core.JdbcTemplate jt
-
tjt
protected org.springframework.transaction.support.TransactionTemplate tjt
-
-
Method Detail
-
init
@PostConstruct public void init()
-
checkMasterWritable
public boolean checkMasterWritable()
-
setBasicDataSourceService
public void setBasicDataSourceService(DataSourceService dataSourceService)
-
reload
public void reload() throws IOException- Throws:
IOException
-
getJdbcTemplate
public org.springframework.jdbc.core.JdbcTemplate getJdbcTemplate()
单元测试用
-
getTransactionTemplate
public org.springframework.transaction.support.TransactionTemplate getTransactionTemplate()
-
getCurrentDBUrl
public String getCurrentDBUrl()
-
addConfigInfo
public void addConfigInfo(String srcIp, String srcUser, ConfigInfo configInfo, Timestamp time, Map<String,Object> configAdvanceInfo, boolean notify)
添加普通配置信息,发布数据变更事件
-
addConfigInfo4Beta
public void addConfigInfo4Beta(ConfigInfo configInfo, String betaIps, String srcIp, String srcUser, Timestamp time, boolean notify)
添加普通配置信息,发布数据变更事件
-
addConfigInfo4Tag
public void addConfigInfo4Tag(ConfigInfo configInfo, String tag, String srcIp, String srcUser, Timestamp time, boolean notify)
添加普通配置信息,发布数据变更事件
-
updateConfigInfo
public void updateConfigInfo(ConfigInfo configInfo, String srcIp, String srcUser, Timestamp time, Map<String,Object> configAdvanceInfo, boolean notify)
更新配置信息
-
updateConfigInfo4Beta
public void updateConfigInfo4Beta(ConfigInfo configInfo, String srcIp, String srcUser, Timestamp time, boolean notify)
更新配置信息
-
updateConfigInfo4Tag
public void updateConfigInfo4Tag(ConfigInfo configInfo, String tag, String srcIp, String srcUser, Timestamp time, boolean notify)
更新配置信息
-
insertOrUpdateBeta
public void insertOrUpdateBeta(ConfigInfo configInfo, String betaIps, String srcIp, String srcUser, Timestamp time, boolean notify)
-
insertOrUpdateTag
public void insertOrUpdateTag(ConfigInfo configInfo, String tag, String srcIp, String srcUser, Timestamp time, boolean notify)
-
updateMd5
public void updateMd5(String dataId, String group, String tenant, String md5, Timestamp lastTime)
更新md5
-
insertOrUpdate
public void insertOrUpdate(String srcIp, String srcUser, ConfigInfo configInfo, Timestamp time, Map<String,Object> configAdvanceInfo)
-
insertOrUpdate
public void insertOrUpdate(String srcIp, String srcUser, ConfigInfo configInfo, Timestamp time, Map<String,Object> configAdvanceInfo, boolean notify)
写入主表,插入或更新
-
insertOrUpdateSub
public void insertOrUpdateSub(SubInfo subInfo)
写入主表,插入或更新
-
removeConfigInfo
public void removeConfigInfo(String dataId, String group, String tenant, String srcIp, String srcUser)
删除配置信息, 物理删除
-
removeConfigInfoByIds
public List<ConfigInfo> removeConfigInfoByIds(List<Long> ids, String srcIp, String srcUser)
- Returns:
- List
deleted configInfos
-
removeConfigInfo4Beta
public void removeConfigInfo4Beta(String dataId, String group, String tenant)
删除beta配置信息, 物理删除
-
addAggrConfigInfo
public boolean addAggrConfigInfo(String dataId, String group, String tenant, String datumId, String appName, String content)
增加聚合前数据到数据库, select -> update or insert
-
removeSingleAggrConfigInfo
public void removeSingleAggrConfigInfo(String dataId, String group, String tenant, String datumId)
删除单条聚合前数据
-
removeAggrConfigInfo
public void removeAggrConfigInfo(String dataId, String group, String tenant)
删除一个dataId下面所有的聚合前数据
-
batchRemoveAggr
public boolean batchRemoveAggr(String dataId, String group, String tenant, List<String> datumList)
批量删除聚合数据,需要指定datum的列表- Parameters:
dataId-group-datumList-
-
removeConfigHistory
public void removeConfigHistory(Timestamp startTime, int limitSize)
删除startTime前的数据
-
findConfigHistoryCountByTime
public int findConfigHistoryCountByTime(Timestamp startTime)
获取指定时间前配置条数
-
findConfigMaxId
public long findConfigMaxId()
获取最大maxId
-
batchPublishAggr
public boolean batchPublishAggr(String dataId, String group, String tenant, Map<String,String> datumMap, String appName)
批量添加或者更新数据.事务过程中出现任何异常都会强制抛出TransactionSystemException- Parameters:
dataId-group-datumMap-- Returns:
-
replaceAggr
public boolean replaceAggr(String dataId, String group, String tenant, Map<String,String> datumMap, String appName)
批量替换,先全部删除聚合表中指定DataID+Group的数据,再插入数据. 事务过程中出现任何异常都会强制抛出TransactionSystemException- Parameters:
dataId-group-datumMap-- Returns:
-
findAllDataIdAndGroup
@Deprecated public List<ConfigInfo> findAllDataIdAndGroup()
Deprecated.查找所有的dataId和group。保证不返回NULL。
-
findConfigInfo4Beta
public ConfigInfo4Beta findConfigInfo4Beta(String dataId, String group, String tenant)
根据dataId和group查询配置信息
-
findConfigInfo4Tag
public ConfigInfo4Tag findConfigInfo4Tag(String dataId, String group, String tenant, String tag)
根据dataId和group查询配置信息
-
findConfigInfoApp
public ConfigInfo findConfigInfoApp(String dataId, String group, String tenant, String appName)
根据dataId和group查询配置信息
-
findConfigInfoAdvanceInfo
public ConfigInfo findConfigInfoAdvanceInfo(String dataId, String group, String tenant, Map<String,Object> configAdvanceInfo)
根据dataId和group查询配置信息
-
findConfigInfoBase
public ConfigInfoBase findConfigInfoBase(String dataId, String group)
根据dataId和group查询配置信息
-
findConfigInfo
public ConfigInfo findConfigInfo(long id)
根据数据库主键ID查询配置信息- Parameters:
id-- Returns:
-
findConfigInfoByDataId
public Page<ConfigInfo> findConfigInfoByDataId(int pageNo, int pageSize, String dataId, String tenant)
根据dataId查询配置信息- Parameters:
pageNo- 页码(必须大于0)pageSize- 每页大小(必须大于0)dataId-- Returns:
- ConfigInfo对象的集合
-
findConfigInfoByDataIdAndApp
public Page<ConfigInfo> findConfigInfoByDataIdAndApp(int pageNo, int pageSize, String dataId, String tenant, String appName)
根据dataId查询配置信息- Parameters:
pageNo- 页码(必须大于0)pageSize- 每页大小(必须大于0)dataId-- Returns:
- ConfigInfo对象的集合
-
findConfigInfoByDataIdAndAdvance
public Page<ConfigInfo> findConfigInfoByDataIdAndAdvance(int pageNo, int pageSize, String dataId, String tenant, Map<String,Object> configAdvanceInfo)
-
findConfigInfo4Page
public Page<ConfigInfo> findConfigInfo4Page(int pageNo, int pageSize, String dataId, String group, String tenant, Map<String,Object> configAdvanceInfo)
-
findConfigInfoBaseByDataId
public Page<ConfigInfoBase> findConfigInfoBaseByDataId(int pageNo, int pageSize, String dataId)
根据dataId查询配置信息- Parameters:
pageNo- 页码(必须大于0)pageSize- 每页大小(必须大于0)dataId-- Returns:
- ConfigInfo对象的集合
-
findConfigInfoByGroup
public Page<ConfigInfo> findConfigInfoByGroup(int pageNo, int pageSize, String group, String tenant)
根据group查询配置信息- Parameters:
pageNo- 页码(必须大于0)pageSize- 每页大小(必须大于0)group-- Returns:
- ConfigInfo对象的集合
-
findConfigInfoByGroupAndApp
public Page<ConfigInfo> findConfigInfoByGroupAndApp(int pageNo, int pageSize, String group, String tenant, String appName)
根据group查询配置信息- Parameters:
pageNo- 页码(必须大于0)pageSize- 每页大小(必须大于0)group-- Returns:
- ConfigInfo对象的集合
-
findConfigInfoByGroupAndAdvance
public Page<ConfigInfo> findConfigInfoByGroupAndAdvance(int pageNo, int pageSize, String group, String tenant, Map<String,Object> configAdvanceInfo)
-
findConfigInfoByApp
public Page<ConfigInfo> findConfigInfoByApp(int pageNo, int pageSize, String tenant, String appName)
根据group查询配置信息- Parameters:
pageNo- 页码(必须大于0)pageSize- 每页大小(必须大于0)- Returns:
- ConfigInfo对象的集合
-
findConfigInfoByAdvance
public Page<ConfigInfo> findConfigInfoByAdvance(int pageNo, int pageSize, String tenant, Map<String,Object> configAdvanceInfo)
-
findConfigInfoBaseByGroup
public Page<ConfigInfoBase> findConfigInfoBaseByGroup(int pageNo, int pageSize, String group)
根据group查询配置信息- Parameters:
pageNo- 页码(必须大于0)pageSize- 每页大小(必须大于0)group-- Returns:
- ConfigInfo对象的集合
-
configInfoCount
public int configInfoCount()
返回配置项个数
-
configInfoCount
public int configInfoCount(String tenant)
返回配置项个数
-
configInfoBetaCount
public int configInfoBetaCount()
返回beta配置项个数
-
configInfoTagCount
public int configInfoTagCount()
返回beta配置项个数
-
aggrConfigInfoCountIn
public int aggrConfigInfoCountIn(String dataId, String group, String tenant, List<String> datumIds)
-
aggrConfigInfoCountNotIn
public int aggrConfigInfoCountNotIn(String dataId, String group, String tenant, List<String> datumIds)
-
findAllConfigInfo
public Page<ConfigInfo> findAllConfigInfo(int pageNo, int pageSize, String tenant)
分页查询所有的配置信息- Parameters:
pageNo- 页码(从1开始)pageSize- 每页大小(必须大于0)- Returns:
- ConfigInfo对象的集合
-
findAllConfigKey
public Page<ConfigKey> findAllConfigKey(int pageNo, int pageSize, String tenant)
分页查询所有的配置信息- Parameters:
pageNo- 页码(从1开始)pageSize- 每页大小(必须大于0)- Returns:
- ConfigInfo对象的集合
-
findAllConfigInfoBase
@Deprecated public Page<ConfigInfoBase> findAllConfigInfoBase(int pageNo, int pageSize)
Deprecated.分页查询所有的配置信息- Parameters:
pageNo- 页码(从1开始)pageSize- 每页大小(必须大于0)- Returns:
- ConfigInfo对象的集合
-
findAllConfigInfoForDumpAll
public Page<PersistService.ConfigInfoWrapper> findAllConfigInfoForDumpAll(int pageNo, int pageSize)
-
findAllConfigInfoFragment
public Page<PersistService.ConfigInfoWrapper> findAllConfigInfoFragment(long lastMaxId, int pageSize)
-
findAllConfigInfoBetaForDumpAll
public Page<PersistService.ConfigInfoBetaWrapper> findAllConfigInfoBetaForDumpAll(int pageNo, int pageSize)
-
findAllConfigInfoTagForDumpAll
public Page<PersistService.ConfigInfoTagWrapper> findAllConfigInfoTagForDumpAll(int pageNo, int pageSize)
-
findConfigInfoByBatch
public List<ConfigInfo> findConfigInfoByBatch(List<String> dataIds, String group, String tenant, int subQueryLimit)
通过select in方式实现db记录的批量查询; subQueryLimit指定in中条件的个数,上限20
-
findConfigInfoLike
public Page<ConfigInfo> findConfigInfoLike(int pageNo, int pageSize, String dataId, String group, String tenant, String appName, String content)
根据dataId和group模糊查询配置信息- Parameters:
pageNo- 页码(必须大于0)pageSize- 每页大小(必须大于0)dataId- 支持模糊查询group- 支持模糊查询tenant- 支持模糊查询- Returns:
- ConfigInfo对象的集合
-
findConfigInfoLike4Page
public Page<ConfigInfo> findConfigInfoLike4Page(int pageNo, int pageSize, String dataId, String group, String tenant, Map<String,Object> configAdvanceInfo)
-
findConfigInfoLike
public Page<ConfigInfo> findConfigInfoLike(int pageNo, int pageSize, ConfigKey[] configKeys, boolean blacklist)
根据dataId和group模糊查询配置信息- Parameters:
pageNo- 页码(必须大于0)pageSize- 每页大小(必须大于0)configKeys- 查询配置列表blacklist- 是否黑名单- Returns:
- ConfigInfo对象的集合
-
findConfigInfoBaseLike
public Page<ConfigInfoBase> findConfigInfoBaseLike(int pageNo, int pageSize, String dataId, String group, String content) throws IOException
根据dataId和group模糊查询配置信息- Parameters:
pageNo- 页码(必须大于0)pageSize- 每页大小(必须大于0)dataId-group-- Returns:
- ConfigInfo对象的集合
- Throws:
IOException
-
findSingleConfigInfoAggr
public ConfigInfoAggr findSingleConfigInfoAggr(String dataId, String group, String tenant, String datumId)
查找聚合前的单条数据- Parameters:
dataId-group-datumId-- Returns:
-
findConfigInfoAggr
public List<ConfigInfoAggr> findConfigInfoAggr(String dataId, String group, String tenant)
查找一个dataId下面的所有聚合前的数据. 保证不返回NULL.
-
findConfigInfoAggrByPage
public Page<ConfigInfoAggr> findConfigInfoAggrByPage(String dataId, String group, String tenant, int pageNo, int pageSize)
-
findConfigInfoAggrLike
public Page<ConfigInfoAggr> findConfigInfoAggrLike(int pageNo, int pageSize, ConfigKey[] configKeys, boolean blacklist)
查询符合条件的聚合数据- Parameters:
pageNo- pageNopageSize- pageSizeconfigKeys- 聚合数据条件blacklist- 黑名单- Returns:
-
findAllAggrGroup
public List<ConfigInfoChanged> findAllAggrGroup()
找到所有聚合数据组。
-
findDatumIdByContent
public List<String> findDatumIdByContent(String dataId, String groupId, String content)
由datum内容查找datumId- Parameters:
dataId- data idgroupId- groupcontent- content- Returns:
- datum keys
-
findChangeConfig
public List<PersistService.ConfigInfoWrapper> findChangeConfig(Timestamp startTime, Timestamp endTime)
-
findChangeConfig
public Page<PersistService.ConfigInfoWrapper> findChangeConfig(String dataId, String group, String tenant, String appName, Timestamp startTime, Timestamp endTime, int pageNo, int pageSize, long lastMaxId)
根据时间段和配置条件查询符合条件的配置- Parameters:
dataId- dataId 支持模糊group- dataId 支持模糊appName- 产品名startTime- 起始时间endTime- 截止时间pageNo- pageNopageSize- pageSize- Returns:
-
findDeletedConfig
public List<ConfigInfo> findDeletedConfig(Timestamp startTime, Timestamp endTime)
-
addConfiTagRelationAtomic
public void addConfiTagRelationAtomic(long configId, String tagName, String dataId, String group, String tenant)增加配置;数据库原子操作,最小sql动作,无业务封装- Parameters:
configId- idtagName- tagdataId- data idgroup- grouptenant- tenant
-
addConfiTagsRelationAtomic
public void addConfiTagsRelationAtomic(long configId, String configTags, String dataId, String group, String tenant)增加配置;数据库原子操作,最小sql动作,无业务封装- Parameters:
configId- config idconfigTags- tagsdataId- dataIdgroup- grouptenant- tenant
-
removeTagByIdAtomic
public void removeTagByIdAtomic(long id)
-
selectTagByConfig
public List<String> selectTagByConfig(String dataId, String group, String tenant)
-
removeConfigInfoTag
public void removeConfigInfoTag(String dataId, String group, String tenant, String tag, String srcIp, String srcUser)
删除配置;数据库原子操作,最小sql动作,无业务封装- Parameters:
dataId- dataIdgroup- grouptenant- tenanttag- tagsrcIp- ipsrcUser- user
-
findConfigInfo
public ConfigInfo findConfigInfo(String dataId, String group, String tenant)
查询配置信息;数据库原子操作,最小sql动作,无业务封装- Parameters:
dataId- dataIdgroup- grouptenant- tenant- Returns:
- config info
-
findConfigInfosByIds
public List<ConfigInfo> findConfigInfosByIds(String ids)
- Returns:
- java.util.List
-
findConfigAdvanceInfo
public ConfigAdvanceInfo findConfigAdvanceInfo(String dataId, String group, String tenant)
查询配置信息;数据库原子操作,最小sql动作,无业务封装- Parameters:
dataId- dataIdgroup- grouptenant- tenant- Returns:
- advance info
-
findConfigAllInfo
public ConfigAllInfo findConfigAllInfo(String dataId, String group, String tenant)
查询配置信息;数据库原子操作,最小sql动作,无业务封装- Parameters:
dataId- dataIdgroup- grouptenant- tenant- Returns:
- advance info
-
findConfigHistory
public Page<ConfigHistoryInfo> findConfigHistory(String dataId, String group, String tenant, int pageNo, int pageSize)
list配置的历史变更记录- Parameters:
dataId- data Idgroup- grouptenant- tenantpageNo- nopageSize- size- Returns:
- history info
-
detailConfigHistory
public ConfigHistoryInfo detailConfigHistory(Long nid)
-
insertTenantInfoAtomic
public void insertTenantInfoAtomic(String kp, String tenantId, String tenantName, String tenantDesc, String createResoure, long time)
insert tenant info- Parameters:
kp- kptenantId- tenant IdtenantName- tenant nametenantDesc- tenant descriptiontime- time
-
updateTenantNameAtomic
public void updateTenantNameAtomic(String kp, String tenantId, String tenantName, String tenantDesc)
Update tenantInfo showname- Parameters:
kp- kptenantId- tenant IdtenantName- tenant nametenantDesc- tenant description
-
findTenantByKp
public List<TenantInfo> findTenantByKp(String kp)
-
findTenantByKp
public TenantInfo findTenantByKp(String kp, String tenantId)
-
listAllGroupKeyMd5
public List<PersistService.ConfigInfoWrapper> listAllGroupKeyMd5()
获取所有的配置的Md5值,通过分页方式获取。- Returns:
-
queryConfigInfo
public PersistService.ConfigInfoWrapper queryConfigInfo(String dataId, String group, String tenant)
-
isExistTable
public boolean isExistTable(String tableName)
-
completeMd5
public Boolean completeMd5()
-
findAllConfigInfo4Export
public List<ConfigAllInfo> findAllConfigInfo4Export(String dataId, String group, String tenant, String appName, List<Long> ids)
query all configuration information according to group, appName, tenant (for export)- Parameters:
group-- Returns:
- Collection of ConfigInfo objects
-
batchInsertOrUpdate
public Map<String,Object> batchInsertOrUpdate(List<ConfigAllInfo> configInfoList, String srcUser, String srcIp, Map<String,Object> configAdvanceInfo, Timestamp time, boolean notify, SameConfigPolicy policy) throws NacosException
batch operation,insert or update the format of the returned: succCount: number of successful imports skipCount: number of import skips (only with skip for the same configs) failData: import failed data (only with abort for the same configs) skipData: data skipped at import (only with skip for the same configs)- Throws:
NacosException
-
tenantInfoCountByTenantId
public int tenantInfoCountByTenantId(String tenantId)
query tenantInfo (namespace) existence based by tenantId- Parameters:
tenantId-- Returns:
- count by tenantId
-
-