数据字典在web中的简单应用
2016-11-09 20:12
197 查看
数据字典是什么?
数据字典一般是给开发人员用的,列出了系统后台数据库的情况。数据库中包含的所有表及其每个字段的类型、对应的中文名称、含义等。一般用于省市县,类型,性别等不容易改变的数据。
用数据字典有什么好处?
一般对于省,市,县 ,性别,类型等数据,在用下拉菜框时,每用一个下拉框就需要在数据库中建一个表,而使用数据字典,只需要一张表,或者两张表即可。
数据字典在web项目中简单的应用
1.建表(拿两张表的举例)
1.1
创建t_summany表,里面存放类型
创建t_detail表
创建主表t_user
2.建立web工程
2.1 创建一个util
package com.lty.utils;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import javax.annotation.PostConstruct;
import javax.annotation.Resource;
importorg.springframework.stereotype.Component;
import com.lty.dao.TestDao;
import com.lty.dto.Detail;
import com.lty.dto.Summany;
@Component
public class Util {
//连接dao
@Resource
privateTestDao dao;
//创建一个静态map
staticMap<Integer, Object> map=new HashMap<Integer, Object>();
@PostConstruct
//往map中添加数据
privatevoid initMap(){
//查出t_summany中的数据
List<Summany>sulist=dao.getSuList();
//遍历得到集合
for(Summany summany : sulist) {
Integersid=summany.getSid();
//通过sid查出t_detail中的数据
List<Detail>detaillist=dao.getdelist(summany.getSid());
//以sid当key detaillist当value放入map
map.put(sid,detaillist);
}
//得到t_detail中的数据
List<Detail>delist=dao.getdeilList();
//遍历得到的集合
for(Detail detail : delist) {
//将数据放到map中did为key dname为value
map.put(detail.getDid(),detail.getDname());
}
}
//通过did得到dnam
publicstatic String getDnameById(Integer did){
return (String) map.get(did);
}
//通过sid得到一个detail的集合
publicstatic List<Detail> getlistBySummaryId(Integer sid){
return(List) map.get(sid);
}
}
2.2根据t_user建立实体类
package com.lty.dto;
import com.lty.utils.Util;
publicclass User {
private Integer
uid;
private String
uname;
private Integer
did;
private String
dname;
public String getDname() {
//调用util里的方法
return Util.getDnameById(did);
}
publicvoid setDname(Stringdname) {
this.dname = dname;
}
public Integer getUid() {
returnuid;
}
publicvoid setUid(Integeruid) {
this.uid = uid;
}
public String getUname() {
returnuname;
}
publicvoid setUname(Stringuname) {
this.uname = uname;
}
public Integer getDid() {
returndid;
}
publicvoid setDid(Integerdid) {
this.did = did;
}
}
在实体类中创建dname这个字段,get方法调用util的方法 这样在前台就能直接得到dname
3.前台下拉框
在前台给个路径,进入connter层中的一个方法。public List<Detail> type(){
//通过sid得到list集合
List<Detail>type=Util.getlistBySummaryId(Chang.INTERTYPE);
return type;
}
在这里我定义一个常量类
publicclass Chang {
publicstaticfinal Integer
SEX=1001;
publicstaticfinal Integer
INTERTYPE=1002;
}
这样下拉框就完事了。
4. 数据字典后台管理的应用
页面操作:新增,修改,删除(逻辑删除),设置明细
删除时只能逻辑删除
补充:物理删除和逻辑删除
1). 物理删除:delete
2). 逻辑删除:在表中增加一个字段:delete_flag(true代表删除,false代表未删除)
select * from t_user wheredelete_flag = false;
update t_user setdelete_flag = true where
页面2:设置明细页面
该页面显示对应summary的明细
操作:新增,修改,删除(逻辑删除),设置显示顺序。
数据字典给静态map差不多,程序执行就加载,加载一次后,后面调用
数据字典一般是给开发人员用的,列出了系统后台数据库的情况。数据库中包含的所有表及其每个字段的类型、对应的中文名称、含义等。一般用于省市县,类型,性别等不容易改变的数据。
用数据字典有什么好处?
一般对于省,市,县 ,性别,类型等数据,在用下拉菜框时,每用一个下拉框就需要在数据库中建一个表,而使用数据字典,只需要一张表,或者两张表即可。
数据字典在web项目中简单的应用
1.建表(拿两张表的举例)
1.1
创建t_summany表,里面存放类型
创建t_detail表
创建主表t_user
2.建立web工程
2.1 创建一个util
package com.lty.utils;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import javax.annotation.PostConstruct;
import javax.annotation.Resource;
importorg.springframework.stereotype.Component;
import com.lty.dao.TestDao;
import com.lty.dto.Detail;
import com.lty.dto.Summany;
@Component
public class Util {
//连接dao
@Resource
privateTestDao dao;
//创建一个静态map
staticMap<Integer, Object> map=new HashMap<Integer, Object>();
@PostConstruct
//往map中添加数据
privatevoid initMap(){
//查出t_summany中的数据
List<Summany>sulist=dao.getSuList();
//遍历得到集合
for(Summany summany : sulist) {
Integersid=summany.getSid();
//通过sid查出t_detail中的数据
List<Detail>detaillist=dao.getdelist(summany.getSid());
//以sid当key detaillist当value放入map
map.put(sid,detaillist);
}
//得到t_detail中的数据
List<Detail>delist=dao.getdeilList();
//遍历得到的集合
for(Detail detail : delist) {
//将数据放到map中did为key dname为value
map.put(detail.getDid(),detail.getDname());
}
}
//通过did得到dnam
publicstatic String getDnameById(Integer did){
return (String) map.get(did);
}
//通过sid得到一个detail的集合
publicstatic List<Detail> getlistBySummaryId(Integer sid){
return(List) map.get(sid);
}
}
2.2根据t_user建立实体类
package com.lty.dto;
import com.lty.utils.Util;
publicclass User {
private Integer
uid;
private String
uname;
private Integer
did;
private String
dname;
public String getDname() {
//调用util里的方法
return Util.getDnameById(did);
}
publicvoid setDname(Stringdname) {
this.dname = dname;
}
public Integer getUid() {
returnuid;
}
publicvoid setUid(Integeruid) {
this.uid = uid;
}
public String getUname() {
returnuname;
}
publicvoid setUname(Stringuname) {
this.uname = uname;
}
public Integer getDid() {
returndid;
}
publicvoid setDid(Integerdid) {
this.did = did;
}
}
在实体类中创建dname这个字段,get方法调用util的方法 这样在前台就能直接得到dname
3.前台下拉框
在前台给个路径,进入connter层中的一个方法。public List<Detail> type(){
//通过sid得到list集合
List<Detail>type=Util.getlistBySummaryId(Chang.INTERTYPE);
return type;
}
在这里我定义一个常量类
publicclass Chang {
publicstaticfinal Integer
SEX=1001;
publicstaticfinal Integer
INTERTYPE=1002;
}
这样下拉框就完事了。
4. 数据字典后台管理的应用
页面操作:新增,修改,删除(逻辑删除),设置明细
删除时只能逻辑删除
补充:物理删除和逻辑删除
1). 物理删除:delete
2). 逻辑删除:在表中增加一个字段:delete_flag(true代表删除,false代表未删除)
select * from t_user wheredelete_flag = false;
update t_user setdelete_flag = true where
页面2:设置明细页面
该页面显示对应summary的明细
操作:新增,修改,删除(逻辑删除),设置显示顺序。
数据字典给静态map差不多,程序执行就加载,加载一次后,后面调用
相关文章推荐
- [原创]用jar命令将Web应用打包成war文件的简单方法
- XML在Web中的简单应用
- 基于.NET平台的Web应用中数据访问技术的深入探索(转)
- 线程池在web上的简单应用 ~
- UltraWebGrid简单应用。(.net学习笔记)
- 线程池在web上的简单应用
- Web 应用中用户录入数据错误检查在分层设计中的定位
- XML在Web中的简单应用
- 一个简单的WEB应用 VS2005
- 基于XML的Web数据挖掘在数字图书馆中的应用
- XML在Web中的简单应用
- 数据结构在游戏中的简单应用
- 应用开发中数据字典项设计实现方案
- Oracle数据字典的应用实例
- 面向 Java 开发人员的 Ajax: 结合 Direct Web Remoting 使用 Ajax----数据序列化不可能比这更简单了!
- Web应用导出Excel报表的简单实现(HTML)
- [js].net中表格数据的排序的js应用,非常简单(中国铁路查询)
- Web使用挖掘:web数据使用模式的发现与应用(译)(1)
- 共享数据在WEB应用中的范围
- db2中对数据字典的应用