This is an automated email from the ASF dual-hosted git repository.

xiaoyu pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/shardingsphere.git


The following commit(s) were added to refs/heads/master by this push:
     new 7f78aad  docs:add spring-boot-starter each versions of the document 
(#9680)
7f78aad is described below

commit 7f78aad70d610d741db0deff345cf3d851ad98c1
Author: totalo <[email protected]>
AuthorDate: Tue Mar 23 14:28:57 2021 +0800

    docs:add spring-boot-starter each versions of the document (#9680)
    
    * docs:add spring-boot-starter each versions of the document
    
    * update docs by module
---
 .../spring-boot-starter/change-history.cn.md       | 471 ++++++++++++++++++++
 .../spring-boot-starter/change-history.en.md       | 485 +++++++++++++++++++++
 .../configuration/spring-boot-starter/shadow.cn.md |   2 +-
 3 files changed, 957 insertions(+), 1 deletion(-)

diff --git 
a/docs/document/content/user-manual/shardingsphere-jdbc/configuration/spring-boot-starter/change-history.cn.md
 
b/docs/document/content/user-manual/shardingsphere-jdbc/configuration/spring-boot-starter/change-history.cn.md
index 0999baf..2f65b53 100644
--- 
a/docs/document/content/user-manual/shardingsphere-jdbc/configuration/spring-boot-starter/change-history.cn.md
+++ 
b/docs/document/content/user-manual/shardingsphere-jdbc/configuration/spring-boot-starter/change-history.cn.md
@@ -22,3 +22,474 @@ 
spring.shardingsphere.rules.replica-query.load-balancers.<load-balance-algorithm
 ```
 
 
算法类型的详情,请参见[内置负载均衡算法列表](/cn/user-manual/shardingsphere-jdbc/configuration/built-in-algorithm/load-balance)。
+
+### 数据分片
+
+#### 配置项说明
+
+```properties
+spring.shardingsphere.datasource.names= # 省略数据源配置,请参考使用手册
+
+# 标准分片表配置
+spring.shardingsphere.rules.sharding.tables.<table-name>.actual-data-nodes= # 
由数据源名 + 
表名组成,以小数点分隔。多个表以逗号分隔,支持inline表达式。缺省表示使用已知数据源与逻辑表名称生成数据节点,用于广播表(即每个库中都需要一个同样的表用于关联查询,多为字典表)或只分库不分表且所有库的表结构完全一致的情况
+
+# 分库策略,缺省表示使用默认分库策略,以下的分片策略只能选其一
+
+# 用于单分片键的标准分片场景
+spring.shardingsphere.rules.sharding.tables.<table-name>.database-strategy.standard.<sharding-algorithm-name>.sharding-column=
 # 分片列名称
+spring.shardingsphere.rules.sharding.tables.<table-name>.database-strategy.standard.<sharding-algorithm-name>.sharding-algorithm-name=
 # 分片算法名称
+
+# 用于多分片键的复合分片场景
+spring.shardingsphere.rules.sharding.tables.<table-name>.database-strategy.complex.<sharding-algorithm-name>.sharding-columns=
 # 分片列名称,多个列以逗号分隔
+spring.shardingsphere.rules.sharding.tables.<table-name>.database-strategy.complex.<sharding-algorithm-name>.sharding-algorithm-name=
 # 分片算法名称
+
+# 用于Hint 的分片策略
+spring.shardingsphere.rules.sharding.tables.<table-name>.database-strategy.hint.<sharding-algorithm-name>.sharding-algorithm-name=
 # 分片算法名称
+
+# 分表策略,同分库策略
+spring.shardingsphere.rules.sharding.tables.<table-name>.table-strategy.xxx= # 
省略
+
+# 自动分片表配置
+spring.shardingsphere.rules.sharding.auto-tables.<auto-table-name>.actual-data-sources=
 # 数据源名
+
+spring.shardingsphere.rules.sharding.auto-tables.<auto-table-name>.sharding-strategy.standard.sharding-column=
 # 分片列名称
+spring.shardingsphere.rules.sharding.auto-tables.<auto-table-name>.sharding-strategy.standard.sharding-algorithm=
 # 自动分片算法名称
+
+# 分布式序列策略配置
+spring.shardingsphere.rules.sharding.tables.<table-name>.key-generate-strategy.column=
 # 分布式序列列名称
+spring.shardingsphere.rules.sharding.tables.<table-name>.key-generate-strategy.key-generator-name=
 # 分布式序列算法名称
+
+spring.shardingsphere.rules.sharding.binding-tables[0]= # 绑定表规则列表
+spring.shardingsphere.rules.sharding.binding-tables[1]= # 绑定表规则列表
+spring.shardingsphere.rules.sharding.binding-tables[x]= # 绑定表规则列表
+
+spring.shardingsphere.rules.sharding.broadcast-tables[0]= # 广播表规则列表
+spring.shardingsphere.rules.sharding.broadcast-tables[1]= # 广播表规则列表
+spring.shardingsphere.rules.sharding.broadcast-tables[x]= # 广播表规则列表
+
+spring.shardingsphere.sharding.default-database-strategy.xxx= # 默认数据库分片策略
+spring.shardingsphere.sharding.default-table-strategy.xxx= # 默认表分片策略
+spring.shardingsphere.sharding.default-key-generate-strategy.xxx= # 默认分布式序列策略
+
+# 分片算法配置
+spring.shardingsphere.rules.sharding.sharding-algorithms.<sharding-algorithm-name>.type=
 # 分片算法类型
+spring.shardingsphere.rules.sharding.sharding-algorithms.<sharding-algorithm-name>.props.xxx=#
 分片算法属性配置
+
+# 分布式序列算法配置
+spring.shardingsphere.rules.sharding.key-generators.<key-generate-algorithm-name>.type=
 # 分布式序列算法类型
+spring.shardingsphere.rules.sharding.key-generators.<key-generate-algorithm-name>.props.xxx=
 # 分布式序列算法属性配置
+```
+
+算法类型的详情,请参见[内置分片算法列表](/cn/user-manual/shardingsphere-jdbc/configuration/built-in-algorithm/sharding)和[内置分布式序列算法列表](/cn/user-manual/shardingsphere-jdbc/configuration/built-in-algorithm/keygen)。
+
+### 数据加密
+
+#### 配置项说明
+
+```properties
+spring.shardingsphere.datasource.names= # 省略数据源配置,请参考使用手册
+
+spring.shardingsphere.rules.encrypt.tables.<table-name>.columns.<column-name>.cipher-column=
 # 加密列名称
+spring.shardingsphere.rules.encrypt.tables.<table-name>.columns.<column-name>.assisted-query-column=
 # 查询列名称
+spring.shardingsphere.rules.encrypt.tables.<table-name>.columns.<column-name>.plain-column=
 # 原文列名称
+spring.shardingsphere.rules.encrypt.tables.<table-name>.columns.<column-name>.encryptor-name=
 # 加密算法名称
+
+# 加密算法配置
+spring.shardingsphere.rules.encrypt.encryptors.<encrypt-algorithm-name>.type= 
# 加密算法类型
+spring.shardingsphere.rules.encrypt.encryptors.<encrypt-algorithm-name>.props.xxx=
 # 加密算法属性配置
+```
+
+算法类型的详情,请参见[内置分片算法列表](/cn/user-manual/shardingsphere-jdbc/configuration/built-in-algorithm/encrypt)
+
+### 影子库
+
+#### 配置项说明
+
+```properties
+spring.shardingsphere.datasource.names= # 省略数据源配置,请参考使用手册
+
+spring.shardingsphere.rules.shadow.column= # 影子字段名称名称
+spring.shardingsphere.rules.shadow.shadow-mappings.<product-data-source-name>= 
# 影子数据库名称
+```
+
+### 分布式治理
+
+#### 配置项说明
+
+```properties
+spring.shardingsphere.governance.name= # 治理名称
+spring.shardingsphere.governance.registry-center.type= # 治理持久化类型。如:Zookeeper, 
etcd, Apollo, Nacos
+spring.shardingsphere.governance.registry-center.server-lists= # 治理服务列表。包括 IP 
地址和端口号。多个地址用逗号分隔。如: host1:2181,host2:2181
+spring.shardingsphere.governance.registry-center.props= # 其它配置
+spring.shardingsphere.governance.overwrite= # 
本地配置是否覆盖配置中心配置。如果可覆盖,每次启动都以本地配置为准.
+```
+
+### 混合规则
+
+#### 配置项说明
+
+```properties
+# 数据源配置
+# 数据源名称,多数据源以逗号分隔
+spring.shardingsphere.datasource.names= 
write-ds0,write-ds1,write-ds0-read0,write-ds1-read0
+
+spring.shardingsphere.datasource.write-ds0.url= # 数据库 URL 连接
+spring.shardingsphere.datasource.write-ds0.type=  # 数据库连接池类名称
+spring.shardingsphere.datasource.write-ds0.driver-class-name= # 数据库驱动类名
+spring.shardingsphere.datasource.write-ds0.username= # 数据库用户名
+spring.shardingsphere.datasource.write-ds0.password= # 数据库密码
+spring.shardingsphere.datasource.write-ds0.xxx=  # 数据库连接池的其它属性
+
+spring.shardingsphere.datasource.write-ds1.url= # 数据库 URL 连接
+
+spring.shardingsphere.datasource.write-ds0-read0.url= # 数据库 URL 连接
+
+spring.shardingsphere.datasource.write-ds1-read0.url= # 数据库 URL 连接
+
+# 分片规则配置
+# 分库策略
+spring.shardingsphere.rules.sharding.default-database-strategy.standard.sharding-column=user_id
+spring.shardingsphere.rules.sharding.default-database-strategy.standard.sharding-algorithm-name=default-database-strategy-inline
+# 绑定表规则,多组绑定规则使用数组形式配置
+spring.shardingsphere.rules.sharding.binding-tables[0]=t_user,t_user_detail # 
绑定表名称,多个表之间以逗号分隔
+spring.shardingsphere.rules.sharding.binding-tables[1]= # 绑定表名称,多个表之间以逗号分隔
+spring.shardingsphere.rules.sharding.binding-tables[x]= # 绑定表名称,多个表之间以逗号分隔
+# 广播表规则配置
+spring.shardingsphere.rules.sharding.broadcast-tables= # 广播表名称,多个表之间以逗号分隔
+
+# 分表策略
+# 表达式 `ds_$->{0..1}`枚举的数据源为读写分离配置的逻辑数据源名称
+spring.shardingsphere.rules.sharding.tables.t_user.actual-data-nodes=ds_$->{0..1}.t_user_$->{0..1}
+spring.shardingsphere.rules.sharding.tables.t_user.table-strategy.standard.sharding-column=user_id
+spring.shardingsphere.rules.sharding.tables.t_user.table-strategy.standard.sharding-algorithm-name=user-table-strategy-inline
+
+spring.shardingsphere.rules.sharding.tables.t_user_detail.actual-data-nodes=ds_$->{0..1}.t_user_detail_$->{0..1}
+spring.shardingsphere.rules.sharding.tables.t_user_detail.table-strategy.standard.sharding-column=user_id
+spring.shardingsphere.rules.sharding.tables.t_user_detail.table-strategy.standard.sharding-algorithm-name=user-detail-table-strategy-inline
+
+# 数据加密配置
+# `t_user` 使用分片规则配置的逻辑表名称
+spring.shardingsphere.rules.encrypt.tables.t_user.columns.user_name.cipher-column=user_name
+spring.shardingsphere.rules.encrypt.tables.t_user.columns.user_name.encryptor-name=name-encryptor
+spring.shardingsphere.rules.encrypt.tables.t_user.columns.pwd.cipher-column=pwd
+spring.shardingsphere.rules.encrypt.tables.t_user.columns.pwd.encryptor-name=pwd-encryptor
+
+# 数据加密算法配置
+spring.shardingsphere.rules.encrypt.encryptors.name-encryptor.type=AES
+spring.shardingsphere.rules.encrypt.encryptors.name-encryptor.props.aes-key-value=123456abc
+spring.shardingsphere.rules.encrypt.encryptors.pwd-encryptor.type=AES
+spring.shardingsphere.rules.encrypt.encryptors.pwd-encryptor.props.aes-key-value=123456abc
+
+# 分布式序列策略配置
+spring.shardingsphere.rules.sharding.tables.t_user.key-generate-strategy.column=user_id
+spring.shardingsphere.rules.sharding.tables.t_user.key-generate-strategy.key-generator-name=snowflake
+
+# 分片算法配置
+spring.shardingsphere.rules.sharding.sharding-algorithms.default-database-strategy-inline.type=INLINE
+# 表达式`ds_$->{user_id % 2}` 枚举的数据源为读写分离配置的逻辑数据源名称
+spring.shardingsphere.rules.sharding.sharding-algorithms.default-database-strategy-inline.algorithm-expression=ds_$->{user_id
 % 2}
+spring.shardingsphere.rules.sharding.sharding-algorithms.user-table-strategy-inline.type=INLINE
+spring.shardingsphere.rules.sharding.sharding-algorithms.user-table-strategy-inline.algorithm-expression=t_user_$->{user_id
 % 2}
+
+spring.shardingsphere.rules.sharding.sharding-algorithms.user-detail-table-strategy-inline.type=INLINE
+spring.shardingsphere.rules.sharding.sharding-algorithms.user-detail-table-strategy-inline.algorithm-expression=t_user_detail_$->{user_id
 % 2}
+
+# 分布式序列算法配置
+spring.shardingsphere.rules.sharding.key-generators.snowflake.type=SNOWFLAKE
+spring.shardingsphere.rules.sharding.key-generators.snowflake.props.worker-id=123
+
+# 读写分离策略配置
+# ds_0,ds_1为读写分离配置的逻辑数据源名称
+spring.shardingsphere.rules.read-write-splitting.data-sources.ds_0.write-data-source-name=write-ds0
+spring.shardingsphere.rules.read-write-splitting.data-sources.ds_0.read-data-source-names=write-ds0-read0
+spring.shardingsphere.rules.read-write-splitting.data-sources.ds_0.load-balancer-name=read-random
+spring.shardingsphere.rules.read-write-splitting.data-sources.ds_1.write-data-source-name=write-ds1
+spring.shardingsphere.rules.read-write-splitting.data-sources.ds_1.read-data-source-names=write-ds1-read0
+spring.shardingsphere.rules.read-write-splitting.data-sources.ds_1.load-balancer-name=read-random
+
+# 负载均衡算法配置
+spring.shardingsphere.rules.read-write-splitting.load-balancers.read-random.type=RANDOM
+```
+
+## shardingsphere-4.x
+
+### 读写分离
+
+#### 配置项说明
+
+```properties
+#省略数据源配置,与数据分片一致
+
+spring.shardingsphere.sharding.master-slave-rules.<master-slave-data-source-name>.master-data-source-name=
 #主库数据源名称
+spring.shardingsphere.sharding.master-slave-rules.<master-slave-data-source-name>.slave-data-source-names[0]=
 #从库数据源名称列表
+spring.shardingsphere.sharding.master-slave-rules.<master-slave-data-source-name>.slave-data-source-names[1]=
 #从库数据源名称列表
+spring.shardingsphere.sharding.master-slave-rules.<master-slave-data-source-name>.slave-data-source-names[x]=
 #从库数据源名称列表
+spring.shardingsphere.sharding.master-slave-rules.<master-slave-data-source-name>.load-balance-algorithm-class-name=
 #从库负载均衡算法类名称。该类需实现MasterSlaveLoadBalanceAlgorithm接口且提供无参数构造器
+spring.shardingsphere.sharding.master-slave-rules.<master-slave-data-source-name>.load-balance-algorithm-type=
 #从库负载均衡算法类型,可选值:ROUND_ROBIN,RANDOM。若`load-balance-algorithm-class-name`存在则忽略该配置
+
+spring.shardingsphere.props.sql.show= #是否开启SQL显示,默认值: false
+spring.shardingsphere.props.executor.size= #工作线程数量,默认值: CPU核数
+spring.shardingsphere.props.check.table.metadata.enabled= 
#是否在启动时检查分表元数据一致性,默认值: false
+```
+
+### 数据分片
+
+#### 配置项说明
+
+```properties
+spring.shardingsphere.datasource.names= #数据源名称,多数据源以逗号分隔
+
+spring.shardingsphere.datasource.<data-source-name>.type= #数据库连接池类名称
+spring.shardingsphere.datasource.<data-source-name>.driver-class-name= #数据库驱动类名
+spring.shardingsphere.datasource.<data-source-name>.url= #数据库url连接
+spring.shardingsphere.datasource.<data-source-name>.username= #数据库用户名
+spring.shardingsphere.datasource.<data-source-name>.password= #数据库密码
+spring.shardingsphere.datasource.<data-source-name>.xxx= #数据库连接池的其它属性
+
+spring.shardingsphere.sharding.tables.<logic-table-name>.actual-data-nodes= 
#由数据源名 + 
表名组成,以小数点分隔。多个表以逗号分隔,支持inline表达式。缺省表示使用已知数据源与逻辑表名称生成数据节点,用于广播表(即每个库中都需要一个同样的表用于关联查询,多为字典表)或只分库不分表且所有库的表结构完全一致的情况
+
+#分库策略,缺省表示使用默认分库策略,以下的分片策略只能选其一
+
+#用于单分片键的标准分片场景
+spring.shardingsphere.sharding.tables.<logic-table-name>.database-strategy.standard.sharding-column=
 #分片列名称
+spring.shardingsphere.sharding.tables.<logic-table-name>.database-strategy.standard.precise-algorithm-class-name=
 #精确分片算法类名称,用于=和IN。该类需实现PreciseShardingAlgorithm接口并提供无参数的构造器
+spring.shardingsphere.sharding.tables.<logic-table-name>.database-strategy.standard.range-algorithm-class-name=
 #范围分片算法类名称,用于BETWEEN,可选。该类需实现RangeShardingAlgorithm接口并提供无参数的构造器
+
+#用于多分片键的复合分片场景
+spring.shardingsphere.sharding.tables.<logic-table-name>.database-strategy.complex.sharding-columns=
 #分片列名称,多个列以逗号分隔
+spring.shardingsphere.sharding.tables.<logic-table-name>.database-strategy.complex.algorithm-class-name=
 #复合分片算法类名称。该类需实现ComplexKeysShardingAlgorithm接口并提供无参数的构造器
+
+#行表达式分片策略
+spring.shardingsphere.sharding.tables.<logic-table-name>.database-strategy.inline.sharding-column=
 #分片列名称
+spring.shardingsphere.sharding.tables.<logic-table-name>.database-strategy.inline.algorithm-expression=
 #分片算法行表达式,需符合groovy语法
+
+#Hint分片策略
+spring.shardingsphere.sharding.tables.<logic-table-name>.database-strategy.hint.algorithm-class-name=
 #Hint分片算法类名称。该类需实现HintShardingAlgorithm接口并提供无参数的构造器
+
+#分表策略,同分库策略
+spring.shardingsphere.sharding.tables.<logic-table-name>.table-strategy.xxx= 
#省略
+
+spring.shardingsphere.sharding.tables.<logic-table-name>.key-generator.column= 
#自增列名称,缺省表示不使用自增主键生成器
+spring.shardingsphere.sharding.tables.<logic-table-name>.key-generator.type= 
#自增列值生成器类型,缺省表示使用默认自增列值生成器。可使用用户自定义的列值生成器或选择内置类型:SNOWFLAKE/UUID
+spring.shardingsphere.sharding.tables.<logic-table-name>.key-generator.props.<property-name>=
 #属性配置, 
注意:使用SNOWFLAKE算法,需要配置worker.id与max.tolerate.time.difference.milliseconds属性。若使用此算法生成值作分片值,建议配置max.vibration.offset属性
+
+spring.shardingsphere.sharding.binding-tables[0]= #绑定表规则列表
+spring.shardingsphere.sharding.binding-tables[1]= #绑定表规则列表
+spring.shardingsphere.sharding.binding-tables[x]= #绑定表规则列表
+
+spring.shardingsphere.sharding.broadcast-tables[0]= #广播表规则列表
+spring.shardingsphere.sharding.broadcast-tables[1]= #广播表规则列表
+spring.shardingsphere.sharding.broadcast-tables[x]= #广播表规则列表
+
+spring.shardingsphere.sharding.default-data-source-name= #未配置分片规则的表将通过默认数据源定位
+spring.shardingsphere.sharding.default-database-strategy.xxx= #默认数据库分片策略,同分库策略
+spring.shardingsphere.sharding.default-table-strategy.xxx= #默认表分片策略,同分表策略
+spring.shardingsphere.sharding.default-key-generator.type= 
#默认自增列值生成器类型,缺省将使用org.apache.shardingsphere.core.keygen.generator.impl.SnowflakeKeyGenerator。可使用用户自定义的列值生成器或选择内置类型:SNOWFLAKE/UUID
+spring.shardingsphere.sharding.default-key-generator.props.<property-name>= 
#自增列值生成器属性配置, 比如SNOWFLAKE算法的worker.id与max.tolerate.time.difference.milliseconds
+
+spring.shardingsphere.sharding.master-slave-rules.<master-slave-data-source-name>.master-data-source-name=
 #详见读写分离部分
+spring.shardingsphere.sharding.master-slave-rules.<master-slave-data-source-name>.slave-data-source-names[0]=
 #详见读写分离部分
+spring.shardingsphere.sharding.master-slave-rules.<master-slave-data-source-name>.slave-data-source-names[1]=
 #详见读写分离部分
+spring.shardingsphere.sharding.master-slave-rules.<master-slave-data-source-name>.slave-data-source-names[x]=
 #详见读写分离部分
+spring.shardingsphere.sharding.master-slave-rules.<master-slave-data-source-name>.load-balance-algorithm-class-name=
 #详见读写分离部分
+spring.shardingsphere.sharding.master-slave-rules.<master-slave-data-source-name>.load-balance-algorithm-type=
 #详见读写分离部分
+
+spring.shardingsphere.props.sql.show= #是否开启SQL显示,默认值: false
+spring.shardingsphere.props.executor.size= #工作线程数量,默认值: CPU核数
+```
+
+### 编排治理
+
+#### 治理
+
+##### 配置项说明
+
+```properties
+#省略数据源、数据分片、读写分离和数据脱敏配置
+
+spring.shardingsphere.orchestration.name= #治理实例名称
+spring.shardingsphere.orchestration.overwrite= 
#本地配置是否覆盖注册中心配置。如果可覆盖,每次启动都以本地配置为准
+spring.shardingsphere.orchestration.registry.type= #配置中心类型。如:zookeeper
+spring.shardingsphere.orchestration.registry.server-lists= 
#连接注册中心服务器的列表。包括IP地址和端口号。多个地址用逗号分隔。如: host1:2181,host2:2181
+spring.shardingsphere.orchestration.registry.namespace= #注册中心的命名空间
+spring.shardingsphere.orchestration.registry.digest= #连接注册中心的权限令牌。缺省为不需要权限验证
+spring.shardingsphere.orchestration.registry.operation-timeout-milliseconds= 
#操作超时的毫秒数,默认500毫秒
+spring.shardingsphere.orchestration.registry.max-retries= #连接失败后的最大重试次数,默认3次
+spring.shardingsphere.orchestration.registry.retry-interval-milliseconds= 
#重试间隔毫秒数,默认500毫秒
+spring.shardingsphere.orchestration.registry.time-to-live-seconds= 
#临时节点存活秒数,默认60秒
+spring.shardingsphere.orchestration.registry.props= #配置中心其它属性
+```
+
+### 数据脱敏
+
+#### 配置项说明
+
+```properties
+#省略数据源配置,与数据分片一致
+
+spring.shardingsphere.encrypt.encryptors.<encryptor-name>.type= 
#加解密器类型,可自定义或选择内置类型:MD5/AES
+spring.shardingsphere.encrypt.encryptors.<encryptor-name>.props.<property-name>=
 #属性配置, 注意:使用AES加密器,需要配置AES加密器的KEY属性:aes.key.value
+spring.shardingsphere.encrypt.tables.<table-name>.columns.<logic-column-name>.plainColumn=
 #存储明文的字段
+spring.shardingsphere.encrypt.tables.<table-name>.columns.<logic-column-name>.cipherColumn=
 #存储密文的字段
+spring.shardingsphere.encrypt.tables.<table-name>.columns.<logic-column-name>.assistedQueryColumn=
 #辅助查询字段,针对ShardingQueryAssistedEncryptor类型的加解密器进行辅助查询
+spring.shardingsphere.encrypt.tables.<table-name>.columns.<logic-column-name>.encryptor=
 #加密器名字
+```
+
+## shardingsphere-3.x
+
+### 数据分片
+
+#### 配置项说明
+
+```properties
+sharding.jdbc.datasource.names= #数据源名称,多数据源以逗号分隔
+
+sharding.jdbc.datasource.<data-source-name>.type= #数据库连接池类名称
+sharding.jdbc.datasource.<data-source-name>.driver-class-name= #数据库驱动类名
+sharding.jdbc.datasource.<data-source-name>.url= #数据库url连接
+sharding.jdbc.datasource.<data-source-name>.username= #数据库用户名
+sharding.jdbc.datasource.<data-source-name>.password= #数据库密码
+sharding.jdbc.datasource.<data-source-name>.xxx= #数据库连接池的其它属性
+
+sharding.jdbc.config.sharding.tables.<logic-table-name>.actual-data-nodes= 
#由数据源名 + 
表名组成,以小数点分隔。多个表以逗号分隔,支持inline表达式。缺省表示使用已知数据源与逻辑表名称生成数据节点。用于广播表(即每个库中都需要一个同样的表用于关联查询,多为字典表)或只分库不分表且所有库的表结构完全一致的情况
+
+#分库策略,缺省表示使用默认分库策略,以下的分片策略只能选其一
+
+#用于单分片键的标准分片场景
+sharding.jdbc.config.sharding.tables.<logic-table-name>.database-strategy.standard.sharding-column=
 #分片列名称
+sharding.jdbc.config.sharding.tables.<logic-table-name>.database-strategy.standard.precise-algorithm-class-name=
 #精确分片算法类名称,用于=和IN。该类需实现PreciseShardingAlgorithm接口并提供无参数的构造器
+sharding.jdbc.config.sharding.tables.<logic-table-name>.database-strategy.standard.range-algorithm-class-name=
 #范围分片算法类名称,用于BETWEEN,可选。该类需实现RangeShardingAlgorithm接口并提供无参数的构造器
+
+#用于多分片键的复合分片场景
+sharding.jdbc.config.sharding.tables.<logic-table-name>.database-strategy.complex.sharding-columns=
 #分片列名称,多个列以逗号分隔
+sharding.jdbc.config.sharding.tables.<logic-table-name>.database-strategy.complex.algorithm-class-name=
 #复合分片算法类名称。该类需实现ComplexKeysShardingAlgorithm接口并提供无参数的构造器
+
+#行表达式分片策略
+sharding.jdbc.config.sharding.tables.<logic-table-name>.database-strategy.inline.sharding-column=
 #分片列名称
+sharding.jdbc.config.sharding.tables.<logic-table-name>.database-strategy.inline.algorithm-expression=
 #分片算法行表达式,需符合groovy语法
+
+#Hint分片策略
+sharding.jdbc.config.sharding.tables.<logic-table-name>.database-strategy.hint.algorithm-class-name=
 #Hint分片算法类名称。该类需实现HintShardingAlgorithm接口并提供无参数的构造器
+
+#分表策略,同分库策略
+sharding.jdbc.config.sharding.tables.<logic-table-name>.table-strategy.xxx= #省略
+
+sharding.jdbc.config.sharding.tables.<logic-table-name>.key-generator-column-name=
 #自增列名称,缺省表示不使用自增主键生成器
+sharding.jdbc.config.sharding.tables.<logic-table-name>.key-generator-class-name=
 #自增列值生成器类名称,缺省表示使用默认自增列值生成器。该类需提供无参数的构造器
+
+sharding.jdbc.config.sharding.tables.<logic-table-name>.logic-index= 
#逻辑索引名称,对于分表的Oracle/PostgreSQL数据库中DROP INDEX XXX语句,需要通过配置逻辑索引名称定位所执行SQL的真实分表
+
+sharding.jdbc.config.sharding.binding-tables[0]= #绑定表规则列表
+sharding.jdbc.config.sharding.binding-tables[1]= #绑定表规则列表
+sharding.jdbc.config.sharding.binding-tables[x]= #绑定表规则列表
+
+sharding.jdbc.config.sharding.broadcast-tables[0]= #广播表规则列表
+sharding.jdbc.config.sharding.broadcast-tables[1]= #广播表规则列表
+sharding.jdbc.config.sharding.broadcast-tables[x]= #广播表规则列表
+
+sharding.jdbc.config.sharding.default-data-source-name= #未配置分片规则的表将通过默认数据源定位
+sharding.jdbc.config.sharding.default-database-strategy.xxx= #默认数据库分片策略,同分库策略
+sharding.jdbc.config.sharding.default-table-strategy.xxx= #默认表分片策略,同分表策略
+sharding.jdbc.config.sharding.default-key-generator-class-name= 
#默认自增列值生成器类名称,缺省使用io.shardingsphere.core.keygen.DefaultKeyGenerator。该类需实现KeyGenerator接口并提供无参数的构造器
+
+sharding.jdbc.config.sharding.master-slave-rules.<master-slave-data-source-name>.master-data-source-name=
 #详见读写分离部分
+sharding.jdbc.config.sharding.master-slave-rules.<master-slave-data-source-name>.slave-data-source-names[0]=
 #详见读写分离部分
+sharding.jdbc.config.sharding.master-slave-rules.<master-slave-data-source-name>.slave-data-source-names[1]=
 #详见读写分离部分
+sharding.jdbc.config.sharding.master-slave-rules.<master-slave-data-source-name>.slave-data-source-names[x]=
 #详见读写分离部分
+sharding.jdbc.config.sharding.master-slave-rules.<master-slave-data-source-name>.load-balance-algorithm-class-name=
 #详见读写分离部分
+sharding.jdbc.config.sharding.master-slave-rules.<master-slave-data-source-name>.load-balance-algorithm-type=
 #详见读写分离部分
+
+sharding.jdbc.config.props.sql.show= #是否开启SQL显示,默认值: false
+sharding.jdbc.config.props.executor.size= #工作线程数量,默认值: CPU核数
+
+sharding.jdbc.config.config.map.key1= #用户自定义配置
+sharding.jdbc.config.config.map.key2= #用户自定义配置
+sharding.jdbc.config.config.map.keyx= #用户自定义配置
+```
+
+### 读写分离
+
+#### 配置项说明
+
+```properties
+#省略数据源配置,与数据分片一致
+
+sharding.jdbc.config.sharding.master-slave-rules.<master-slave-data-source-name>.master-data-source-name=
 #主库数据源名称
+sharding.jdbc.config.sharding.master-slave-rules.<master-slave-data-source-name>.slave-data-source-names[0]=
 #从库数据源名称列表
+sharding.jdbc.config.sharding.master-slave-rules.<master-slave-data-source-name>.slave-data-source-names[1]=
 #从库数据源名称列表
+sharding.jdbc.config.sharding.master-slave-rules.<master-slave-data-source-name>.slave-data-source-names[x]=
 #从库数据源名称列表
+sharding.jdbc.config.sharding.master-slave-rules.<master-slave-data-source-name>.load-balance-algorithm-class-name=
 #从库负载均衡算法类名称。该类需实现MasterSlaveLoadBalanceAlgorithm接口且提供无参数构造器
+sharding.jdbc.config.sharding.master-slave-rules.<master-slave-data-source-name>.load-balance-algorithm-type=
 #从库负载均衡算法类型,可选值:ROUND_ROBIN,RANDOM。若`load-balance-algorithm-class-name`存在则忽略该配置
+
+sharding.jdbc.config.config.map.key1= #用户自定义配置
+sharding.jdbc.config.config.map.key2= #用户自定义配置
+sharding.jdbc.config.config.map.keyx= #用户自定义配置
+
+sharding.jdbc.config.props.sql.show= #是否开启SQL显示,默认值: false
+sharding.jdbc.config.props.executor.size= #工作线程数量,默认值: CPU核数
+sharding.jdbc.config.props.check.table.metadata.enabled= 
#是否在启动时检查分表元数据一致性,默认值: false
+```
+
+### 数据治理
+
+#### 配置项说明
+
+```properties
+#省略数据源、数据分片和读写分离配置
+
+sharding.jdbc.config.sharding.orchestration.name= #数据治理实例名称
+sharding.jdbc.config.sharding.orchestration.overwrite= 
#本地配置是否覆盖注册中心配置。如果可覆盖,每次启动都以本地配置为准
+sharding.jdbc.config.sharding.orchestration.registry.server-lists= 
#连接注册中心服务器的列表。包括IP地址和端口号。多个地址用逗号分隔。如: host1:2181,host2:2181
+sharding.jdbc.config.sharding.orchestration.registry.namespace= #注册中心的命名空间
+sharding.jdbc.config.sharding.orchestration.registry.digest= 
#连接注册中心的权限令牌。缺省为不需要权限验证
+sharding.jdbc.config.sharding.orchestration.registry.operation-timeout-milliseconds=
 #操作超时的毫秒数,默认500毫秒
+sharding.jdbc.config.sharding.orchestration.registry.max-retries= 
#连接失败后的最大重试次数,默认3次
+sharding.jdbc.config.sharding.orchestration.registry.retry-interval-milliseconds=
 #重试间隔毫秒数,默认500毫秒
+sharding.jdbc.config.sharding.orchestration.registry.time-to-live-seconds= 
#临时节点存活秒数,默认60秒
+```
+
+## shardingsphere-2.x
+
+### 读写分离
+
+#### 配置项说明
+
+```properties
+
+sharding.jdbc.config.masterslave.load-balance-algorithm-type= 
#从库负载均衡算法类型,可选值:ROUND_ROBIN,RANDOM。若`load-balance-algorithm-class-name`存在则忽略该配置
+sharding.jdbc.config.masterslave.name= #主库名称
+sharding.jdbc.config.masterslave.master-data-source-name= #主库数据源名称
+sharding.jdbc.config.masterslave.slave-data-source-names= #从数据源名称,多个使用逗号隔开
+```
+
+### 分库分表
+
+#### 配置说明
+
+```properties
+
+sharding.jdbc.config.sharding.default-data-source-name= #未配置分片规则的表将通过默认数据源定位
+sharding.jdbc.config.sharding.default-database-strategy.inline.sharding-column=
 #默认分库数据列
+sharding.jdbc.config.sharding.default-database-strategy.inline.algorithm-expression=
 # 默认分库inline表达式
+sharding.jdbc.config.sharding.tables.<logic-table-name>.actualDataNodes= 
#由数据源名 + 
表名组成,以小数点分隔。多个表以逗号分隔,支持inline表达式。缺省表示使用已知数据源与逻辑表名称生成数据节点。用于广播表(即每个库中都需要一个同样的表用于关联查询,多为字典表)或只分库不分表且所有库的表结构完全一致的情况
+sharding.jdbc.config.sharding.tables.<logic-table-name>.tableStrategy.inline.shardingColumn=
 #默认分表的列
+sharding.jdbc.config.sharding.tables.<logic-table-name>.tableStrategy.inline.algorithmInlineExpression=
 #默认分表inline表达式
+sharding.jdbc.config.sharding.tables.<logic-table-name>.keyGeneratorColumnName=
  #默认自增列值生成器类名称
+```
+
+### 编排治理
+
+#### 配置项说明
+
+```properties
+
+sharding.jdbc.config.orchestration.name= #数据治理实例名称
+sharding.jdbc.config.orchestration.overwrite= 
#本地配置是否覆盖注册中心配置。如果可覆盖,每次启动都以本地配置为准
+
+# zookeeper配置说明
+sharding.jdbc.config.orchestration.zookeeper.namespace= # zookeeper配置中心命名空间
+sharding.jdbc.config.orchestration.zookeeper.server-lists= 
#连接zookeeper注册中心服务器的列表。包括IP地址和端口号。多个地址用逗号分隔。如: host1:2181,host2:2181
+
+# etcd配置说明
+sharding.jdbc.config.orchestration.etcd.server-lists= 
#连接etcd注册中心服务器的列表。包括IP地址和端口号。多个地址用逗号分隔。如: host1:2181,host2:2181
+```
\ No newline at end of file
diff --git 
a/docs/document/content/user-manual/shardingsphere-jdbc/configuration/spring-boot-starter/change-history.en.md
 
b/docs/document/content/user-manual/shardingsphere-jdbc/configuration/spring-boot-starter/change-history.en.md
index 38e2613..2775130 100644
--- 
a/docs/document/content/user-manual/shardingsphere-jdbc/configuration/spring-boot-starter/change-history.en.md
+++ 
b/docs/document/content/user-manual/shardingsphere-jdbc/configuration/spring-boot-starter/change-history.en.md
@@ -22,3 +22,488 @@ 
spring.shardingsphere.rules.replica-query.load-balancers.<load-balance-algorithm
 ```
 
 Please refer to [Built-in Load Balance Algorithm 
List](/en/user-manual/shardingsphere-jdbc/configuration/built-in-algorithm/load-balance)
 for more details about type of algorithm.
+
+### Sharding
+
+#### Configuration Item Explanation
+
+```properties
+spring.shardingsphere.datasource.names= # Omit the data source configuration, 
please refer to the usage
+
+# Standard sharding table configuration
+spring.shardingsphere.rules.sharding.tables.<table-name>.actual-data-nodes= # 
Describe data source names and actual tables, delimiter as point, multiple data 
nodes separated with comma, support inline expression. Absent means sharding 
databases only.
+
+# Databases sharding strategy, use default databases sharding strategy if 
absent. sharding strategy below can choose only one.
+
+# For single sharding column scenario
+spring.shardingsphere.rules.sharding.tables.<table-name>.database-strategy.standard.<sharding-algorithm-name>.sharding-column=
 # Sharding column name
+spring.shardingsphere.rules.sharding.tables.<table-name>.database-strategy.standard.<sharding-algorithm-name>.sharding-algorithm-name=
 # Sharding algorithm name
+
+# For multiple sharding columns scenario
+spring.shardingsphere.rules.sharding.tables.<table-name>.database-strategy.complex.<sharding-algorithm-name>.sharding-columns=
 # Sharding column names, multiple columns separated with comma
+spring.shardingsphere.rules.sharding.tables.<table-name>.database-strategy.complex.<sharding-algorithm-name>.sharding-algorithm-name=
 # Sharding algorithm name
+
+# Sharding by hint
+spring.shardingsphere.rules.sharding.tables.<table-name>.database-strategy.hint.<sharding-algorithm-name>.sharding-algorithm-name=
 # Sharding algorithm name
+
+# Tables sharding strategy, same as database sharding strategy
+spring.shardingsphere.rules.sharding.tables.<table-name>.table-strategy.xxx= # 
Omitted
+
+# Auto sharding table configuraiton
+spring.shardingsphere.rules.sharding.auto-tables.<auto-table-name>.actual-data-sources=
 # data source names
+
+spring.shardingsphere.rules.sharding.auto-tables.<auto-table-name>.sharding-strategy.standard.sharding-column=
 # Sharding column name
+spring.shardingsphere.rules.sharding.auto-tables.<auto-table-name>.sharding-strategy.standard.sharding-algorithm=
 # Auto sharding algorithm name
+
+# Key generator strategy configuration
+spring.shardingsphere.rules.sharding.tables.<table-name>.key-generate-strategy.column=
 # Column name of key generator
+spring.shardingsphere.rules.sharding.tables.<table-name>.key-generate-strategy.key-generator-name=
 # Key generator name
+
+spring.shardingsphere.rules.sharding.binding-tables[0]= # Binding table name
+spring.shardingsphere.rules.sharding.binding-tables[1]= # Binding table name
+spring.shardingsphere.rules.sharding.binding-tables[x]= # Binding table name
+
+spring.shardingsphere.rules.sharding.broadcast-tables[0]= # Broadcast tables
+spring.shardingsphere.rules.sharding.broadcast-tables[1]= # Broadcast tables
+spring.shardingsphere.rules.sharding.broadcast-tables[x]= # Broadcast tables
+
+spring.shardingsphere.sharding.default-database-strategy.xxx= # Default 
strategy for database sharding
+spring.shardingsphere.sharding.default-table-strategy.xxx= # Default strategy 
for table sharding
+spring.shardingsphere.sharding.default-key-generate-strategy.xxx= # Default 
Key generator strategy
+
+# Sharding algorithm configuration
+spring.shardingsphere.rules.sharding.sharding-algorithms.<sharding-algorithm-name>.type=
 # Sharding algorithm type
+spring.shardingsphere.rules.sharding.sharding-algorithms.<sharding-algorithm-name>.props.xxx=#
 Sharding algorithm properties
+
+# Key generate algorithm configuration
+spring.shardingsphere.rules.sharding.key-generators.<key-generate-algorithm-name>.type=
 # Key generate algorithm type
+spring.shardingsphere.rules.sharding.key-generators.<key-generate-algorithm-name>.props.xxx=
 # Key generate algorithm properties
+```
+
+Please refer to [Built-in sharding Algorithm 
List](/en/user-manual/shardingsphere-jdbc/configuration/built-in-algorithm/sharding)
 and [Built-in keygen Algorithm 
List](/en/user-manual/shardingsphere-jdbc/configuration/built-in-algorithm/keygen)。
+
+
+### Encryption
+
+#### Configuration Item Explanation
+
+```properties
+spring.shardingsphere.datasource.names= # Omit the data source configuration, 
please refer to the usage
+
+spring.shardingsphere.rules.encrypt.tables.<table-name>.columns.<column-name>.cipher-column=
 # Cipher column name
+spring.shardingsphere.rules.encrypt.tables.<table-name>.columns.<column-name>.assisted-query-column=
 # Assisted query column name
+spring.shardingsphere.rules.encrypt.tables.<table-name>.columns.<column-name>.plain-column=
 # Plain column name
+spring.shardingsphere.rules.encrypt.tables.<table-name>.columns.<column-name>.encryptor-name=
 # Encrypt algorithm name
+
+# Encrypt algorithm configuration
+spring.shardingsphere.rules.encrypt.encryptors.<encrypt-algorithm-name>.type= 
# Encrypt algorithm type
+spring.shardingsphere.rules.encrypt.encryptors.<encrypt-algorithm-name>.props.xxx=
 # Encrypt algorithm properties
+```
+
+### Shadow DB
+
+#### Configuration Item Explanation
+
+```properties
+spring.shardingsphere.datasource.names= # Omit the data source configuration, 
please refer to the usage
+
+spring.shardingsphere.rules.shadow.column= # Shadow column name
+spring.shardingsphere.rules.shadow.shadow-mappings.<product-data-source-name>= 
# Shadow data source name
+```
+
+### Governance
+
+#### Configuration Item Explanation
+
+##### Management
+
+```properties
+spring.shardingsphere.governance.name= # Governance name
+spring.shardingsphere.governance.registry-center.type= # Governance instance 
type. Example:Zookeeper, etcd, Apollo, Nacos
+spring.shardingsphere.governance.registry-center.server-lists= # The list of 
servers that connect to governance instance, including IP and port number; use 
commas to separate
+spring.shardingsphere.governance.registry-center.props= # Other properties
+spring.shardingsphere.governance.overwrite= # Whether to overwrite local 
configurations with config center configurations; if it can, each 
initialization should refer to local configurations
+```
+
+### Mixed Rules
+
+#### Configuration Item Explanation
+
+```properties
+# data source configuration
+spring.shardingsphere.datasource.names= 
write-ds0,write-ds1,write-ds0-read0,write-ds1-read0
+
+spring.shardingsphere.datasource.write-ds0.url= # Database URL connection
+spring.shardingsphere.datasource.write-ds0.type=  # Database connection pool 
type name
+spring.shardingsphere.datasource.write-ds0.driver-class-name= # Database 
driver class name
+spring.shardingsphere.datasource.write-ds0.username= # Database username
+spring.shardingsphere.datasource.write-ds0.password= # Database password
+spring.shardingsphere.datasource.write-ds0.xxx=  # Other properties of 
database connection pool
+
+spring.shardingsphere.datasource.write-ds1.url= # Database URL connection
+# ...Omit specific configuration.
+
+spring.shardingsphere.datasource.write-ds0-read0.url= # Database URL connection
+# ...Omit specific configuration.
+
+spring.shardingsphere.datasource.write-ds1-read0.url= # Database URL connection
+# ...Omit specific configuration.
+
+# Sharding rules configuration
+# Databases sharding strategy
+spring.shardingsphere.rules.sharding.default-database-strategy.standard.sharding-column=user_id
+spring.shardingsphere.rules.sharding.default-database-strategy.standard.sharding-algorithm-name=default-database-strategy-inline
+# Binding table rules configuration ,and multiple groups of binding-tables 
configured with arrays
+spring.shardingsphere.rules.sharding.binding-tables[0]=t_user,t_user_detail
+spring.shardingsphere.rules.sharding.binding-tables[1]= # Binding table 
names,multiple table name are separated by commas
+spring.shardingsphere.rules.sharding.binding-tables[x]= # Binding table 
names,multiple table name are separated by commas
+# Broadcast table rules configuration
+spring.shardingsphere.rules.sharding.broadcast-tables= # Broadcast table 
names,multiple table name are separated by commas
+
+# Table sharding strategy
+# The enumeration value of `ds_$->{0..1}` is the name of the logical data 
source configured with read-write-splitting
+spring.shardingsphere.rules.sharding.tables.t_user.actual-data-nodes=ds_$->{0..1}.t_user_$->{0..1}
+spring.shardingsphere.rules.sharding.tables.t_user.table-strategy.standard.sharding-column=user_id
+spring.shardingsphere.rules.sharding.tables.t_user.table-strategy.standard.sharding-algorithm-name=user-table-strategy-inline
+
+# Data encrypt configuration
+# Table `t_user` is the name of the logical table that uses for data sharding 
configuration.
+spring.shardingsphere.rules.encrypt.tables.t_user.columns.user_name.cipher-column=user_name
+spring.shardingsphere.rules.encrypt.tables.t_user.columns.user_name.encryptor-name=name-encryptor
+spring.shardingsphere.rules.encrypt.tables.t_user.columns.pwd.cipher-column=pwd
+spring.shardingsphere.rules.encrypt.tables.t_user.columns.pwd.encryptor-name=pwd-encryptor
+
+# Data encrypt algorithm configuration
+spring.shardingsphere.rules.encrypt.encryptors.name-encryptor.type=AES
+spring.shardingsphere.rules.encrypt.encryptors.name-encryptor.props.aes-key-value=123456abc
+spring.shardingsphere.rules.encrypt.encryptors.pwd-encryptor.type=AES
+spring.shardingsphere.rules.encrypt.encryptors.pwd-encryptor.props.aes-key-value=123456abc
+
+# Key generate strategy configuration
+spring.shardingsphere.rules.sharding.tables.t_user.key-generate-strategy.column=user_id
+spring.shardingsphere.rules.sharding.tables.t_user.key-generate-strategy.key-generator-name=snowflake
+
+# Sharding algorithm configuration
+spring.shardingsphere.rules.sharding.sharding-algorithms.default-database-strategy-inline.type=INLINE
+# The enumeration value of `ds_$->{user_id % 2}` is the name of the logical 
data source configured with read-write-splitting
+spring.shardingsphere.rules.sharding.sharding-algorithms.default-database-strategy-inline.algorithm-expression=ds$->{user_id
 % 2}
+spring.shardingsphere.rules.sharding.sharding-algorithms.user-table-strategy-inline.type=INLINE
+spring.shardingsphere.rules.sharding.sharding-algorithms.user-table-strategy-inline.algorithm-expression=t_user_$->{user_id
 % 2}
+
+# Key generate algorithm configuration
+spring.shardingsphere.rules.sharding.key-generators.snowflake.type=SNOWFLAKE
+spring.shardingsphere.rules.sharding.key-generators.snowflake.props.worker-id=123
+
+# read query configuration
+# ds_0,ds_1 is the logical data source name of the read-write-splitting
+spring.shardingsphere.rules.read-write-splitting.data-sources.ds_0.write-data-source-name=write-ds0
+spring.shardingsphere.rules.read-write-splitting.data-sources.ds_0.read-data-source-names=write-ds0-read0
+spring.shardingsphere.rules.read-write-splitting.data-sources.ds_0.load-balancer-name=read-random
+spring.shardingsphere.rules.read-write-splitting.data-sources.ds_1.write-data-source-name=write-ds1
+spring.shardingsphere.rules.read-write-splitting.data-sources.ds_1.read-data-source-names=write-ds1-read0
+spring.shardingsphere.rules.read-write-splitting.data-sources.ds_1.load-balancer-name=read-random
+
+# Load balance algorithm configuration
+spring.shardingsphere.rules.read-write-splitting.load-balancers.read-random.type=RANDOM
+```
+
+## Shardingsphere-4.x
+
+### Read-Write Split
+
+#### Configuration Item Explanation
+
+```properties
+#Omit data source configurations; keep it consistent with data sharding
+
+spring.shardingsphere.sharding.master-slave-rules.<master-slave-data-source-name>.master-data-source-name=
 #Data source name of master database
+spring.shardingsphere.sharding.master-slave-rules.<master-slave-data-source-name>.slave-data-source-names[0]=
 #Data source name list of slave database
+spring.shardingsphere.sharding.master-slave-rules.<master-slave-data-source-name>.slave-data-source-names[1]=
 #Data source name list of slave database
+spring.shardingsphere.sharding.master-slave-rules.<master-slave-data-source-name>.slave-data-source-names[x]=
 #Data source name list of slave database
+spring.shardingsphere.sharding.master-slave-rules.<master-slave-data-source-name>.load-balance-algorithm-class-name=
 #Load balance algorithm class name; the class needs to implement 
MasterSlaveLoadBalanceAlgorithm interface and provide parameter-free constructor
+spring.shardingsphere.sharding.master-slave-rules.<master-slave-data-source-name>.load-balance-algorithm-type=
 #Load balance algorithm class of slave database; optional value: ROUND_ROBIN 
and RANDOM; if there is load-balance-algorithm-class-name, the configuration 
can be omitted
+
+spring.shardingsphere.props.sql.show= #Show SQL or not; default value: false
+spring.shardingsphere.props.executor.size= #Executing thread number; default 
value: CPU core number
+spring.shardingsphere.props.check.table.metadata.enabled= #Whether to check 
meta-data consistency of sharding table when it initializes; default value: 
false
+```
+
+### Data Sharding
+
+#### Configuration Item Explanation
+
+```properties
+spring.shardingsphere.datasource.names= #Data source name; multiple data 
sources are separated by commas
+
+spring.shardingsphere.datasource.<data-source-name>.type= #Database connection 
pool type name
+spring.shardingsphere.datasource.<data-source-name>.driver-class-name= 
#Database driver class name
+spring.shardingsphere.datasource.<data-source-name>.url= #Database url 
connection
+spring.shardingsphere.datasource.<data-source-name>.username= #Database 
username
+spring.shardingsphere.datasource.<data-source-name>.password= #Database 
password
+spring.shardingsphere.datasource.<data-source-name>.xxx= #Other properties of 
database connection pool
+
+spring.shardingsphere.sharding.tables.<logic-table-name>.actual-data-nodes= 
#It is consisted of data source name + table name, separated by decimal points; 
multiple tables are separated by commas and support inline expressions; default 
means using existing data sources and logic table names to generate data nodes; 
it can be applied in broadcast tables (each database needs a same table for 
relevance query, dictionary table mostly) or the situation with sharding 
database but without shardi [...]
+
+#Database sharding strategy; default means using default database sharding 
strategy; it can only choose one of the following sharding strategies
+
+#It is applied in standard sharding situation of single-sharding key
+spring.shardingsphere.sharding.tables.<logic-table-name>.database-strategy.standard.sharding-column=
 #Sharding column name
+spring.shardingsphere.sharding.tables.<logic-table-name>.database-strategy.standard.precise-algorithm-class-name=
 #Precise algorithm class name, applied in = and IN; the class needs to 
implement PreciseShardingAlgorithm interface and provide parameter-free 
constructor
+spring.shardingsphere.sharding.tables.<logic-table-name>.database-strategy.standard.range-algorithm-class-name=
 #Range sharding algorithm class name, applied in BETWEEN, optional; the class 
should implement RangeShardingAlgorithm interface and provide parameter-free 
constructor
+
+#It is applied in complex sharding situations with multiple sharding keys
+spring.shardingsphere.sharding.tables.<logic-table-name>.database-strategy.complex.sharding-columns=
 #Sharding column name, with multiple columns separated by commas
+spring.shardingsphere.sharding.tables.<logic-table-name>.database-strategy.complex.algorithm-class-name=
 #Complex sharding algorithm class name; the class needs to implement 
ComplexKeysShardingAlgorithm interface and provide parameter-free constructor
+
+#Inline expression sharding strategy
+spring.shardingsphere.sharding.tables.<logic-table-name>.database-strategy.inline.sharding-column=
 #Sharding column name
+spring.shardingsphere.sharding.tables.<logic-table-name>.database-strategy.inline.algorithm-expression=
 #Inline expression of sharding algorithm, which needs to conform to groovy 
statements
+
+#Hint Sharding Strategy
+spring.shardingsphere.sharding.tables.<logic-table-name>.database-strategy.hint.algorithm-class-name=
 #Hint algorithm class name;  the class needs to implement 
HintShardingAlgorithm interface and provide parameter-free constructor
+
+#Table sharding strategy, same as database sharding strategy
+spring.shardingsphere.sharding.tables.<logic-table-name>.table-strategy.xxx= 
#Omitted
+
+spring.shardingsphere.sharding.tables.<logic-table-name>.key-generator.column= 
#Auto-increment column name; default means not using auto-increment key 
generator
+spring.shardingsphere.sharding.tables.<logic-table-name>.key-generator.type= 
#Auto-increament key generator type; default means using default 
auto-increament key generator; user defined generator or internal generator 
(SNOWFLAKE, UUID) can both be selected
+spring.shardingsphere.sharding.tables.<logic-table-name>.key-generator.props.<property-name>=
 #Properties, Notice: when use SNOWFLAKE, `worker.id` and 
`max.tolerate.time.difference.milliseconds` for `SNOWFLAKE` need to be set. To 
use the generated value of this algorithm as sharding value, it is recommended 
to configure `max.vibration.offset`
+
+spring.shardingsphere.sharding.binding-tables[0]= #Binding table rule list
+spring.shardingsphere.sharding.binding-tables[1]= #Binding table rule list
+spring.shardingsphere.sharding.binding-tables[x]= #Binding table rule list
+
+spring.shardingsphere.sharding.broadcast-tables[0]= #Broadcast table rule list
+spring.shardingsphere.sharding.broadcast-tables[1]= #Broadcast table rule list
+spring.shardingsphere.sharding.broadcast-tables[x]= #Broadcast table rule list
+
+spring.shardingsphere.sharding.default-data-source-name= #Tables without 
sharding rules will be located through default data source
+spring.shardingsphere.sharding.default-database-strategy.xxx= #Default 
database sharding strategy
+spring.shardingsphere.sharding.default-table-strategy.xxx= #Default table 
sharding strategy
+spring.shardingsphere.sharding.default-key-generator.type= #Default 
auto-increament key generator of type; it will use 
org.apache.shardingsphere.core.keygen.generator.impl.SnowflakeKeyGenerator in 
default; user defined generator or internal generator (SNOWFLAKE or UUID) can 
both be used
+spring.shardingsphere.sharding.default-key-generator.props.<property-name>= 
#Auto-increament key generator property configuration, such as worker.id and 
max.tolerate.time.difference.milliseconds of SNOWFLAKE algorithm
+
+spring.shardingsphere.sharding.master-slave-rules.<master-slave-data-source-name>.master-data-source-name=
 #Refer to read-write split part for more details
+spring.shardingsphere.sharding.master-slave-rules.<master-slave-data-source-name>.slave-data-source-names[0]=
 #Refer to read-write split part for more details
+spring.shardingsphere.sharding.master-slave-rules.<master-slave-data-source-name>.slave-data-source-names[1]=
 #Refer to read-write split part for more details
+spring.shardingsphere.sharding.master-slave-rules.<master-slave-data-source-name>.slave-data-source-names[x]=
 #Refer to read-write split part for more details
+spring.shardingsphere.sharding.master-slave-rules.<master-slave-data-source-name>.load-balance-algorithm-class-name=
 #Refer to read-write split part for more details
+spring.shardingsphere.sharding.master-slave-rules.<master-slave-data-source-name>.load-balance-algorithm-type=
 #Refer to read-write split part for more details
+
+spring.shardingsphere.props.sql.show= #Show SQL or not; default value: false
+spring.shardingsphere.props.executor.size= #Executing thread number; default 
value: CPU core number
+```
+
+### Data Masking
+
+#### Configuration Item Explanation
+
+```properties
+#Omit data source configurations; keep it consistent with data sharding
+
+spring.shardingsphere.encrypt.encryptors.<encryptor-name>.type= #Type of 
encryptor,use user-defined ones or built-in ones, e.g. MD5/AES  
+spring.shardingsphere.encrypt.encryptors.<encryptor-name>.props.<property-name>=
 #Properties, Notice: when use AES encryptor, `aes.key.value` for AES encryptor 
need to be set
+spring.shardingsphere.encrypt.tables.<table-name>.columns.<logic-column-name>.plainColumn=
 #Plain column name
+spring.shardingsphere.encrypt.tables.<table-name>.columns.<logic-column-name>.cipherColumn=
 #Cipher column name 
+spring.shardingsphere.encrypt.tables.<table-name>.columns.<logic-column-name>.assistedQueryColumn=
 #AssistedColumns for query,when use ShardingQueryAssistedEncryptor, it can 
help query encrypted data
+spring.shardingsphere.encrypt.tables.<table-name>.columns.<logic-column-name>.encryptor=
 #Encryptor name
+```
+
+### Orchestration
+
+#### Configuration Item Explanation
+
+```properties
+#Omit data source, data sharding, read-write split and data masking 
configurations
+
+spring.shardingsphere.orchestration.name= #Orchestration instance name
+spring.shardingsphere.orchestration.overwrite= #Whether to overwrite local 
configurations with registry center configurations; if it can, each 
initialization should refer to local configurations
+spring.shardingsphere.orchestration.registry.type= #Registry center type. 
Example:zookeeper
+spring.shardingsphere.orchestration.registry.server-lists= #The list of 
servers that connect to registry center, including IP and port number; use 
commas to separate
+spring.shardingsphere.orchestration.registry.namespace= #Registry center 
namespace
+spring.shardingsphere.orchestration.registry.digest= #The token that connects 
to the registry center; default means there is no need for authentication
+spring.shardingsphere.orchestration.registry.operation-timeout-milliseconds= 
#The millisecond number for operation timeout; default value: 500 milliseconds
+spring.shardingsphere.orchestration.registry.max-retries= #Maximum retry time 
after failing; default value: 3 times
+spring.shardingsphere.orchestration.registry.retry-interval-milliseconds= 
#Interval time to retry; default value: 500 milliseconds
+spring.shardingsphere.orchestration.registry.time-to-live-seconds= #Living 
time of temporary nodes; default value: 60 seconds
+spring.shardingsphere.orchestration.registry.props= #Customize registry center 
props.
+```
+
+## shardingsphere-3.x
+
+### Sharding
+
+#### Configuration Item Explanation
+
+```properties
+sharding.jdbc.datasource.names= #Names of data sources. Multiple data sources 
separated with comma
+
+sharding.jdbc.datasource.<data-source-name>.type= #Class name of data source 
pool
+sharding.jdbc.datasource.<data-source-name>.driver-class-name= #Class name of 
database driver
+sharding.jdbc.datasource.<data-source-name>.url= #Database URL
+sharding.jdbc.datasource.<data-source-name>.username= #Database username
+sharding.jdbc.datasource.<data-source-name>.password= #Database password
+sharding.jdbc.datasource.<data-source-name>.xxx= #Other properties for data 
source pool
+
+sharding.jdbc.config.sharding.tables.<logic-table-name>.actual-data-nodes= 
#Describe data source names and actual tables, delimiter as point, multiple 
data nodes separated with comma, support inline expression. Absent means 
sharding databases only. Example: ds${0..7}.tbl${0..7}
+
+#Databases sharding strategy, use default databases sharding strategy if 
absent. sharding strategy below can choose only one.
+
+#Standard sharding scenario for single sharding column
+sharding.jdbc.config.sharding.tables.<logic-table-name>.database-strategy.standard.sharding-column=
 #Name of sharding column
+sharding.jdbc.config.sharding.tables.<logic-table-name>.database-strategy.standard.precise-algorithm-class-name=
 #Precise algorithm class name used for `=` and `IN`. This class need to 
implements PreciseShardingAlgorithm, and require a no argument constructor
+sharding.jdbc.config.sharding.tables.<logic-table-name>.database-strategy.standard.range-algorithm-class-name=
 #Range algorithm class name used for `BETWEEN`. This class need to implements 
RangeShardingAlgorithm, and require a no argument constructor
+
+#Complex sharding scenario for multiple sharding columns
+sharding.jdbc.config.sharding.tables.<logic-table-name>.database-strategy.complex.sharding-columns=
 #Names of sharding columns. Multiple columns separated with comma
+sharding.jdbc.config.sharding.tables.<logic-table-name>.database-strategy.complex.algorithm-class-name=
 #Complex sharding algorithm class name. This class need to implements 
ComplexKeysShardingAlgorithm, and require a no argument constructor
+
+#Inline expression sharding scenario for si-gle s-arding column
+sharding.jdbc.config.sharding.tables.<logic-table-name>.database-strategy.inline.sharding-column=
 #Name of sharding column
+sharding.jdbc.config.sharding.tables.<logic-table-name>.database-strategy.inline.algorithm-expression=
 #Inline expression for sharding algorithm
+
+#Hint sharding strategy
+sharding.jdbc.config.sharding.tables.<logic-table-name>.database-strategy.hint.algorithm-class-name=
 #Hint sharding algorithm class name. This class need to implements 
HintShardingAlgorithm, and require a no argument constructor
+
+#Tables sharding strategy, Same as database- shar-ing strategy
+sharding.jdbc.config.sharding.tables.<logic-table-name>.table-strategy.xxx= 
#Ignore
+
+sharding.jdbc.config.sharding.tables.<logic-table-name>.key-generator-column-name=
 #Column name of key generator, do not use Key generator if absent
+sharding.jdbc.config.sharding.tables.<logic-table-name>.key-generator-class-name=
 #Key generator, use default key generator if absent. This class need to 
implements KeyGenerator, and require a no argument constructor
+
+sharding.jdbc.config.sharding.tables.<logic-table-name>.logic-index= #Name if 
logic index. If use `DROP INDEX XXX` SQL in Oracle/PostgreSQL, This property 
needs to be set for finding the actual tables
+
+sharding.jdbc.config.sharding.binding-tables[0]= #Binding table rule 
configurations
+sharding.jdbc.config.sharding.binding-tables[1]= #Binding table rule 
configurations
+sharding.jdbc.config.sharding.binding-tables[x]= #Binding table rule 
configurations
+
+sharding.jdbc.config.sharding.broadcast-tables[0]= #Broadcast table rule 
configurations
+sharding.jdbc.config.sharding.broadcast-tables[1]= #Broadcast table rule 
configurations
+sharding.jdbc.config.sharding.broadcast-tables[x]= #Broadcast table rule 
configurations
+
+sharding.jdbc.config.sharding.default-data-source-name= #If table not 
configure at table rule, will route to defaultDataSourceName
+sharding.jdbc.config.sharding.default-database-strategy.xxx= #Default strategy 
for sharding databases, same as databases sharding strategy
+sharding.jdbc.config.sharding.default-table-strategy.xxx= #Default strategy 
for sharding tables, same as tables sharding strategy
+sharding.jdbc.config.sharding.default-key-generator-class-name= #Default key 
generator class name, default value is 
`io.shardingsphere.core.keygen.DefaultKeyGenerator`. This class need to 
implements KeyGenerator, and require a no argument constructor
+
+sharding.jdbc.config.sharding.master-slave-rules.<master-slave-data-source-name>.master-data-source-name=
 #more details can reference Read-write splitting part
+sharding.jdbc.config.sharding.master-slave-rules.<master-slave-data-source-name>.slave-data-source-names[0]=
 #more details can reference Read-write splitting part
+sharding.jdbc.config.sharding.master-slave-rules.<master-slave-data-source-name>.slave-data-source-names[1]=
 #more details can reference Read-write splitting part
+sharding.jdbc.config.sharding.master-slave-rules.<master-slave-data-source-name>.slave-data-source-names[x]=
 #more details can reference Read-write splitting part
+sharding.jdbc.config.sharding.master-slave-rules.<master-slave-data-source-name>.load-balance-algorithm-class-name=
 #more details can reference Read-write splitting part
+sharding.jdbc.config.sharding.master-slave-rules.<master-slave-data-source-name>.load-balance-algorithm-type=
 #more details can reference Read-write splitting part
+sharding.jdbc.config.config.map.key1= #more details can reference Read-write 
splitting part
+sharding.jdbc.config.config.map.key2= #more details can reference Read-write 
splitting part
+sharding.jdbc.config.config.map.keyx= #more details can reference Read-write 
splitting part
+
+sharding.jdbc.config.props.sql.show= #To show SQLS or not, default value: false
+sharding.jdbc.config.props.executor.size= #The number of working threads, 
default value: CPU count
+
+sharding.jdbc.config.config.map.key1= #User-defined arguments
+sharding.jdbc.config.config.map.key2= #User-defined arguments
+sharding.jdbc.config.config.map.keyx= #User-defined arguments
+```
+
+### Read-write splitting
+
+#### Configuration Item Explanation
+
+```properties
+#Ignore data sources configuration, same as sharding
+
+sharding.jdbc.config.sharding.master-slave-rules.<master-slave-data-source-name>.master-data-source-name=
 #Name of master data source
+sharding.jdbc.config.sharding.master-slave-rules.<master-slave-data-source-name>.slave-data-source-names[0]=
  #Name of master data source
+sharding.jdbc.config.sharding.master-slave-rules.<master-slave-data-source-name>.slave-data-source-names[1]=
 #Names of Slave data sources
+sharding.jdbc.config.sharding.master-slave-rules.<master-slave-data-source-name>.slave-data-source-names[x]=
 #Names of Slave data sources
+sharding.jdbc.config.sharding.master-slave-rules.<master-slave-data-source-name>.load-balance-algorithm-class-name=
 #Load balance algorithm class name. This class need to implements 
MasterSlaveLoadBalanceAlgorithm, and require a no argument constructor 
+sharding.jdbc.config.sharding.master-slave-rules.<master-slave-data-source-name>.load-balance-algorithm-type=
 #Load balance algorithm type, values should be: `ROUND_ROBIN` or `RANDOM`. 
Ignore if `load-balance-algorithm-class-name` is present 
+
+sharding.jdbc.config.config.map.key1= #User-defined arguments
+sharding.jdbc.config.config.map.key2= #User-defined arguments
+sharding.jdbc.config.config.map.keyx= #User-defined arguments
+
+sharding.jdbc.config.props.sql.show= #To show SQLS or not, default value: false
+sharding.jdbc.config.props.executor.size= #The number of working threads, 
default value: CPU count
+sharding.jdbc.config.props.check.table.metadata.enabled= #Check the metadata 
consistency of all the tables, default value: false
+```
+
+### Orchestration
+
+#### Configuration Item Explanation
+
+```properties
+#Ignore data sources, sharding and read-write splitting configuration
+
+sharding.jdbc.config.sharding.orchestration.name= #Name of orchestration 
instance
+sharding.jdbc.config.sharding.orchestration.overwrite= #Use local 
configuration to overwrite registry center or not
+sharding.jdbc.config.sharding.orchestration.registry.server-lists= #Rgistry 
servers list, multiple split as comma. Example: host1:2181,host2:2181
+sharding.jdbc.config.sharding.orchestration.registry.namespace= #Namespace of 
registry
+sharding.jdbc.config.sharding.orchestration.registry.digest= #Digest for 
registry. Default is not need digest.
+sharding.jdbc.config.sharding.orchestration.registry.operation-timeout-milliseconds=
 #Operation timeout time in milliseconds, default value is 500 milliseconds
+sharding.jdbc.config.sharding.orchestration.registry.max-retries= #Max number 
of times to retry, default value is 3
+sharding.jdbc.config.sharding.orchestration.registry.retry-interval-milliseconds=
 #Time interval in milliseconds on each retry, default value is 500 milliseconds
+sharding.jdbc.config.sharding.orchestration.registry.time-to-live-seconds= 
#Time to live in seconds of ephemeral keys, default value is 60 seconds
+```
+
+## Shardingsphere-2.x
+
+### Read-write splitting
+
+#### Configuration Item Explanation
+
+```properties
+# Ignore data sources configuration
+
+sharding.jdbc.config.masterslave.load-balance-algorithm-type= #Load balance 
algorithm class of slave database; optional value: ROUND_ROBIN and RANDOM; if 
there is load-balance-algorithm-class-name, the configuration can be omitted
+sharding.jdbc.config.masterslave.name= # master name
+sharding.jdbc.config.masterslave.master-data-source-name= #Name of master data 
source
+sharding.jdbc.config.masterslave.slave-data-source-names= #Name of master data 
source
+```
+
+### Sharding
+
+#### Configuration Item Explanation
+
+```properties
+# Ignore data sources configuration
+sharding.jdbc.config.sharding.default-data-source-name= #Tables without 
sharding rules will be located through default data source
+sharding.jdbc.config.sharding.default-database-strategy.inline.sharding-column=
 #Name of database sharding column
+sharding.jdbc.config.sharding.default-database-strategy.inline.algorithm-expression=
 #Inline expression for database sharding algorithm
+sharding.jdbc.config.sharding.tables.t_order.actualDataNodes= #Describe data 
source names and actual tables, delimiter as point, multiple data nodes 
separated with comma, support inline expression. Absent means sharding 
databases only. Example: ds${0..7}.tbl${0..7}
+sharding.jdbc.config.sharding.tables.t_order.tableStrategy.inline.shardingColumn=
 #Name of table sharding column
+sharding.jdbc.config.sharding.tables.t_order.tableStrategy.inline.algorithmInlineExpression=
 #Inline expression for table sharding algorithm
+sharding.jdbc.config.sharding.tables.t_order.keyGeneratorColumnName= #Column 
name of key generator, do not use Key generator if absent
+
+
+sharding.jdbc.config.sharding.tables.<logic-table-name>.key-generator-column-name=
 #Column name of key generator, do not use Key generator if absent
+sharding.jdbc.config.sharding.tables.<logic-table-name>.key-generator-class-name=
 #Key generator, use default key generator if absent. This class need to 
implements KeyGenerator, and require a no argument constructor
+
+```
+
+### Orchestration
+
+#### Configuration Item Explanation
+
+```properties
+# Ignore data sources configuration
+sharding.jdbc.config.orchestration.name= #Name of orchestration instance
+sharding.jdbc.config.orchestration.overwrite= #Use local configuration to 
overwrite registry center or not
+
+
+sharding.jdbc.config.sharding.orchestration.name= #Name of orchestration 
instance
+sharding.jdbc.config.sharding.orchestration.overwrite= #Use local 
configuration to overwrite registry center or not
+sharding.jdbc.config.sharding.orchestration.registry.server-lists= #Rgistry 
servers list, multiple split as comma. Example: host1:2181,host2:2181
+sharding.jdbc.config.sharding.orchestration.registry.namespace= #Namespace of 
registry
+sharding.jdbc.config.sharding.orchestration.registry.digest= #Digest for 
registry. Default is not need digest.
+sharding.jdbc.config.sharding.orchestration.registry.operation-timeout-milliseconds=
 #Operation timeout time in milliseconds, default value is 500 milliseconds
+sharding.jdbc.config.sharding.orchestration.registry.max-retries= #Max number 
of times to retry, default value is 3
+sharding.jdbc.config.sharding.orchestration.registry.retry-interval-milliseconds=
 #Time interval in milliseconds on each retry, default value is 500 milliseconds
+sharding.jdbc.config.sharding.orchestration.registry.time-to-live-seconds= 
#Time to live in seconds of ephemeral keys, default value is 60 seconds
+
+# The configuration in Zookeeper
+sharding.jdbc.config.orchestration.zookeeper.namespace= #Namespace of 
zookeeper registry
+sharding.jdbc.config.orchestration.zookeeper.server-lists= #Zookeeper Rgistry 
servers list, multiple split as comma. Example: host1:2181,host2:2181
+
+# The configuration in Etcd
+sharding.jdbc.config.orchestration.etcd.server-lists= #Etcd Rgistry servers 
list, multiple split as comma. Example: host1:2181,host2:2181
+```
\ No newline at end of file
diff --git 
a/docs/document/content/user-manual/shardingsphere-jdbc/configuration/spring-boot-starter/shadow.cn.md
 
b/docs/document/content/user-manual/shardingsphere-jdbc/configuration/spring-boot-starter/shadow.cn.md
index 5aa6b7b..e0efc9c 100644
--- 
a/docs/document/content/user-manual/shardingsphere-jdbc/configuration/spring-boot-starter/shadow.cn.md
+++ 
b/docs/document/content/user-manual/shardingsphere-jdbc/configuration/spring-boot-starter/shadow.cn.md
@@ -8,6 +8,6 @@ weight = 4
 ```properties
 spring.shardingsphere.datasource.names= # 省略数据源配置,请参考使用手册
 
-spring.shardingsphere.rules.shadow.column= # 影子字段名称名称
+spring.shardingsphere.rules.shadow.column= # 影子字段名称
 spring.shardingsphere.rules.shadow.shadow-mappings.<product-data-source-name>= 
# 影子数据库名称
 ```
\ No newline at end of file

Reply via email to