From 532ad3b0ae5227b621d4f2288d37438488a898a4 Mon Sep 17 00:00:00 2001 From: rice666 <979581558@qq.com> Date: Wed, 28 Jun 2023 11:25:20 +0800 Subject: [PATCH] =?UTF-8?q?=E5=88=86=E5=BA=93=E5=88=86=E8=A1=A8=E5=8A=9F?= =?UTF-8?q?=E8=83=BD=E6=A0=87=E5=87=86=E5=8C=96=E4=BB=A3=E7=A0=81=E5=90=8E?= =?UTF-8?q?=E6=8F=90=E4=BA=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/TestShardingController.java | 51 +++++++++++++++++++ .../{TOrder.java => ShardingOrder.java} | 2 +- ...TOrderItem.java => ShardingOrderItem.java} | 2 +- .../demo/mapper/ShardingOrderItemMapper.java | 14 +++++ .../demo/mapper/ShardingOrderMapper.java | 15 ++++++ .../dromara/demo/mapper/TOrderItemMapper.java | 12 ----- .../org/dromara/demo/mapper/TOrderMapper.java | 12 ----- .../src/main/resources/application.yml | 15 +++--- ...Mapper.xml => ShardingOrderItemMapper.xml} | 2 +- ...ItemMapper.xml => ShardingOrderMapper.xml} | 2 +- .../java/org/dromara/demo/TOrderTest.java | 26 +++------- 11 files changed, 99 insertions(+), 54 deletions(-) create mode 100644 ruoyi-example/ruoyi-demo/src/main/java/org/dromara/demo/controller/TestShardingController.java rename ruoyi-example/ruoyi-demo/src/main/java/org/dromara/demo/domain/{TOrder.java => ShardingOrder.java} (88%) rename ruoyi-example/ruoyi-demo/src/main/java/org/dromara/demo/domain/{TOrderItem.java => ShardingOrderItem.java} (88%) create mode 100644 ruoyi-example/ruoyi-demo/src/main/java/org/dromara/demo/mapper/ShardingOrderItemMapper.java create mode 100644 ruoyi-example/ruoyi-demo/src/main/java/org/dromara/demo/mapper/ShardingOrderMapper.java delete mode 100644 ruoyi-example/ruoyi-demo/src/main/java/org/dromara/demo/mapper/TOrderItemMapper.java delete mode 100644 ruoyi-example/ruoyi-demo/src/main/java/org/dromara/demo/mapper/TOrderMapper.java rename ruoyi-example/ruoyi-demo/src/main/resources/mapper/demo/{TOrderMapper.xml => ShardingOrderItemMapper.xml} (71%) rename ruoyi-example/ruoyi-demo/src/main/resources/mapper/demo/{TOrderItemMapper.xml => ShardingOrderMapper.xml} (72%) diff --git a/ruoyi-example/ruoyi-demo/src/main/java/org/dromara/demo/controller/TestShardingController.java b/ruoyi-example/ruoyi-demo/src/main/java/org/dromara/demo/controller/TestShardingController.java new file mode 100644 index 00000000..5d34545e --- /dev/null +++ b/ruoyi-example/ruoyi-demo/src/main/java/org/dromara/demo/controller/TestShardingController.java @@ -0,0 +1,51 @@ +package org.dromara.demo.controller; + +import com.baomidou.dynamic.datasource.annotation.DS; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import lombok.RequiredArgsConstructor; +import org.dromara.common.core.domain.R; +import org.dromara.demo.domain.ShardingOrder; +import org.dromara.demo.mapper.ShardingOrderMapper; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import java.util.List; + +@RequiredArgsConstructor +@RestController +@RequestMapping("/sharding") +public class TestShardingController { + + private final ShardingOrderMapper torderMapper; + + @GetMapping("/page") + public R> page() { + Page page = new Page<>(); + page.setCurrent(3L); + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.orderByAsc("order_id"); + torderMapper.selectPage(page,queryWrapper); + //List records = page.getRecords(); + //System.out.println(page.getTotal()); +// for(ShardingOrder order : page.getRecords()){ +// System.out.print(order.getTotalMoney()+" "); +// } + return R.ok(page); + } + + @GetMapping("/insert") + public R insert() { + for(Long i = 1L; i <= 100L; i++){ + ShardingOrder torder = new ShardingOrder(); + torder.setUserId(i); + torder.setTotalMoney(100 + Integer.parseInt(i+"")); + torderMapper.insert(torder); + } + + return R.ok("分库分表数据批量插入成功!"); + + } + +} diff --git a/ruoyi-example/ruoyi-demo/src/main/java/org/dromara/demo/domain/TOrder.java b/ruoyi-example/ruoyi-demo/src/main/java/org/dromara/demo/domain/ShardingOrder.java similarity index 88% rename from ruoyi-example/ruoyi-demo/src/main/java/org/dromara/demo/domain/TOrder.java rename to ruoyi-example/ruoyi-demo/src/main/java/org/dromara/demo/domain/ShardingOrder.java index 5137f846..6190e9c1 100644 --- a/ruoyi-example/ruoyi-demo/src/main/java/org/dromara/demo/domain/TOrder.java +++ b/ruoyi-example/ruoyi-demo/src/main/java/org/dromara/demo/domain/ShardingOrder.java @@ -5,7 +5,7 @@ import lombok.Data; @TableName("t_order") @Data -public class TOrder { +public class ShardingOrder { private Long orderId; diff --git a/ruoyi-example/ruoyi-demo/src/main/java/org/dromara/demo/domain/TOrderItem.java b/ruoyi-example/ruoyi-demo/src/main/java/org/dromara/demo/domain/ShardingOrderItem.java similarity index 88% rename from ruoyi-example/ruoyi-demo/src/main/java/org/dromara/demo/domain/TOrderItem.java rename to ruoyi-example/ruoyi-demo/src/main/java/org/dromara/demo/domain/ShardingOrderItem.java index 1b176491..83fde7c6 100644 --- a/ruoyi-example/ruoyi-demo/src/main/java/org/dromara/demo/domain/TOrderItem.java +++ b/ruoyi-example/ruoyi-demo/src/main/java/org/dromara/demo/domain/ShardingOrderItem.java @@ -5,7 +5,7 @@ import lombok.Data; @TableName("t_order_item") @Data -public class TOrderItem { +public class ShardingOrderItem { private Long orderItemId; diff --git a/ruoyi-example/ruoyi-demo/src/main/java/org/dromara/demo/mapper/ShardingOrderItemMapper.java b/ruoyi-example/ruoyi-demo/src/main/java/org/dromara/demo/mapper/ShardingOrderItemMapper.java new file mode 100644 index 00000000..00826772 --- /dev/null +++ b/ruoyi-example/ruoyi-demo/src/main/java/org/dromara/demo/mapper/ShardingOrderItemMapper.java @@ -0,0 +1,14 @@ +package org.dromara.demo.mapper; + +import com.baomidou.dynamic.datasource.annotation.DS; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +import org.apache.ibatis.annotations.Mapper; +import org.dromara.demo.domain.ShardingOrderItem; + +@Mapper +@DS("sharding") +public interface ShardingOrderItemMapper extends BaseMapper { + + +} diff --git a/ruoyi-example/ruoyi-demo/src/main/java/org/dromara/demo/mapper/ShardingOrderMapper.java b/ruoyi-example/ruoyi-demo/src/main/java/org/dromara/demo/mapper/ShardingOrderMapper.java new file mode 100644 index 00000000..58d3525c --- /dev/null +++ b/ruoyi-example/ruoyi-demo/src/main/java/org/dromara/demo/mapper/ShardingOrderMapper.java @@ -0,0 +1,15 @@ +package org.dromara.demo.mapper; + +import com.baomidou.dynamic.datasource.annotation.DS; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +import org.apache.ibatis.annotations.Mapper; +import org.dromara.demo.domain.ShardingOrder; + + +@Mapper +@DS("sharding") +public interface ShardingOrderMapper extends BaseMapper { + + +} diff --git a/ruoyi-example/ruoyi-demo/src/main/java/org/dromara/demo/mapper/TOrderItemMapper.java b/ruoyi-example/ruoyi-demo/src/main/java/org/dromara/demo/mapper/TOrderItemMapper.java deleted file mode 100644 index a158a19a..00000000 --- a/ruoyi-example/ruoyi-demo/src/main/java/org/dromara/demo/mapper/TOrderItemMapper.java +++ /dev/null @@ -1,12 +0,0 @@ -package org.dromara.demo.mapper; - -import com.baomidou.mybatisplus.core.mapper.BaseMapper; - -import org.apache.ibatis.annotations.Mapper; -import org.dromara.demo.domain.TOrderItem; - -@Mapper -public interface TOrderItemMapper extends BaseMapper { - - -} diff --git a/ruoyi-example/ruoyi-demo/src/main/java/org/dromara/demo/mapper/TOrderMapper.java b/ruoyi-example/ruoyi-demo/src/main/java/org/dromara/demo/mapper/TOrderMapper.java deleted file mode 100644 index a65d1fc9..00000000 --- a/ruoyi-example/ruoyi-demo/src/main/java/org/dromara/demo/mapper/TOrderMapper.java +++ /dev/null @@ -1,12 +0,0 @@ -package org.dromara.demo.mapper; - -import com.baomidou.mybatisplus.core.mapper.BaseMapper; - -import org.apache.ibatis.annotations.Mapper; -import org.dromara.demo.domain.TOrder; - -@Mapper -public interface TOrderMapper extends BaseMapper { - - -} diff --git a/ruoyi-example/ruoyi-demo/src/main/resources/application.yml b/ruoyi-example/ruoyi-demo/src/main/resources/application.yml index 2e8e81b4..a4ae5537 100644 --- a/ruoyi-example/ruoyi-demo/src/main/resources/application.yml +++ b/ruoyi-example/ruoyi-demo/src/main/resources/application.yml @@ -39,19 +39,18 @@ spring: # 设置默认的数据源或者数据源组,默认值即为 master primary: master datasource: +# 主库数据源 master: - type: com.zaxxer.hikari.HikariDataSource + type: ${spring.datasource.type} + driver-class-name: com.mysql.cj.jdbc.Driver + url: ${datasource.system-master.url} + username: ${datasource.system-master.username} + password: ${datasource.system-master.password} + sharding: driver-class-name: com.mysql.cj.jdbc.Driver url: jdbc:mysql://192.168.0.60:3307/data-center_db?useSSL=false&useUnicode=true&characterEncoding=utf-8&zeroDateTimeBehavior=convertToNull&transformedBitIsBoolean=true&tinyInt1isBit=false&allowMultiQueries=true&serverTimezone=GMT%2B8&allowPublicKeyRetrieval=true username: root password: root - # 主库数据源 -# master: -# type: ${spring.datasource.type} -# driver-class-name: com.mysql.cj.jdbc.Driver -# url: ${datasource.system-master.url} -# username: ${datasource.system-master.username} -# password: ${datasource.system-master.password} # oracle: # type: ${spring.datasource.type} # driverClassName: oracle.jdbc.OracleDriver diff --git a/ruoyi-example/ruoyi-demo/src/main/resources/mapper/demo/TOrderMapper.xml b/ruoyi-example/ruoyi-demo/src/main/resources/mapper/demo/ShardingOrderItemMapper.xml similarity index 71% rename from ruoyi-example/ruoyi-demo/src/main/resources/mapper/demo/TOrderMapper.xml rename to ruoyi-example/ruoyi-demo/src/main/resources/mapper/demo/ShardingOrderItemMapper.xml index 26dfffff..aeed5027 100644 --- a/ruoyi-example/ruoyi-demo/src/main/resources/mapper/demo/TOrderMapper.xml +++ b/ruoyi-example/ruoyi-demo/src/main/resources/mapper/demo/ShardingOrderItemMapper.xml @@ -2,6 +2,6 @@ - + diff --git a/ruoyi-example/ruoyi-demo/src/main/resources/mapper/demo/TOrderItemMapper.xml b/ruoyi-example/ruoyi-demo/src/main/resources/mapper/demo/ShardingOrderMapper.xml similarity index 72% rename from ruoyi-example/ruoyi-demo/src/main/resources/mapper/demo/TOrderItemMapper.xml rename to ruoyi-example/ruoyi-demo/src/main/resources/mapper/demo/ShardingOrderMapper.xml index cfbef9be..420912ef 100644 --- a/ruoyi-example/ruoyi-demo/src/main/resources/mapper/demo/TOrderItemMapper.xml +++ b/ruoyi-example/ruoyi-demo/src/main/resources/mapper/demo/ShardingOrderMapper.xml @@ -2,6 +2,6 @@ - + diff --git a/ruoyi-example/ruoyi-demo/src/test/java/org/dromara/demo/TOrderTest.java b/ruoyi-example/ruoyi-demo/src/test/java/org/dromara/demo/TOrderTest.java index 19919ce1..300057d5 100644 --- a/ruoyi-example/ruoyi-demo/src/test/java/org/dromara/demo/TOrderTest.java +++ b/ruoyi-example/ruoyi-demo/src/test/java/org/dromara/demo/TOrderTest.java @@ -3,8 +3,8 @@ package org.dromara.demo; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; -import org.dromara.demo.domain.TOrder; -import org.dromara.demo.mapper.TOrderMapper; +import org.dromara.demo.domain.ShardingOrder; +import org.dromara.demo.mapper.ShardingOrderMapper; import org.junit.jupiter.api.Test; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.test.context.SpringBootTest; @@ -13,10 +13,8 @@ import org.springframework.boot.test.context.SpringBootTest; class TOrderTest { @Autowired - TOrderMapper torderMapper; + ShardingOrderMapper torderMapper; - //@Autowired - //TUserMapper userMapper; @Test void find() { @@ -25,13 +23,13 @@ class TOrderTest { @Test void page() { - Page page = new Page<>(); + Page page = new Page<>(); page.setCurrent(3L); - QueryWrapper queryWrapper = new QueryWrapper<>(); + QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.orderByAsc("order_id"); torderMapper.selectPage(page,queryWrapper); System.out.println(page.getTotal()); - for(TOrder order : page.getRecords()){ + for(ShardingOrder order : page.getRecords()){ System.out.print(order.getTotalMoney()+" "); } } @@ -39,21 +37,13 @@ class TOrderTest { @Test void insert() { for(Long i = 1L; i <= 100L; i++){ - TOrder torder = new TOrder(); + ShardingOrder torder = new ShardingOrder(); torder.setUserId(i); torder.setTotalMoney(100 + Integer.parseInt(i+"")); torderMapper.insert(torder); } } - @Test - void insertUser() { - /*User user = new User(); - user.setId(1L); - user.setUserName("abc"); - user.setAge(18); - user.setCreateTime(new Date()); - userMapper.insert(user);*/ - } + }