From 2ff36d81a13913c92b2cf52c2df29a35c472330a Mon Sep 17 00:00:00 2001 From: 疯狂的狮子Li <15040126243@163.com> Date: 星期四, 03 三月 2022 22:55:49 +0800 Subject: [PATCH] update 优化 防重 与 限流 功能支持国际化消息返回 --- ruoyi-demo/src/main/java/com/ruoyi/demo/controller/TestBatchController.java | 54 ++++++++++++++++++++++++++++++++---------------------- 1 files changed, 32 insertions(+), 22 deletions(-) diff --git a/ruoyi-demo/src/main/java/com/ruoyi/demo/controller/TestBatchController.java b/ruoyi-demo/src/main/java/com/ruoyi/demo/controller/TestBatchController.java index 54cd448..1bb9d9f 100644 --- a/ruoyi-demo/src/main/java/com/ruoyi/demo/controller/TestBatchController.java +++ b/ruoyi-demo/src/main/java/com/ruoyi/demo/controller/TestBatchController.java @@ -2,13 +2,12 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.ruoyi.common.core.controller.BaseController; -import com.ruoyi.common.core.domain.AjaxResult; +import com.ruoyi.common.core.domain.R; import com.ruoyi.demo.domain.TestDemo; -import com.ruoyi.demo.service.ITestDemoService; +import com.ruoyi.demo.mapper.TestDemoMapper; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.RequiredArgsConstructor; -import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.DeleteMapping; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestMapping; @@ -24,51 +23,62 @@ * @date 2021-05-30 */ @Api(value = "娴嬭瘯鎵归噺鏂规硶", tags = {"娴嬭瘯鎵归噺鏂规硶"}) -@RequiredArgsConstructor(onConstructor_ = @Autowired) +@RequiredArgsConstructor @RestController @RequestMapping("/demo/batch") public class TestBatchController extends BaseController { - private final ITestDemoService iTestDemoService; + /** + * 涓轰簡渚夸簬娴嬭瘯 鐩存帴寮曞叆mapper + */ + private final TestDemoMapper testDemoMapper; /** * 鏂板鎵归噺鏂规硶 鍙畬缇庢浛浠� saveBatch 绉掔骇鎻掑叆涓婁竾鏁版嵁 (瀵筸ysql璐熻嵎杈冨ぇ) - * + * <p> * 3.5.0 鐗堟湰 澧炲姞 rewriteBatchedStatements=true 鎵瑰鐞嗗弬鏁� 浣� MP 鍘熺敓鎵瑰鐞嗗彲浠ヨ揪鍒板悓鏍风殑閫熷害 */ @ApiOperation(value = "鏂板鎵归噺鏂规硶") @PostMapping("/add") -// @DS("slave") - public AjaxResult<Void> add() { +// @DS("slave") + public R<Void> add() { List<TestDemo> list = new ArrayList<>(); for (int i = 0; i < 1000; i++) { - list.add(new TestDemo().setOrderNum(-1L).setTestKey("鎵归噺鏂板").setValue("娴嬭瘯鏂板")); + TestDemo testDemo = new TestDemo(); + testDemo.setOrderNum(-1L); + testDemo.setTestKey("鎵归噺鏂板"); + testDemo.setValue("娴嬭瘯鏂板"); + list.add(testDemo); } - return toAjax(iTestDemoService.saveAll(list) ? 1 : 0); + return toAjax(testDemoMapper.insertBatch(list) ? 1 : 0); } /** * 鏂板鎴栨洿鏂� 鍙畬缇庢浛浠� saveOrUpdateBatch 楂樻�ц兘 - * + * <p> * 3.5.0 鐗堟湰 澧炲姞 rewriteBatchedStatements=true 鎵瑰鐞嗗弬鏁� 浣� MP 鍘熺敓鎵瑰鐞嗗彲浠ヨ揪鍒板悓鏍风殑閫熷害 */ @ApiOperation(value = "鏂板鎴栨洿鏂版壒閲忔柟娉�") @PostMapping("/addOrUpdate") -// @DS("slave") - public AjaxResult<Void> addOrUpdate() { +// @DS("slave") + public R<Void> addOrUpdate() { List<TestDemo> list = new ArrayList<>(); for (int i = 0; i < 1000; i++) { - list.add(new TestDemo().setOrderNum(-1L).setTestKey("鎵归噺鏂板").setValue("娴嬭瘯鏂板")); - } - iTestDemoService.saveAll(list); + TestDemo testDemo = new TestDemo(); + testDemo.setOrderNum(-1L); + testDemo.setTestKey("鎵归噺鏂板"); + testDemo.setValue("娴嬭瘯鏂板"); + list.add(testDemo); } + testDemoMapper.insertBatch(list); for (int i = 0; i < list.size(); i++) { TestDemo testDemo = list.get(i); - testDemo.setTestKey("鎵归噺鏂板鎴栦慨鏀�").setValue("鎵归噺鏂板鎴栦慨鏀�"); + testDemo.setTestKey("鎵归噺鏂板鎴栦慨鏀�"); + testDemo.setValue("鎵归噺鏂板鎴栦慨鏀�"); if (i % 2 == 0) { testDemo.setId(null); } } - return toAjax(iTestDemoService.saveOrUpdateAll(list) ? 1 : 0); + return toAjax(testDemoMapper.insertOrUpdateBatch(list) ? 1 : 0); } /** @@ -76,10 +86,10 @@ */ @ApiOperation(value = "鍒犻櫎鎵归噺鏂规硶") @DeleteMapping() -// @DS("slave") - public AjaxResult<Void> remove() { - return toAjax(iTestDemoService.remove(new LambdaQueryWrapper<TestDemo>() - .eq(TestDemo::getOrderNum, -1L)) ? 1 : 0); +// @DS("slave") + public R<Void> remove() { + return toAjax(testDemoMapper.delete(new LambdaQueryWrapper<TestDemo>() + .eq(TestDemo::getOrderNum, -1L))); } } -- Gitblit v1.9.3