Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
后端镜像
java镜像
Spring Boot Sharding Sphere
提交
4a306535
S
Spring Boot Sharding Sphere
项目概览
后端镜像
/
java镜像
/
Spring Boot Sharding Sphere
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
S
Spring Boot Sharding Sphere
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
提交
4a306535
编写于
10月 12, 2019
作者:
X
xubo
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
分库分表
上级
f45952af
变更
10
隐藏空白更改
内联
并排
Showing
10 changed file
with
94 addition
and
34 deletion
+94
-34
sub-db-table/src/main/java/com/oujiong/config/DalModule.java
sub-db-table/src/main/java/com/oujiong/config/DalModule.java
+3
-11
sub-db-table/src/main/java/com/oujiong/config/DataSourceUtil.java
...able/src/main/java/com/oujiong/config/DataSourceUtil.java
+1
-1
sub-db-table/src/main/java/com/oujiong/controller/UserController.java
.../src/main/java/com/oujiong/controller/UserController.java
+22
-3
sub-db-table/src/main/java/com/oujiong/entity/User.java
sub-db-table/src/main/java/com/oujiong/entity/User.java
+2
-1
sub-db-table/src/main/java/com/oujiong/mapper/UserMapper.java
...db-table/src/main/java/com/oujiong/mapper/UserMapper.java
+4
-4
sub-db-table/src/main/java/com/oujiong/service/UserService.java
...-table/src/main/java/com/oujiong/service/UserService.java
+3
-3
sub-db-table/src/main/java/com/oujiong/service/impl/UserServiceImpl.java
...c/main/java/com/oujiong/service/impl/UserServiceImpl.java
+8
-5
sub-db-table/src/main/resources/application.properties
sub-db-table/src/main/resources/application.properties
+29
-0
sub-db-table/src/main/resources/mapper/UserMapper.xml
sub-db-table/src/main/resources/mapper/UserMapper.xml
+9
-6
sub-db-table/src/main/resources/mybatis-config.xml
sub-db-table/src/main/resources/mybatis-config.xml
+13
-0
未找到文件。
sub-db-table/src/main/java/com/oujiong/config/DalModule.java
浏览文件 @
4a306535
...
...
@@ -4,7 +4,6 @@
package
com.oujiong.config
;
import
com.alibaba.druid.pool.DruidDataSource
;
import
org.apache.ibatis.session.SqlSessionFactory
;
import
org.apache.shardingsphere.api.config.sharding.KeyGeneratorConfiguration
;
import
org.apache.shardingsphere.api.config.sharding.ShardingRuleConfiguration
;
...
...
@@ -13,16 +12,9 @@ import org.apache.shardingsphere.api.config.sharding.strategy.InlineShardingStra
import
org.apache.shardingsphere.api.config.sharding.strategy.StandardShardingStrategyConfiguration
;
import
org.apache.shardingsphere.shardingjdbc.api.ShardingDataSourceFactory
;
import
org.mybatis.spring.SqlSessionFactoryBean
;
import
org.mybatis.spring.annotation.MapperScan
;
import
org.springframework.context.annotation.Bean
;
import
org.springframework.context.annotation.ComponentScan
;
import
org.springframework.context.annotation.Configuration
;
import
org.springframework.core.annotation.Order
;
import
org.springframework.core.io.support.PathMatchingResourcePatternResolver
;
import
org.springframework.jdbc.datasource.DataSourceTransactionManager
;
import
org.springframework.transaction.PlatformTransactionManager
;
import
javax.annotation.Resource
;
import
javax.sql.DataSource
;
import
java.sql.SQLException
;
import
java.util.HashMap
;
...
...
@@ -34,9 +26,9 @@ import java.util.Properties;
* @Description: 连接数据库信息 包括添加插件信息
* @date 2019/8/19 下午12:31
*/
@Configuration
@ComponentScan
(
basePackageClasses
=
DalModule
.
class
)
@MapperScan
(
basePackages
=
"com.oujiong.mapper"
)
//
@Configuration
//
@ComponentScan(basePackageClasses = DalModule.class)
//
@MapperScan(basePackages = "com.oujiong.mapper")
public
class
DalModule
{
// @Bean
...
...
sub-db-table/src/main/java/com/oujiong/config/DataSourceUtil.java
浏览文件 @
4a306535
...
...
@@ -6,7 +6,7 @@ import javax.sql.DataSource;
public
final
class
DataSourceUtil
{
private
static
final
String
HOST
=
"
localhost
"
;
private
static
final
String
HOST
=
"
47.99.203.55
"
;
private
static
final
int
PORT
=
3306
;
...
...
sub-db-table/src/main/java/com/oujiong/controller/UserController.java
浏览文件 @
4a306535
package
com.oujiong.controller
;
import
com.google.common.collect.Lists
;
import
com.oujiong.entity.User
;
import
com.oujiong.service.UserService
;
import
org.springframework.beans.factory.annotation.Autowired
;
...
...
@@ -8,6 +9,9 @@ import org.springframework.web.bind.annotation.GetMapping;
import
org.springframework.web.bind.annotation.PostMapping
;
import
org.springframework.web.bind.annotation.RestController
;
import
javax.annotation.PostConstruct
;
import
java.util.List
;
/**
* @Description: 接口测试
...
...
@@ -22,13 +26,27 @@ public class UserController {
private
UserService
userService
;
/**
* @Description: 保存用户
* 模拟插入数据
*/
List
<
User
>
userList
=
Lists
.
newArrayList
();
/**
* 初始化插入数据
*/
@PostConstruct
private
void
getData
()
{
userList
.
add
(
new
User
(
1L
,
"小小"
,
"女"
,
3
));
userList
.
add
(
new
User
(
2L
,
"爸爸"
,
"男"
,
30
));
userList
.
add
(
new
User
(
3L
,
"妈妈"
,
"女"
,
28
));
userList
.
add
(
new
User
(
4L
,
"爷爷"
,
"男"
,
64
));
userList
.
add
(
new
User
(
5L
,
"奶奶"
,
"女"
,
62
));
}
/**
* @Description: 批量保存用户
*/
@PostMapping
(
"save-user"
)
public
Object
saveUser
()
{
return
userService
.
saveOne
(
new
User
(
"小小"
,
"女"
,
3
)
);
return
userService
.
insertForeach
(
userList
);
}
/**
* @Description: 获取用户列表
*/
...
...
@@ -37,4 +55,5 @@ public class UserController {
return
userService
.
list
();
}
}
sub-db-table/src/main/java/com/oujiong/entity/User.java
浏览文件 @
4a306535
...
...
@@ -44,7 +44,8 @@ public class User {
*/
private
Integer
status
;
public
User
(
String
name
,
String
sex
,
Integer
age
)
{
public
User
(
Long
id
,
String
name
,
String
sex
,
Integer
age
)
{
this
.
id
=
id
;
this
.
name
=
name
;
this
.
sex
=
sex
;
this
.
age
=
age
;
...
...
sub-db-table/src/main/java/com/oujiong/mapper/UserMapper.java
浏览文件 @
4a306535
...
...
@@ -16,12 +16,12 @@ import java.util.List;
public
interface
UserMapper
{
/**
*
插入一条记录
*
批量插入
*
* @param
record 实体对象
* @return
更新条目数
* @param
list 插入集合
* @return
插入数量
*/
int
insert
(
User
record
);
int
insert
Foreach
(
List
<
User
>
list
);
/**
* 获取所有用户
...
...
sub-db-table/src/main/java/com/oujiong/service/UserService.java
浏览文件 @
4a306535
...
...
@@ -18,9 +18,9 @@ public interface UserService {
List
<
User
>
list
();
/**
*
单个
保存用户信息
* @param user
*
批量
保存用户信息
* @param user
VOList
*/
String
saveOne
(
User
user
);
String
insertForeach
(
List
<
User
>
userVOList
);
}
\ No newline at end of file
sub-db-table/src/main/java/com/oujiong/service/impl/UserServiceImpl.java
浏览文件 @
4a306535
...
...
@@ -28,11 +28,14 @@ public class UserServiceImpl implements UserService {
}
@Override
public
String
saveOne
(
User
user
)
{
user
.
setCreateTime
(
new
Date
());
user
.
setUpdateTime
(
new
Date
());
user
.
setStatus
(
1
);
userMapper
.
insert
(
user
);
public
String
insertForeach
(
List
<
User
>
userList
)
{
for
(
User
user
:
userList
)
{
user
.
setCreateTime
(
new
Date
());
user
.
setUpdateTime
(
new
Date
());
user
.
setStatus
(
0
);
}
//批量插入数据
userMapper
.
insertForeach
(
userList
);
return
"保存成功"
;
}
}
sub-db-table/src/main/resources/application.properties
0 → 100644
浏览文件 @
4a306535
server.port
=
8084
#指定mybatis信息
mybatis.config-location
=
classpath:mybatis-config.xml
#打印sql
spring.shardingsphere.props.sql.show
=
true
spring.shardingsphere.datasource.names
=
ds0,ds1
spring.shardingsphere.datasource.ds0.type
=
com.alibaba.druid.pool.DruidDataSource
spring.shardingsphere.datasource.ds0.driver-class-name
=
com.mysql.jdbc.Driver
spring.shardingsphere.datasource.ds0.url
=
jdbc:mysql://47.99.203.55:3306/ds0?characterEncoding=utf-8
spring.shardingsphere.datasource.ds0.username
=
root
spring.shardingsphere.datasource.ds0.password
=
123456
spring.shardingsphere.datasource.ds1.type
=
com.alibaba.druid.pool.DruidDataSource
spring.shardingsphere.datasource.ds1.driver-class-name
=
com.mysql.jdbc.Driver
spring.shardingsphere.datasource.ds1.url
=
jdbc:mysql://47.99.203.55:3306/ds1?characterEncoding=utf-8
spring.shardingsphere.datasource.ds1.username
=
root
spring.shardingsphere.datasource.ds1.password
=
123456
spring.shardingsphere.sharding.default-database-strategy.inline.sharding-column
=
age
spring.shardingsphere.sharding.default-database-strategy.inline.algorithm-expression
=
ds$->{age % 2}
spring.shardingsphere.sharding.tables.tab_user.actual-data-nodes
=
ds$->{0..1}.tab_user$->{0..1}
spring.shardingsphere.sharding.tables.tab_user.table-strategy.inline.sharding-column
=
id
spring.shardingsphere.sharding.tables.tab_user.table-strategy.inline.algorithm-expression
=
tab_user$->{id % 2}
sub-db-table/src/main/resources/mapper/UserMapper.xml
浏览文件 @
4a306535
...
...
@@ -19,12 +19,15 @@
from tab_user
</select>
<insert
id=
"insert
"
parameterType=
"com.oujiong.entity.User
"
>
<insert
id=
"insert
Foreach"
parameterType=
"java.util.List"
useGeneratedKeys=
"false
"
>
insert into tab_user (id, name, sex,
age, create_time, update_time,
status)
values (#{id,jdbcType=BIGINT}, #{name,jdbcType=VARCHAR}, #{sex,jdbcType=VARCHAR},
#{age,jdbcType=INTEGER}, #{createTime,jdbcType=TIMESTAMP}, #{updateTime,jdbcType=TIMESTAMP},
#{status,jdbcType=INTEGER})
age, create_time, update_time,
status)
values
<foreach
collection=
"list"
item=
"item"
index=
"index"
separator=
","
>
(#{item.id,jdbcType=BIGINT}, #{item.name,jdbcType=VARCHAR}, #{item.sex,jdbcType=VARCHAR},
#{item.age,jdbcType=INTEGER}, #{item.createTime,jdbcType=TIMESTAMP}, #{item.updateTime,jdbcType=TIMESTAMP},
#{item.status,jdbcType=INTEGER})
</foreach>
</insert>
</mapper>
\ No newline at end of file
sub-db-table/src/main/resources/mybatis-config.xml
0 → 100644
浏览文件 @
4a306535
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration
PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
<typeAliases>
<package
name=
"com.oujiong.entity"
/>
</typeAliases>
<mappers>
<mapper
resource=
"mapper/UserMapper.xml"
/>
</mappers>
</configuration>
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录