Skip to content

Commit

Permalink
fix #58
Browse files Browse the repository at this point in the history
  • Loading branch information
haocao committed May 5, 2016
1 parent 070ae9a commit a4a1a00
Show file tree
Hide file tree
Showing 68 changed files with 2,223 additions and 784 deletions.
17 changes: 15 additions & 2 deletions pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -9,8 +9,7 @@
<modules>
<module>sharding-jdbc-core</module>
<module>sharding-jdbc-config-parent</module>
<module>sharding-jdbc-transaction</module>
<module>sharding-jdbc-transaction-async-job</module>
<module>sharding-jdbc-transaction-parent</module>
</modules>

<properties>
Expand Down Expand Up @@ -47,7 +46,10 @@
<unitils.core.version>3.4.2</unitils.core.version>
<mockito.version>1.10.19</mockito.version>
<hamcrest.version>1.3</hamcrest.version>
<gson.version>2.6.1</gson.version>
<elastic-job.version>1.0.6</elastic-job.version>
<maven-compiler-plugin.version>3.3</maven-compiler-plugin.version>
<maven-assembly-plugin.version>2.5.5</maven-assembly-plugin.version>
<maven-resources-plugin.version>2.7</maven-resources-plugin.version>
<maven-jar-plugin.version>2.6</maven-jar-plugin.version>
<maven-surefire-plugin.version>2.18.1</maven-surefire-plugin.version>
Expand All @@ -68,6 +70,7 @@
<taglist-maven-plugin.version>2.4</taglist-maven-plugin.version>
<maven-gpg-plugin.version>1.6</maven-gpg-plugin.version>
<javadocExecutable>${java.home}/../bin/javadoc</javadocExecutable>

</properties>

