From a743ce4bfbf2eac0523de09769e030a8a6fab3fa Mon Sep 17 00:00:00 2001 From: yawu_bear Date: Fri, 10 Aug 2018 17:15:08 +0800 Subject: [PATCH] =?UTF-8?q?=E6=89=B9=E9=87=8F=E5=88=A0=E9=99=A4=E5=AD=97?= =?UTF-8?q?=E5=85=B8=E7=BC=93=E5=AD=98=E5=88=B7=E6=96=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/ruoyi/common/utils/DictUtils.java | 33 +++++++++++++++++++ .../dict/service/DictDataServiceImpl.java | 24 ++++++-------- src/main/resources/application-druid.yml | 4 +-- 3 files changed, 45 insertions(+), 16 deletions(-) diff --git a/src/main/java/com/ruoyi/common/utils/DictUtils.java b/src/main/java/com/ruoyi/common/utils/DictUtils.java index 5a76d2ac8..bf656203c 100644 --- a/src/main/java/com/ruoyi/common/utils/DictUtils.java +++ b/src/main/java/com/ruoyi/common/utils/DictUtils.java @@ -55,4 +55,37 @@ public class DictUtils { } return dictList; } + + /** + * 增删改字典缓存刷新 + * + * @param dictType + * @param row + */ + public static void flushDictList(String dictType, int row) { + if (row > 0) { + // 增删改成功修改缓存信息 + List dictList = dictDataMapper.selectDictDataByType(dictType); + CacheUtils.remove(DictUtils.DICT_CACHE, DictUtils.DICT_CACHE_TYPE + dictType); + CacheUtils.put(DictUtils.DICT_CACHE, DictUtils.DICT_CACHE_TYPE + dictType, dictList); + } + } + + /** + * 缓存重置 + * + * @param row + */ + public static void restAllDictList(int row) { + if (row > 0) { + // 增删改成功修改缓存信息 + List dictList = dictDataMapper.selectDictDataList(new DictData()); + if (StringUtils.isNotEmpty(dictList)) { + for (DictData dictData : dictList) { + CacheUtils.removeAll(DictUtils.DICT_CACHE); + CacheUtils.put(DictUtils.DICT_CACHE, DictUtils.DICT_CACHE_TYPE + dictData.getDictType(), dictList); + } + } + } + } } diff --git a/src/main/java/com/ruoyi/project/system/dict/service/DictDataServiceImpl.java b/src/main/java/com/ruoyi/project/system/dict/service/DictDataServiceImpl.java index ea4b42e7e..789ef8bf8 100644 --- a/src/main/java/com/ruoyi/project/system/dict/service/DictDataServiceImpl.java +++ b/src/main/java/com/ruoyi/project/system/dict/service/DictDataServiceImpl.java @@ -82,7 +82,11 @@ public class DictDataServiceImpl implements IDictDataService @Override public int deleteDictDataById(Long dictCode) { - return dictDataMapper.deleteDictDataById(dictCode); + DictData dictData = dictDataMapper.selectDictDataById(dictCode); + String dictType = dictData.getDictType(); + int row = dictDataMapper.deleteDictDataById(dictCode); + DictUtils.flushDictList(dictType, row); + return row; } /** @@ -94,7 +98,9 @@ public class DictDataServiceImpl implements IDictDataService @Override public int deleteDictDataByIds(String ids) { - return dictDataMapper.deleteDictDataByIds(Convert.toStrArray(ids)); + int row = dictDataMapper.deleteDictDataByIds(Convert.toStrArray(ids)); + DictUtils.restAllDictList(row); + return row; } /** @@ -109,12 +115,7 @@ public class DictDataServiceImpl implements IDictDataService dictData.setCreateBy(ShiroUtils.getLoginName()); String dictType = dictData.getDictType(); int row = dictDataMapper.insertDictData(dictData); - if(row > 0) { - // 新增成功修改缓存信息 - List dictList = dictDataMapper.selectDictDataByType(dictType); - CacheUtils.remove(DictUtils.DICT_CACHE, DictUtils.DICT_CACHE_TYPE + dictType); - CacheUtils.put(DictUtils.DICT_CACHE, DictUtils.DICT_CACHE_TYPE + dictType, dictList); - } + DictUtils.flushDictList(dictType, row); return row; } @@ -130,12 +131,7 @@ public class DictDataServiceImpl implements IDictDataService dictData.setUpdateBy(ShiroUtils.getLoginName()); String dictType = dictData.getDictType(); int row = dictDataMapper.updateDictData(dictData); - if(row > 0) { - List dictList = dictDataMapper.selectDictDataByType(dictType); - // 修改成功更新缓存信息 - CacheUtils.remove(DictUtils.DICT_CACHE, DictUtils.DICT_CACHE_TYPE + dictType); - CacheUtils.put(DictUtils.DICT_CACHE, DictUtils.DICT_CACHE_TYPE + dictType, dictList); - } + DictUtils.flushDictList(dictType, row); return row; } diff --git a/src/main/resources/application-druid.yml b/src/main/resources/application-druid.yml index f5dda0f4f..871c22a82 100644 --- a/src/main/resources/application-druid.yml +++ b/src/main/resources/application-druid.yml @@ -5,9 +5,9 @@ spring: driverClassName: com.mysql.jdbc.Driver druid: master: #主库 - url: jdbc:mysql://localhost:3306/ry?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true + url: jdbc:mysql://192.168.0.132:3306/rys?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true username: root - password: password + password: 123456 #slave: #从库 # open: true # url: jdbc:mysql://localhost:3306/ry?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true