数据字典的设计--1.首页功能实现
在项目开发中常常会看见一些下拉框选项,比如性别、人员学历等等。这些都是通过数据字典表来维护的,即在数据库创建一个数据字典表,将数据分类和详细信息保存在一张表中,实现无限极树形节点,实现基于global的查询。
数据字典的作用:
- 贯穿系统的所有数据项,开发过程中,动态的维护系统数据项。如下图,左侧数据字典编辑页面维动态维护右侧各下拉框选项:
- 保证数据的录入安全,业务表使用数据字典的时候,存放的是数据项的编号,而不是数据项的值:
- 方便系统的统计
数据库的设计:
#数据字典
CREATE TABLE Elec_SystemDDL(SeqID INT NOT NULL, #主键ID(自增长)Keyword VARCHAR(20) NULL, #数据类型DdlCode INT NULL, #数据项的codeDdlName VARCHAR(50) NULL #数据项的value
)
创建相应JavaBean和xml映射文件:
1.创建Elec_SystemDDL.java文件
@SuppressWarnings("serial")
public class ElecSytemDDL implements Serializable{private Integer seqID;private String keyword;private Integer ddlCode;private String ddlName;public Integer getSeqID() {return seqID;}public void setSeqID(Integer seqID) {this.seqID = seqID;}public String getKeyword() {return keyword;}public void setKeyword(String keyword) {this.keyword = keyword;}public Integer getDdlCode() {return ddlCode;}public void setDdlCode(Integer ddlCode) {this.ddlCode = ddlCode;}public String getDdlName() {return ddlName;}public void setDdlName(String ddlName) {this.ddlName = ddlName;}}
2.创建对应的hbm.xml文件 ElecSystemDDL.hbm.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN""http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<hibernate-mapping package="cn.elec.domain"><class name="ElecSystemDDL" table="Elec_SystemDDL"><id name="seqID" type="integer" column="seqID"><generator class="increment"></generator></id><property name="keyword" type="string" column="keyword"></property><property name="ddlCode" type="integer" column="ddlCode"></property><property name="ddlName" type="string" column="ddlName"></property></class>
</hibernate-mapping>
3.在hibernate.cfg.xml文件中添加:
<mapping resource="ElecSystemDDL.hbm.xml文件路径名"/>
创建DAO接口及其实现类:
1.创建DAO接口: IElecSystemDDLDao.java
public interface IElecSystemDDLDao extends ICommonDao<ElecSystemDDL> {public static final String SERVICE_NAME="cn.elec.dao.imp.ElecSystemDDLImpl";}
2.创建实现类:ElecSystemDDLDaoImpl.java
/*** @Repository* 相当于在spring中定义:<bean id="elecTextDaoImpl" class="com. **.ElecTextDaoImpl">*/
@Repository(IElecSystemDDLDao.SERVICE_NAME)
public class ElecSystemDDLDaoImpl extends CommonDaoImpl<ElecSystemDDL> implements IElecSystemDDLDao{}
创建Service接口及实现类:
1.创建Service接口:IElecSystemDDLService.java
public interface IElecSystemDDLService {public static final String SERVICE_NAME="com.elec.service.impl.ElecSystemDDLServiceImpl";
}
2.创建实现类:ElecSystemDDLServiceImpl.java
//事务控制:spring的声明事务处理,在service层添加@Transactional
@Service(IElecSystemDDLService.SERVICE_NAME)
@Transactional(readOnly=true)
public class ElecSystemDDLServiceImpl implements IElecSystemDDLService {/*数据字典Dao*/@Resource(name=IElecSystemDDLDao.SERVICE_NAME)IElecSystemDDLDao elecSystemDDLDao;}
创建Action类:ElecSystemDDLAction.java
public class ElecSystemDDLAction extends BaseAction<ElecSystemDDL>{ElecSystemDDL elecSystemDDL=this.getModel();//注入数据字典service@Resource(name=IElecSystemDDLService.SERVICE_NAME)IElecSystemDDLService elecSystemDDLService;/** * @Name: home* @Description: 跳转到数据字典页面* @Parameters: 无* @Return: String:跳转到system/dictionaryIndex.jsp*/public String home(){return "home";}
}
其中BaseAction是对泛型实例化方法进行封装的类。
配置struts.xml:
<action name="elecSystemDDLAction_*" class="elecSystemDDLAction" method="{1}"><result name="home">/WEB-INF/page/system/dictionaryIndex.jsp</result></action>
修改script/menuDate.js中的url:
{mid:'aq',pid:'am',name:'数据字典维护',icon:'../images/MenuIcon/shujuzidianguanli.gif',target:'mainFrame',/*url:'../system/dictionaryIndex.jsp',*/url:'../system/elecSystemDDLAction_home.do',isParent:false
}
启动Tomcat服务器,页面展示:
转载于:https://www.cnblogs.com/zhstudy/p/7099230.html
数据字典的设计--1.首页功能实现相关推荐
- APP UI结构-首页功能点大集锦,很干很详细
APP UI结构的系列的文章有一段时间没有更新了,因为最近在学一些新东西和看一些新书籍,适当的给自己充电也是为了更好的输出,言归正传,今天想跟大家聊的是和首页相关的一些内容,可能有些内容最近有的小伙伴 ...
- 移动软件开发-设计app首页
一.实验目标 做一个APP首页,包括顶部图片.顶部菜单栏.中部消息模块.底部Tab按钮.学习 ScrollView, RelativeLayout,以及插件之间的穿插使用. 二.实验步骤 1.我们要实 ...
- Vue商城——首页功能
Vue商城项目的前提工作 用脚手架3创建项目 vue create 项目名称 在GitHub上建一个仓库 将项目与github联系起来 git init git add . git commit -m ...
- 数据字典项设计实现方案
最近被安排做数据字典的设计,本人一头雾水啊,没弄过啊,网上搜索一下,这个老兄写的很好,原文链接:http://blog.csdn.net/stevene/article/details/575142? ...
- UI设计中首页设计指南
一款好的APP产品,其首页设计不仅能清晰展示产品核心功能.特点,有着较好的用户体验,还能展示公司的品牌形象,提升用户品牌认知度.今天我就针对UI设计中首页设计指南进行简单的说明. APP首页设计至关重 ...
- 鸿蒙版瑞幸咖啡开发日记(二)首页功能实现
鸿蒙版瑞幸咖啡开发日记之首页功能实现 1.需开发的功能归纳 2.首页功能开发 2.1 顶部TabList开发 2.2 一级分类数据渲染 2.3 右侧大分类模板渲染 2.4 右侧具体咖啡数据渲染 2.5 ...
- Photoshop设计网站首页
发工具与关键技术:使用Photoshop 设计网站首页 作者:成东平 撰写时间:2019年4月10日 先来看看本人设计的食品网页 Photoshop设计网页上图就是本人使用Photoshop学习设计的 ...
- 产品学习过程记录(六)——为淘宝设计拼购功能
产品学习过程记录(六)--为淘宝设计拼购功能 淘宝拼购功能设计--产品设计方案 1. 价值主张: 拼购功能从本质上来说是通过让利的方式使用户对产品发起自传播,从卖家来看减少了推广成本,从买家来看可以用 ...
- android中实现返回首页功能
关于返回首页功能的两种实现 最近需要实现一个返回首页的功能,刚开始自己的基本思路就是清除当前站内的所有activity但不包括MainActivity,这种方法也不难,CSDN上一搜就找到了答案. 方 ...
最新文章
- IdentityServer4关于多客户端和API的最佳实践【含多类型客户端和API资源,以及客户端分组实践】【中】...
- linux 数组的简单总结
- mysql提示The server quit without updating PID file /usr/local/mysql/data/localhost.localdomain.pid
- 喜马拉雅贺雯迪:基于端到端TTS实现更具生动、富有情感的语音合成表现
- hbase启动后在log中出现cannot get log writer
- 余弦欧式距离matlab,余弦相似度和欧几里得距离
- 列出薪金高于在部门30_我如何在五个月内将薪金提高一倍并获得一份了不起的工作...
- oracle 算年级,oracle 查询年级,班级,班级人数;
- 安装Python和Anaconda
- Vue异步获取数据后初始化数据不能及时更新
- python中标点符号大全及名字_常见的标点符号大全及名字
- html页面设置document类型,解析网页头部代码:Html Document
- table冻结列,可冻结首行,首列
- 【190302】VC+ 视频捕捉与录像+实例源码源代码
- 田忌赛马 - 动态规划
- 趣味代码 python画小猪佩奇
- Python3.8.5安装教程
- 订餐系统jsp模板_基于JSP的网上订餐系统的设计与实现
- 大话游戏循环Game Loop——PythonC++
- 《Android源码设计模式解析与实战》读书笔记(七)——策略模式
热门文章
- Maven环境配置(本文以“apache-maven-3.8.2”的安装配置为例)
- SSH框架面试题(自己+别人的试题)
- python中namedtuple函数用法详解
- SQL中的查询语句总结(实例)
- 【Unity人物动画】SALSA With RandomEyes (语音生成嘴型/人物说话) 使用
- manjaro go的安装
- 一公司C#编程规范v2.0(转)
- eclipse 同时打开两个
- 沉镀非晶质氟化碳(a-C:F)膜-供应CulnS2/CBD硫化铟/钒氧化物/铜铬磷硫CuCrP2S6/铜铁锡硫(CFTS)/铜铟硫光电/铬-氧/铜铁锡硫(CFTS)/钒氧化物薄膜定制
- 阿里云服务器如何购买?三种购买方式图文教程