<dependencyManagement>
Expand Down Expand Up @@ -255,6 +258,16 @@
<version>${springframework.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>com.google.code.gson</groupId>
<artifactId>gson</artifactId>
<version>${gson.version}</version>
</dependency>
<dependency>
<groupId>com.dangdang</groupId>
<artifactId>elastic-job-core</artifactId>
<version>${elastic-job.version}</version>
</dependency>
</dependencies>
</dependencyManagement>

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,12 +17,12 @@
</xsd:element>
<xsd:element name="sharding-rule">
<xsd:complexType>
<xsd:all>
<xsd:sequence>
<xsd:element ref="table-rules" minOccurs="1" maxOccurs="1"/>
<xsd:element ref="binding-table-rules" minOccurs="0" maxOccurs="1"/>
<xsd:element ref="default-database-strategy" minOccurs="0" maxOccurs="1"/>
<xsd:element ref="default-table-strategy" minOccurs="0" maxOccurs="1"/>
</xsd:all>
</xsd:sequence>
<xsd:attribute name="data-sources" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
Expand Down
96 changes: 48 additions & 48 deletions sharding-jdbc-doc/content/post/configuration.md
Original file line number Diff line number Diff line change
Expand Up @@ -189,86 +189,86 @@ props: 属性配置(可选)

定义sharding-jdbc数据源

| *名称* | 类型 | *数据类型* | *必填*| *说明* |
| -------------------- | -------- | --------- | ------| ----- |
| id | 属性 | String | 是 | Spring Bean ID |
| sharding-rule | 标签 | - | 是 | 分片规则 |
| binding-table-rules`?` | 标签 | - | 是 | 绑定表规则 |
| default-database-strategy`?` | 标签 | - | 是 | 默认分库策略 |
| default-table-strategy`?` | 标签 | - | 是 | 默认分表策略 |
| props`?` | 标签 | - | 是 | 相关属性配置 |
| *名称* | *类型* | *数据类型* | *必填* | *说明* |
| ----------------------------- | ------------ | --------- | ------ | -------------- |
| id | 属性 | String | 是 | Spring Bean ID |
| sharding-rule | 标签 | - | 是 | 分片规则 |
| binding-table-rules`?` | 标签 | - | 是 | 绑定表规则 |
| default-database-strategy`?` | 标签 | - | 是 | 默认分库策略 |
| default-table-strategy`?` | 标签 | - | 是 | 默认分表策略 |
| props`?` | 标签 | - | 是 | 相关属性配置 |

### \<rdb:sharding-rule/>

| *名称* | 类型 | *数据类型* | *必填*| *说明* |
| -------------------- | -------- | --------- | ------| ----- |
| data-sources | 属性 | String | 是 | 数据源Bean列表,多个Bean以逗号分隔 |
| table-rules | 标签 | - | 是 | 分片规则列表 |
| *名称* | *类型* | *数据类型* | *必填* | *说明* |
| ----------------------------- | ------------ | ---------- | ------ | ------------------------------ |
| data-sources | 属性 | String | 是 | 数据源Bean列表,多个Bean以逗号分隔 |
| table-rules | 标签 | - | 是 | 分片规则列表 |

### \<rdb:table-rules/>

| *名称* | 类型 | *数据类型* | *必填*| *说明* |
| -------------------- | -------- | --------- | ------| ----- |
| *名称* | *类型* | *数据类型* | *必填* | *说明* |
| ----------------------------- | ----------- | ---------- | ------ | ------- |
| table-rule`+` | 标签 | - | 是 | 分片规则 |

### \<rdb:table-rule/>

| *名称* | 类型 | *数据类型* | *必填*| *说明* |
| -------------------- | -------- | --------- | ------| ----- |
| logic-table | 属性 | String | 是 | 逻辑表名 |
actual-tables | 属性 | String | 否 | 真实表名,多个表以逗号分隔,支持inline表达式,指定数据源需要加前缀,不加前缀为默认数据源 指定数据源需要加前缀,不加前缀为默认数据源。不填写表示使用动态表配置 |
| database-strategy | 属性 | String | 否 | 分库策略,对应`<rdb:strategy>`中分库策略id, 如果不填需配置`<rdb:default-database-strategy/>` |
| table-strategy | 属性 | String | 否 | 分表策略,对应`<rdb:strategy>`中分表策略id, 如果不填需配置`<rdb:default-table-strategy/>` |
| *名称* | *类型* | *数据类型* | *必填* | *说明* |
| -------------------- | ------------ | ---------- | ------ | ------- |
| logic-table | 属性 | String | 是 | 逻辑表名 |
| actual-tables | 属性 | String | 否 | 真实表名,多个表以逗号分隔,支持inline表达式,指定数据源需要加前缀,不加前缀为默认数据源 指定数据源需要加前缀,不加前缀为默认数据源。不填写表示使用动态表配置 |
| database-strategy | 属性 | String | 否 | 分库策略,对应`<rdb:strategy>`中分库策略id, 如果不填需配置`<rdb:default-database-strategy/>` |
| table-strategy | 属性 | String | 否 | 分表策略,对应`<rdb:strategy>`中分表策略id, 如果不填需配置`<rdb:default-table-strategy/>` |

### \<rdb:binding-table-rules/>

| *名称* | 类型 | *数据类型* | *必填*| *说明* |
| -------------------- | -------- | --------- | ------| ----- |
| binding-table-rule | 标签 | - | 是 | 绑定规则 |
| *名称* | *类型* | *数据类型* | *必填* | *说明* |
| ----------------------------- | ----------- | --------- | ------ | ------- |
| binding-table-rule | 标签 | - | 是 | 绑定规则 |

### \<rdb:binding-table-rule/>

| *名称* | 类型 | *数据类型* | *必填*| *说明* |
| -------------------- | -------- | --------- | ------| ----- |
| logic-tables | 属性 | String | 是 | 逻辑表名,多个表名以逗号分隔 |
| *名称* | *类型* | *数据类型* | *必填* | *说明* |
| ----------------------------- | ------------ | ---------- | ------ | ------------------------ |
| logic-tables | 属性 | String | 是 | 逻辑表名,多个表名以逗号分隔 |

### \<rdb:default-database-strategy/>

| *名称* | 类型 | *数据类型* | *必填*| *说明* |
| -------------------- | -------- | --------- | ------| ----- |
| *名称* | *类型* | *数据类型* | *必填* | *说明* |
| ----------------------------- | ------------ | ---------- | ------ | ------- |
| sharding-columns | 属性 | String | 是 | 分片列名,多个列以逗号分隔 |
| algorithm-class | 属性 | Class | 否 | 默认分库算法全类名,该类需使用默认的构造器或者提供无参数的构造器,与`algorithm-expression`有且仅有一个出现 |
| algorithm-expression | 属性 | String | 否 | 默认分库算法表达式,与`algorithm-class`有且仅有一个出现 |

### \<rdb:default-table-strategy/\>

| *名称* | 类型 | *数据类型* | *必填*| *说明* |
| -------------------- | -------- | --------- | ------| ----- |
| sharding-columns | 属性 | String | 是 | 分片列名,多个列以逗号分隔 |
| algorithm-class | 属性 | Class | 否 | 默认分表算法全类名,该类需使用默认的构造器或者提供无参数的构造器,与`algorithm-expression`有且仅有一个出现 |
| algorithm-expression | 属性 | String | 否 | 默认分表算法表达式,与`algorithm-class`有且仅有一个出现 |
| *名称* | *类型* | *数据类型* | *必填* | *说明* |
| ----------------------------- | ------------ | --------- | ------ | ------- |
| sharding-columns | 属性 | String | 是 | 分片列名,多个列以逗号分隔 |
| algorithm-class | 属性 | Class | 否 | 默认分表算法全类名,该类需使用默认的构造器或者提供无参数的构造器,与`algorithm-expression`有且仅有一个出现 |
| algorithm-expression | 属性 | String | 否 | 默认分表算法表达式,与`algorithm-class`有且仅有一个出现 |

### \<rdb:strategy/\>`*`

定义数据分库或分表策略

| *名称* | 类型 | *数据类型* | *必填*| *说明* |
| -------------------- | -------- | --------- | ------| ----- |
| id | 属性 | String | 是 | Spring Bean ID |
| sharding-columns | 属性 | String | 是 | 分片列名,多个列以逗号分隔 |
| algorithm-class | 属性 | Class | 否 | 分库或分表算法全类名,该类需使用默认的构造器或者提供无参数的构造器,与`algorithm-expression`有且仅有一个出现 |
| algorithm-expression | 属性 | String | 否 | 分库或分表算法表达式,与`algorithm-class`有且仅有一个出现 |
| *名称* | *类型* | *数据类型* | *必填* | *说明* |
| ----------------------------- | ------------ | ---------- | ------ | ------- |
| id | 属性 | String | 是 | Spring Bean ID |
| sharding-columns | 属性 | String | 是 | 分片列名,多个列以逗号分隔 |
| algorithm-class | 属性 | Class | 否 | 分库或分表算法全类名,该类需使用默认的构造器或者提供无参数的构造器,与`algorithm-expression`有且仅有一个出现 |
| algorithm-expression | 属性 | String | 否 | 分库或分表算法表达式,与`algorithm-class`有且仅有一个出现 |

### \<rdb:props/\>

| *名称* | 类型 | *数据类型* | *必填*| *说明* |
| ------------------------------------ | ------------ | ---------- | -----| ------------------------------------|
| metrics.enable | 属性 | boolean | 否 | 是否开启度量采集,默认为false不开启 |
| metrics.millisecond.period | 属性 | String | 否 | 度量输出周期,单位为毫秒 |
| metrics.logger.name | 属性 | String | 否 | 度量输出在日志中的标识名称 |
| executor.min.idle.size | 属性 | int | 否 | 最小空闲工作线程数量 |
| executor.max.size | 属性 | int | 否 | 最大工作线程数量 |
| executor.max.idle.timeout.millisecond| 属性 | int | 否 | 工作线程空闲时超时时间,默认以毫秒为单位 |
| *名称* | *类型* | *数据类型* | *必填* | *说明* |
| ------------------------------------ | ------------ | ---------- | ----- | ----------------------------------- |
| metrics.enable | 属性 | boolean | 否 | 是否开启度量采集,默认为false不开启 |
| metrics.millisecond.period | 属性 | String | 否 | 度量输出周期,单位为毫秒 |
| metrics.logger.name | 属性 | String | 否 | 度量输出在日志中的标识名称 |
| executor.min.idle.size | 属性 | int | 否 | 最小空闲工作线程数量 |
| executor.max.size | 属性 | int | 否 | 最大工作线程数量 |
| executor.max.idle.timeout.millisecond| 属性 | int | 否 | 工作线程空闲时超时时间,默认以毫秒为单位 |

### Spring格式特别说明
如需使用inline表达式,需配置`ignore-unresolvable`为`true`,否则placeholder会把inline表达式当成属性key值导致出错.
Expand Down Expand Up @@ -306,7 +306,7 @@ data_source_${id.longValue() % 2 + 1}
方法列表如下:

| *方法名* | *入参* | *返回类型* |
| ------------------------ | -------------- | ---------------|
| ------------------------ | -------------- | -------------- |
| longValue() | | long |
| doubleValue() | | double |
| dateValue(String format) | 时间格式化表达式 | java.util.Date |
Expand Down
1 change: 1 addition & 0 deletions sharding-jdbc-doc/content/post/release_notes.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@ weight = 1
### 新功能

1. [ISSUE #53](https://github.com/dangdangdotcom/sharding-jdbc/issues/53) 动态表配置
1. [ISSUE #58](https://github.com/dangdangdotcom/sharding-jdbc/issues/58) 柔性事务:最大努力送达型

### 结构调整

Expand Down
Loading

0 comments on commit a4a1a00

Please sign in to comment.