@Conditional(value=ConditionDistributedEmbedStorage.class) @Component public class DistributedDatabaseOperateImpl extends com.alibaba.nacos.consistency.cp.RequestProcessor4CP implements BaseDatabaseOperate
┌────────────────────┐
┌──▶│ PersistService │
│ └────────────────────┘ ┌─────────────────┐
│ │ │ │
│ │ │ ▼
│ │ │ ┌────────────────────────┐
│ │ │ │ acquireSnakeflowerId │
│ │ │ └────────────────────────┘
│ │ │ │
│ │ │ │
│ │ │ ▼
│ │ │ ┌────────────────────┐ save sql
│ ▼ │ │ saveConfig │──────────context─────────────┐
│ ┌────────────────┐ │ └────────────────────┘ │
│ │ publishConfig │───┘ │ │
│ └────────────────┘ │ │
│ ▼ ▼
│ ┌─────────────────────────┐ save sql ┌────────────────────┐
│ │ saveConfigTagRelations │────context────▶│ SqlContextUtils │◀─┐
publish config └─────────────────────────┘ └────────────────────┘ │
│ │ ▲ │
│ │ │ │
│ ▼ │ │
│ ┌───────────────────────┐ save sql │ │
┌────┐ │ saveConfigHistory │─────────context────────────┘ │
│user│ └───────────────────────┘ │
└────┘ │
▲ │
│ ┌1:getCurrentSqlContexts───────────────────────────────┘
│ │
│ │
│ │
│ ┌───────────────┐ ┌─────────────────────┐
│ │ JdbcTemplate │◀───│ DatabaseOperate │───┐
4:execute result └───────────────┘ └─────────────────────┘ │
│ │ ▲ │
│ │ │ │
│ │ 3:onApply 2:submit(List<ModifyRequest>)
│ │ │ │
│ ▼ │ │
│ ┌──────────────┐ │ │
│ │ Apache Derby │ ┌───────────────────────┐ │
│ └──────────────┘ │ JRaftProtocol │◀─┘
│ └───────────────────────┘
│ │
│ │
└───────────────────────────────────────────┘
| 构造器和说明 |
|---|
DistributedDatabaseOperateImpl(com.alibaba.nacos.core.cluster.ServerMemberManager memberManager,
com.alibaba.nacos.core.distributed.ProtocolManager protocolManager) |
| 限定符和类型 | 方法和说明 |
|---|---|
CompletableFuture<com.alibaba.nacos.common.model.RestResult<String>> |
dataImport(File file)
data importing, This method is suitable for importing data from external data sources into embedded data
sources.
|
String |
group() |
protected void |
init() |
List<com.alibaba.nacos.consistency.snapshot.SnapshotOperation> |
loadSnapshotOperate() |
void |
mockConsistencyProtocol(com.alibaba.nacos.consistency.cp.CPProtocol protocol) |
com.alibaba.nacos.consistency.entity.Response |
onApply(com.alibaba.nacos.consistency.entity.WriteRequest log) |
void |
onError(Throwable throwable) |
com.alibaba.nacos.consistency.entity.Response |
onRequest(com.alibaba.nacos.consistency.entity.ReadRequest request) |
List<Map<String,Object>> |
queryMany(String sql,
Object[] args)
Data query transaction.
|
<R> List<R> |
queryMany(String sql,
Object[] args,
Class<R> rClass)
Data query transaction.
|
<R> List<R> |
queryMany(String sql,
Object[] args,
org.springframework.jdbc.core.RowMapper<R> mapper)
Data query transaction.
|
<R> R |
queryOne(String sql,
Class<R> cls)
Data query transaction.
|
<R> R |
queryOne(String sql,
Object[] args,
Class<R> cls)
Data query transaction.
|
<R> R |
queryOne(String sql,
Object[] args,
org.springframework.jdbc.core.RowMapper<R> mapper)
Data query transaction.
|
Boolean |
update(List<ModifyRequest> sqlContext,
BiConsumer<Boolean,Throwable> consumer)
data modify transaction.
|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitdoDataImport, queryMany, queryMany, queryMany, queryOne, queryOne, queryOne, update, updateblockUpdate, blockUpdate, futureUpdate, updatepublic void mockConsistencyProtocol(com.alibaba.nacos.consistency.cp.CPProtocol protocol)
public <R> R queryOne(String sql, Class<R> cls)
DatabaseOperatequeryOne 在接口中 DatabaseOperateR - return typesql - sqk textcls - target typepublic <R> R queryOne(String sql, Object[] args, Class<R> cls)
DatabaseOperatequeryOne 在接口中 DatabaseOperateR - return typesql - sqk textargs - sql parameterscls - target typepublic <R> R queryOne(String sql, Object[] args, org.springframework.jdbc.core.RowMapper<R> mapper)
DatabaseOperatequeryOne 在接口中 DatabaseOperateR - return typesql - sqk textargs - sql parametersmapper - Database query result converterpublic <R> List<R> queryMany(String sql, Object[] args, org.springframework.jdbc.core.RowMapper<R> mapper)
DatabaseOperatequeryMany 在接口中 DatabaseOperateR - return typesql - sqk textargs - sql parametersmapper - Database query result converterpublic <R> List<R> queryMany(String sql, Object[] args, Class<R> rClass)
DatabaseOperatequeryMany 在接口中 DatabaseOperateR - return typesql - sqk textargs - sql parametersrClass - target typepublic List<Map<String,Object>> queryMany(String sql, Object[] args)
DatabaseOperatequeryMany 在接口中 DatabaseOperatesql - sqk textargs - sql parameterspublic CompletableFuture<com.alibaba.nacos.common.model.RestResult<String>> dataImport(File file)
DatabaseOperatedataImport 在接口中 DatabaseOperatefile - FileCompletableFuturepublic Boolean update(List<ModifyRequest> sqlContext, BiConsumer<Boolean,Throwable> consumer)
DatabaseOperateupdate 在接口中 DatabaseOperatesqlContext - Listconsumer - BiConsumerpublic List<com.alibaba.nacos.consistency.snapshot.SnapshotOperation> loadSnapshotOperate()
loadSnapshotOperate 在类中 com.alibaba.nacos.consistency.cp.RequestProcessor4CPpublic com.alibaba.nacos.consistency.entity.Response onRequest(com.alibaba.nacos.consistency.entity.ReadRequest request)
onRequest 在类中 com.alibaba.nacos.consistency.RequestProcessorpublic com.alibaba.nacos.consistency.entity.Response onApply(com.alibaba.nacos.consistency.entity.WriteRequest log)
onApply 在类中 com.alibaba.nacos.consistency.RequestProcessorpublic void onError(Throwable throwable)
onError 在类中 com.alibaba.nacos.consistency.RequestProcessorpublic String group()
group 在类中 com.alibaba.nacos.consistency.RequestProcessorCopyright © 2018–2022 Alibaba Group. All rights reserved.