大型运输行业实战_day07_2_数据字典实现
1.数据字典表
1 CREATE TABLE `dic` ( 2 `id` int(32) NOT NULL AUTO_INCREMENT, 3 `table_name` varchar(225) DEFAULT NULL, 4 `field_name` varchar(225) DEFAULT NULL, 5 `field_value` varchar(225) DEFAULT NULL, 6 `field_describe` varchar(225) DEFAULT NULL, 7 `describe` varchar(225) DEFAULT NULL, 8 PRIMARY KEY (`id`) 9 ) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8;
2. DicMap.java类
1 package com.day02.sation.map; 2 3 import com.day02.sation.dao.IDicDao; 4 import com.day02.sation.model.Dic; 5 import org.springframework.context.ApplicationContext; 6 import org.springframework.context.support.ClassPathXmlApplicationContext; 7 8 import java.util.HashMap; 9 import java.util.List; 10 import java.util.Map; 11 12 /** 13 * Created by Administrator on 1/3. 14 */ 15 16 public class DicMap { 17 18 private static IDicDao dicDao; 19 20 private static Map<String, String> map = new HashMap(); 21 22 static { 23 //获取应用上下文对象 24 ApplicationContext ctx = new ClassPathXmlApplicationContext("spring-config.xml"); 25 //获取dicDao实例 26 dicDao = ctx.getBean(IDicDao.class); 27 //调用方法初始化字典 28 addMapValue(); 29 } 30 31 public static String getFieldDetail(String tableName, String fieldName, String filedValue) { 32 String key = tableName + "_" + fieldName + "_" + filedValue; 33 String value = map.get(key); 34 if (value == null) { //如果 value 为空 重新查询数据库 35 Dic dicQuery = new Dic(); 36 Dic dic = dicDao.getDic(dicQuery); 37 if (dic != null) {//数据有该值 38 String fieldDescribe = dic.getFieldDescribe(); 39 map.put(key, fieldDescribe); 40 return fieldDescribe; 41 } 42 value = "暂无"; 43 } 44 return value; 45 } 46 47 /** 48 * 初始化字典数据 49 */ 50 private static void addMapValue() { 51 List<Dic> list = dicDao.getList(); 52 for (int i = 0; i < list.size(); i++) { 53 Dic dic = list.get(i); 54 String tableName = dic.getTableName(); 55 String fieldName = dic.getFieldName(); 56 String fieldValue = dic.getFieldValue(); 57 String key = tableName + "_" + fieldName + "_" + fieldValue; 58 String fieldDescribe = dic.getFieldDescribe(); 59 map.put(key, fieldDescribe); 60 } 61 62 } 63 }
3.dao接口
1 /** 2 * 获取字典列表 3 * @return 4 */ 5 List<Dic> getList(); 6 7 /** 8 * 根据 key 获取字典值 9 * @param dic 10 * @return 11 */ 12 Dic getDic(Dic dic);
4.mapper映射文件
1 <!--查询字典列表--> 2 <select id="getList" resultType="com.day02.sation.model.Dic"> 3 SELECT d.id, d.table_name tableName, d.field_name fieldName, d.field_value fieldValue, 4 d.field_describe fieldDescribe, d.`describe` FROM dic AS d 5 </select> 6 <!--根据key获取字典值--> 7 <select id="getDic" parameterType="com.day02.sation.model.Dic" resultType="com.day02.sation.model.Dic"> 8 SELECT d.id, d.table_name tableName, d.field_name fieldName, d.field_value fieldValue, 9 d.field_describe fieldDescribe, d.`describe` FROM dic AS d 10 WHERE d.table_name=#{tableName} AND d.field_name=#{fieldName} AND d.field_value=#{fieldValue} 11 </select>
5.在模型中使用
6.页面显示
7.浏览器中使用firbug查看返回数据
8.页面显示效果
到此字典使用完毕!
转载于:https://www.cnblogs.com/newAndHui/p/8184788.html
大型运输行业实战_day07_2_数据字典实现相关推荐
- 大型运输行业实战_day14_1_webserivce简单入门
1.简单使用 1.1.服务端 1.编写接口 1 package com.day02.sation.ws; 2 3 /** 4 * Created by Administrator on 1/12. 5 ...
- 大型运输行业实战_day12_1_权限管理实现
1.业务分析 权限说的是不同的用户对同一个系统有不同访问权限,其设计的本质是:给先给用户分配好URL,然后在访问的时候判断该用户是否有当前访问的URL. 2.实现 2.1数据库设计标准5表权限结构 2 ...
- 4大行业实战案例,深度解析数字化转型升级路径
本篇文章为亿信华辰<4大行业实战案例,深度解析数字化转型升级路径>视频直播稿件. 大家晚上好,欢迎来到小亿直播间!今天主讲的内容是以4个行业的典型应用为背景,给大家讲讲数字化转型的项目是 ...
- 2022-2027年中国国际货物运输行业市场深度分析及投资战略规划报告
[报告格式]电子版.纸介版 [出品单位]华经产业研究院 本报告由华经产业研究院出品,对中国国际货物运输行业的发展现状.竞争格局及市场供需形势进行了具体分析,并从行业的政策环境.经济环境.社会环境及技术 ...
- 2022-2027年中国大件运输行业发展前景及投资战略咨询报告
[报告类型]产业研究 [报告格式]电子+纸介版 [出品单位]华经产业研究院 本报告由华经产业研究院重磅推出,对中国大件运输行业的发展现状.竞争格局及市场供需形势进行了具体分析,并从行业的政策环境.经济 ...
- 2022年度交通运输行业重点科技项目申报开始,重点关注这几个方向
近日,交通运输部发布关于<组织开展2022年度交通运输行业重点科技项目清单申报工作>的通知,开展2022年行业重点项目申报工作.截止日期为2022年9月20日.接下来就带大家了解一下本次申 ...
- 视频教程-Java大型企业级项目实战:VOD展示系统-Java
Java大型企业级项目实战:VOD展示系统 系统分析师,项目经理,特级讲师:11年项目经验,8年教学经验:在多个大型企业级项目中担任过重要角色. 肖海鹏 ¥479.00 立即订阅 扫码下载「CSDN程 ...
- 2020年中国沿海散装液体化学品运输行业市场现状分析,行业集中度逐步提升「图」
一.货物水上运输分类 按照运输货物的性质不同,货物水上运输分为普通货物运输和危险货物运输.危险货物运输涵盖散装液体.散装固体和包装危险货物运输,其中,散装液体危险货物运输包括原油船运输.成品油船运输. ...
- 全球及中国管道运输行业建设发展与投资战略规划报告2022版
全球及中国管道运输行业建设发展与投资战略规划报告2022版 HS--HS--HS--HS--HS--HS--HS--HS--HS--HS--HS--HS-- [修订日期]:2021年11月 [搜索鸿晟 ...
- NVIDIA向交通运输行业开源其自动驾驶汽车深度神经网络
NVIDIA今日宣布,在NVIDIA GPU Cloud (NGC)容器注册上,向交通运输行业开源NVIDIA DRIVE™自动驾驶汽车开发深度神经网络. NVIDIA DRIVE已成为自动驾驶汽车开 ...
最新文章
- 程序员的浪漫,你值得拥有!
- ubuntu21.04截图快捷键
- 通过Java代码装配bean
- 3520a mmz错误解决方法
- 使用hiredis实现redis分布式锁
- PostgreSQL版本通过pg_upgrade升级(9.6.21升级到13.2)
- 用python将word文档导入数据库_python读取word文档,插入mysql数据库实例
- 20190820 On Java8 第十章 接口
- web集群之haproxy相关配置
- C#应用中的LINQ 查询语言
- html5 canvas+js贪吃蛇网页小游戏代码
- android 使用ffmpeg 调用命令实现视频转gif(ffmpeg 学习三)
- windows7 android 驱动,Windows7安卓刷机驱动安装教程图文详解
- 非负矩阵分解 java_matlab练习程序(非负矩阵分解)
- 第九部分 项目沟通管理
- 【前端学习项目】web前端#001网页点名器(html+css+js实现用户交互)
- 树莓派 USB麦克风 录音
- 医美企业如何玩转私域流量?
- JavaScript从初级往高级走系列————prototype
- 软件测试工程师基础类面试题及参考答案