From 7986daec9cd5fa54d4db3e465254002bbee760b8 Mon Sep 17 00:00:00 2001 From: bunny <1319900154@qq.com> Date: Mon, 29 Jul 2024 14:00:26 +0800 Subject: [PATCH] =?UTF-8?q?:rocket:=20feat(=E6=96=B0=E5=A2=9E):=20?= =?UTF-8?q?=E6=95=B0=E6=8D=AE=E5=88=86=E7=89=87=E5=88=9D=E5=A7=8B=E5=8C=96?= =?UTF-8?q?=E9=85=8D=E7=BD=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/controller/OrderController.java | 15 +++++-- .../resources/sharding/sharding-sharding.yaml | 14 +++---- .../service/impl/OrderServiceTest.java | 39 +++++++++++++++++++ 3 files changed, 55 insertions(+), 13 deletions(-) create mode 100644 service/src/test/java/cn/bunny/service/service/impl/OrderServiceTest.java diff --git a/service/src/main/java/cn/bunny/service/controller/OrderController.java b/service/src/main/java/cn/bunny/service/controller/OrderController.java index 910b923..c76940b 100644 --- a/service/src/main/java/cn/bunny/service/controller/OrderController.java +++ b/service/src/main/java/cn/bunny/service/controller/OrderController.java @@ -3,15 +3,13 @@ package cn.bunny.service.controller; import cn.bunny.entity.order.Order; import cn.bunny.pojo.result.Result; import cn.bunny.service.service.OrderService; +import cn.bunny.service.service.UserService; import cn.bunny.vo.page.PageResult; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.tags.Tag; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.PathVariable; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; +import org.springframework.web.bind.annotation.*; /** *

@@ -27,6 +25,8 @@ import org.springframework.web.bind.annotation.RestController; public class OrderController { @Autowired private OrderService orderService; + @Autowired + private UserService userService; @Operation(summary = "分页查询订单", description = "分页查询订单") @GetMapping("queryPage/{page}/{limit}") @@ -35,4 +35,11 @@ public class OrderController { PageResult vo = orderService.queryPage(pageParams); return Result.success(vo); } + + @Operation(summary = "插入数据", description = "插入数据") + @PostMapping("addOrder") + public Result addOrder(@RequestBody Order order) { + orderService.save(order); + return Result.success(); + } } diff --git a/service/src/main/resources/sharding/sharding-sharding.yaml b/service/src/main/resources/sharding/sharding-sharding.yaml index 92b95cb..d757725 100644 --- a/service/src/main/resources/sharding/sharding-sharding.yaml +++ b/service/src/main/resources/sharding/sharding-sharding.yaml @@ -15,21 +15,17 @@ dataSources: jdbcUrl: jdbc:mysql://192.168.3.21:3305/db_order?serverTimezone=GMT%2B8&useSSL=false&characterEncoding=utf-8&allowPublicKeyRetrieval=true username: root password: "02120212" -rules: - # - !SINGLE - # # 匹配所有表 - # tables: - # - "*.*" - # # 默认数据库 - # defaultDataSource: server_user +rules: # 数据分片配置 - !SHARDING tables: - server_user: + t_user: actualDataNodes: server_user.t_user - server_order: + t_order: actualDataNodes: server_order.t_order + # 可以配置多个 + # actualDataNodes: server_order.t_order, server_order.t_order1, server_order.t_order2 # 打印SQL props: diff --git a/service/src/test/java/cn/bunny/service/service/impl/OrderServiceTest.java b/service/src/test/java/cn/bunny/service/service/impl/OrderServiceTest.java new file mode 100644 index 0000000..e339fca --- /dev/null +++ b/service/src/test/java/cn/bunny/service/service/impl/OrderServiceTest.java @@ -0,0 +1,39 @@ +package cn.bunny.service.service.impl; + +import cn.bunny.entity.order.Order; +import cn.bunny.entity.user.User; +import cn.bunny.service.mapper.OrderMapper; +import cn.bunny.service.mapper.UserMapper; +import org.junit.jupiter.api.Test; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.boot.test.context.SpringBootTest; +import org.springframework.util.DigestUtils; + +import java.math.BigDecimal; +import java.security.NoSuchAlgorithmException; + +@SpringBootTest +public class OrderServiceTest { + @Autowired + private UserMapper userMapper; + @Autowired + private OrderMapper orderMapper; + + @Test + void insertOrder() throws NoSuchAlgorithmException { + double num = Math.random(); + String md5Hex = DigestUtils.md5DigestAsHex(String.valueOf(num).getBytes()); + + // 插入USER数据 + User user = new User(); + user.setUname("呵呵呵"); + userMapper.insert(user); + + // 插入ORDER数据 + Order order = new Order(); + order.setOrderNo(md5Hex); + order.setUserId(user.getId()); + order.setAmount(new BigDecimal(100)); + orderMapper.insert(order); + } +}