From d7d0578b00c9ec24893e3a0c8e8ff3301f82bc2a Mon Sep 17 00:00:00 2001 From: zjh <1084500556@qq.com> Date: 星期三, 13 十二月 2023 18:48:37 +0800 Subject: [PATCH] zjh 2023/12/13--1 --- ltkj-admin/src/main/java/com/ltkj/web/controller/sqlserver/TjSqlController.java | 152 ++++++++++++++++++++++++++++---------------------- 1 files changed, 86 insertions(+), 66 deletions(-) diff --git a/ltkj-admin/src/main/java/com/ltkj/web/controller/sqlserver/TjSqlController.java b/ltkj-admin/src/main/java/com/ltkj/web/controller/sqlserver/TjSqlController.java index 3f94e80..cdb13b2 100644 --- a/ltkj-admin/src/main/java/com/ltkj/web/controller/sqlserver/TjSqlController.java +++ b/ltkj-admin/src/main/java/com/ltkj/web/controller/sqlserver/TjSqlController.java @@ -2,6 +2,7 @@ import com.ltkj.common.core.controller.BaseController; import com.ltkj.common.core.domain.AjaxResult; +import com.ltkj.common.core.redis.RedisCache; import com.ltkj.common.enums.DataSourceType; import com.ltkj.framework.datasource.DynamicDataSourceContextHolder; import com.ltkj.hosp.service.*; @@ -10,10 +11,22 @@ import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.checkerframework.checker.units.qual.A; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.data.redis.core.ConvertingCursor; +import org.springframework.data.redis.core.Cursor; +import org.springframework.data.redis.core.RedisTemplate; +import org.springframework.data.redis.core.ScanOptions; +import org.springframework.data.redis.serializer.RedisSerializer; import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; +import java.util.ArrayList; +import java.util.HashMap; import java.util.List; +import java.util.Map; + +import static com.ltkj.framework.datasource.DynamicDataSourceContextHolder.log; +import static org.apache.poi.hemf.record.emfplus.HemfPlusRecordType.save; @RestController @@ -39,6 +52,36 @@ private LtkjHybgdService ltkjHybgdService; @Resource private LtkjHysqdService ltkjHysqdService; + @Autowired + public RedisTemplate<Object,Object> redisTemplate; + @Resource + private RedisCache redisCache; + + @GetMapping("/getRedisValue") + @ApiOperation(value = "娴嬭瘯redis妯$硦鏌ヨ") + public AjaxResult getRedisValue(@RequestParam String aa) { + long start = System.currentTimeMillis(); + //闇�瑕佸尮閰嶇殑key + ScanOptions options = ScanOptions.scanOptions() + //杩欓噷鎸囧畾姣忔鎵弿key鐨勬暟閲�(寰堝鍗氬鐬庤瑕佹寚瀹欼nteger.MAX_VALUE锛岃繖鏍风殑璇濊窡 keys鏈変粈涔堝尯鍒紵) + .count(10000) + .match(aa+"*").build(); + RedisSerializer<String> redisSerializer = (RedisSerializer<String>) redisTemplate.getKeySerializer(); + Cursor cursor = redisTemplate.executeWithStickyConnection(redisConnection -> new ConvertingCursor<>(redisConnection.scan(options), redisSerializer::deserialize)); + List<Object> result = new ArrayList<>(); + while(cursor.hasNext()){ + String s = cursor.next().toString(); + redisCache.deleteObject(s); + } + //鍒囪杩欓噷涓�瀹氳鍏抽棴锛屽惁鍒欎細鑰楀敖杩炴帴鏁般�傛姤Cannot get Jedis connection; nested exception is redis.clients.jedis.exceptions.JedisException: Could not get a + cursor.close(); +// System.out.println(result); + log.info("scan鎵弿鍏辫�楁椂锛歿} ms key鏁伴噺锛歿}",System.currentTimeMillis()-start,result.size()); + Map<String,Object>map=new HashMap<>(); + map.put("result",result); + map.put("scan鎵弿鍏辫�楁椂锛歿} ms key鏁伴噺锛歿}",System.currentTimeMillis()-start+result.size()); + return AjaxResult.success(map); + } @GetMapping("/getMiddleDetail") @@ -128,76 +171,53 @@ } - @GetMapping("/getLtkjTjPatById") - public AjaxResult getLtkjTjPatById(String id) { - LtkjTjPat one = testMapper.getTjPatById(id); - DynamicDataSourceContextHolder.setDataSourceType(DataSourceType.MASTER.name()); - final boolean save = tjvLtkjvtjpatService.save(one); - DynamicDataSourceContextHolder.clearDataSourceType(); - return AjaxResult.success(save); - } - - - @GetMapping("/getMiddleDetailById") - public AjaxResult getMiddleDetailById(String id) { - LtkjMiddleDetail one = testMapper.getMiddleDetailById(id); - DynamicDataSourceContextHolder.setDataSourceType(DataSourceType.MASTER.name()); - final boolean save = middleDetailService.save(one); - DynamicDataSourceContextHolder.clearDataSourceType(); - return AjaxResult.success(save); - } - - - @GetMapping("/getMiddleHeadById") - public AjaxResult getMiddleHeadById(String id) { - LtkjMiddleHead one = testMapper.getMiddleHeadById(id); - DynamicDataSourceContextHolder.setDataSourceType(DataSourceType.MASTER.name()); - final boolean save = headService.save(one); - DynamicDataSourceContextHolder.clearDataSourceType(); - return AjaxResult.success(save); - } - - - @GetMapping("/getExamJcbgdById") - public AjaxResult getExamJcbgdById(String id) { - LtkjExamJcbgd one = testMapper.getExamJcbgdById(id); - DynamicDataSourceContextHolder.setDataSourceType(DataSourceType.MASTER.name()); - final boolean save = ltkjExamJcbgdService.save(one); - DynamicDataSourceContextHolder.clearDataSourceType(); - return AjaxResult.success(save); - } - - @GetMapping("/getExamJcsqdById") - public AjaxResult getExamJcsqdById(String id) { - LtkjExamJcsqd one = testMapper.getExamJcsqdById(id); - DynamicDataSourceContextHolder.setDataSourceType(DataSourceType.MASTER.name()); - final boolean save = ltkjExamJcsqdService.save(one); - DynamicDataSourceContextHolder.clearDataSourceType(); - return AjaxResult.success(save); - } - - @GetMapping("/getHybgdById") - public AjaxResult getHybgdById(String id) { - LtkjHybgd one = testMapper.getHybgdById(id); - DynamicDataSourceContextHolder.setDataSourceType(DataSourceType.MASTER.name()); - final boolean save = ltkjHybgdService.save(one); - DynamicDataSourceContextHolder.clearDataSourceType(); - return AjaxResult.success(save); - } - - @GetMapping("/getHysqdById") - public AjaxResult getHysqdById(String id) { - LtkjHysqd one = testMapper.getHysqdById(id); - DynamicDataSourceContextHolder.setDataSourceType(DataSourceType.MASTER.name()); - final boolean save = ltkjHysqdService.save(one); - DynamicDataSourceContextHolder.clearDataSourceType(); - return AjaxResult.success(save); - } - @GetMapping("/getTjPatByCusId") public AjaxResult getTjPatByCusId(String cusId) { testMapper.getTjPatByCusId(cusId); return AjaxResult.success(); } + + + @GetMapping("/saveMiddleHeadByPatId") + public AjaxResult saveMiddleHeadByPatId(String id) { + List<LtkjMiddleHead> one = testMapper.saveMiddleHeadByPatId(id); + DynamicDataSourceContextHolder.setDataSourceType(DataSourceType.MASTER.name()); + for (LtkjMiddleHead ltkjMiddleHead : one) { + final boolean save = headService.save(ltkjMiddleHead); + } + DynamicDataSourceContextHolder.clearDataSourceType(); + return AjaxResult.success(save); + } + + + @GetMapping("/getMiddleDetailByHeadId") + public AjaxResult getMiddleDetailByHeadId(String id) { + List<LtkjMiddleDetail> one = testMapper.getMiddleDetailByHeadId(id); + for (LtkjMiddleDetail ltkjMiddleDetail : one) { + DynamicDataSourceContextHolder.setDataSourceType(DataSourceType.MASTER.name()); + final boolean save = middleDetailService.save(ltkjMiddleDetail); + DynamicDataSourceContextHolder.clearDataSourceType(); + } + return AjaxResult.success(one); + } + + @GetMapping("/test") + public AjaxResult getHysqdByTmh(String id) { + List<LtkjHysqd> one = testMapper.getHysqdByTmh(id); + DynamicDataSourceContextHolder.setDataSourceType(DataSourceType.MASTER.name()); + ltkjHysqdService.saveBatch(one); + DynamicDataSourceContextHolder.clearDataSourceType(); + for (LtkjHysqd ltkjHysqd : one) { + List<LtkjHybgd> one1 = testMapper.getHybgdByTmh(ltkjHysqd.getTmh()); + DynamicDataSourceContextHolder.setDataSourceType(DataSourceType.MASTER.name()); + ltkjHybgdService.saveBatch(one1); + DynamicDataSourceContextHolder.clearDataSourceType(); + } + + return AjaxResult.success(); + } + + + } -- Gitblit v1.8.0