java数据字典缓存_项目开发中数据字典设计实现缓存

本文介绍了一个Java项目中数据字典的设计和缓存实现,通过缓存减少IO操作并提高效率。首先讨论了数据字典的优点,然后详细讲解了数据字典缓存的配置,包括缓存监听器、数据字典缓存类、缓存注入方法以及自定义标签的生成。此外,还展示了如何在更新或添加数据字典时更新缓存。最后,提供了生成select标签的自定义标签和转换key到value的标签配置。
摘要由CSDN通过智能技术生成

数据字典的好处很多比如:

1、可以减少使用表,来专门记录类型。

2、类型使用key检索,或者报表统计分析,在一定程度上相比汉字来讲,效率好得多。

3、使用缓存的数据字典、也可以减少不少的io操作。

等等、、、、

首先,库表设计就智者见智了、不多说、爱怎么设计就怎么设计。

完整的数据字典设计 ,需要

1、生成select 自定义标签。

2、list页面,或者get页面, 一个key转 value的标签

使用自定义标签,搭配上缓存的数据字典是最方便、最完美的解决办法,

接下来,就直接贴代码了。

一、数据字典缓存配置:

1、数据字典缓存监听器(在web容器启动成功的时候、进行缓存)

web.xml

1

2 初始化数据字典

3 com.hotent.core.web.listener.DictionaryCacheListener

4

2、DictionaryCacheListener

1 packagecom.*****.core.web.listener;2 importjavax.servlet.ServletContextEvent;

4 importorg.springframework.web.context.WebApplicationContext;5 importorg.springframework.web.context.support.WebApplicationContextUtils;

7 importcom.*****.platform.service.system.DictionaryService;8

9 public class DictionaryCacheListener implementsjavax.servlet.ServletContextListener {10

11 @Override12 public voidcontextDestroyed(ServletContextEvent arg0) {

14 }

16 @Override17 public voidcontextInitialized(ServletContextEvent arg0) {18

19 System.out.println("++++++++++++++++++  数据字典已缓存  +++++++++++++++++++++");20 WebApplicationContext webApplicationContext =WebApplicationContextUtils.getWebApplicationContext(arg0.getServletContext());21 DictionaryService dc = (DictionaryService) webApplicationContext.getBean("dictionaryService");22 dc.getCacheDic(); // 调用数据字典Manager的一个方法来缓存

24 }25

26 }

3、保存缓存数据字典的BO  //(也可以放在平台缓存的BO里面,那共用的缓存设计要考虑线程安全了,简单起见这么搞。)

8f900a89c6347c561fdf2122f13be562.png

961ddebeb323a10fe0623af514929fc1.png

importjava.util.HashMap;importjava.util.List;importjava.util.Map;importcom.hotent.platform.model.system.Dictionary;importcom.hotent.platform.model.system.GlobalType;/*** 缓存数据字典

*@authormiao

**/

public classCacheDict {/*** 所有的数据字典类型*/

public static Map allTypes = new HashMap();/*** 所有类型,

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值