证书管理系统.docx
《证书管理系统.docx》由会员分享,可在线阅读,更多相关《证书管理系统.docx(15页珍藏版)》请在冰豆网上搜索。
证书管理系统
证书管理系统
摘要
当今世界已进入了在计算机信息管理领域中激烈竞争的时代,应用计算机已经变得十分普遍了。
我们应该承认,谁掌握的知识多,信息量大,信息处理速度快,批量大,谁的效率就高,谁就能在竞争中立于不败之地。
随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作,越来越多的管理人员意识到信息管理的重要性。
作为计算机应用的一部分,使用计算机对信息进行管理,具有手工管理所无法比拟的优点。
例如:
检索迅速,查找方便,可靠性高,存储量大,保密性好,寿命长,成本低等。
这些优点能够极大地提高信息管理的效率,也是企业的科学化,正规化管理与世界接轨的重要条件。
我所设计的证书管理系统正是基于以上计算机的特点,可对信息进行输入,查询以及修改等操作,具有操作信息管理准确无误,操作管理的速度快,管理方便,实用性高等优点。
我相信随着计算机的普及,各种管理系统将会在经济,生活领域发挥越来越重要的作用。
第1章绪论
1.1课题背景
在信息高速发达的今天,信息的管理显得尤为重要。
良好的信息管理可以提升企业形象,给人以亲切,友好的感受。
因此,信息的有效管理已经成为管理的一项重要工作,而借助于当前蓬勃发展的IT业工具来拓展服务能力,已成为许多企业的首选。
作为一个有效的管理和分析手段,计算机系统发挥其强大的优势。
在数据存储,数据查询,数据维护等方面快速可靠,是手工操作所无法比拟的。
1.2课题实现的内容
对于一些资质要求十分严格的企业,每一位职工都有一系列的证书,不同的岗位要求持有一系列不同类别或级别的证书,而证书又是一种时效性很强的资料,每一类证书的检验周期又不尽相同,办理证书的周期和手续也不尽相同:
为了保证公司的正常运转,因此要求能够实现管理每个职工持证书的情况。
本系统要求包括一下模块:
部门信息维护,人员基本信息维护,证书信息维护以及查询,删除,修改,插入以及用户管理等操作。
第2章需求分析
2.1系统功能描述
一个通用的证书管理系统应该包含:
部门基本信息维护,人员基本信息维护,证书信息管理以及用户管理等。
如图2-1所示,其中每个功能有若干相关联的子功能模块组成
2.2非功能性需求
2.2.1性能需求
系统性能要求如下:
(1)系统安全、可靠,登录用户身份的验证机制的设计;
(2)功能齐全操作方便、界面友好;
(3)建立合理的表结构,避免数据冗余,易于维护和扩充;
(4)查询图书的时候没有明显的延迟;
2.2.2平台要求
一般的家用电脑,可基于WINDOWS2000或WINDOWSXP等操作系统,DBMS设计为MicroSoftAcess等。
2.3系统模型
2.3.1对象模型
根据需求分析的描述抽象出该系统的主要类有用户类,收入类,支出类。
图2—2类图
2.3.2.功能模型
图2-3主要描述了系统为用户所提供的功能提供给用户的功能主要是用户注册,登录。
个人财物的收支管理,收支统计查询。
提供给用户的功能主要是收入和支出的查询、录入、删除,并可以分别对收入和支出进行日管理和查询。
其中理功能包括读者管理和图书馆理。
图2-3用例图1
读者的借书功能中还包括了续借;还书超期的处理扩展到了还书功能中。
管理员对读者和图书的管理分别加进了添加、删除和修改;参数设置中加进了图书的保存时间、所借图书册数上限、及图书馆的基本信息;统计图书库存量、采购单、书目流量及读者的借阅历史。
2.3.2.3动态模型
第3章总体设计
3.1系统功能模块设计
用户管理£º¼´Ê¹ÓÃÕß×ÊÁϹÜÀí£¬Ö÷Òª¹¦ÄÜΪµÇ¼ϵͳÓû§ÃûºÍÃÜÂëµÄÐ޸ģ¬Óû§»ù±¾×ÊÁϵÄÉèÖá£
ÊÕÖ§ÀàÐÍÉèÖ㺼´¸ù¾ÝʹÓÃÕßʵ¼ÊÇé¿öÉèÖÃÊÕÈëºÍÖ§³öµÄÏîÄ¿Ãû³Æ£¬ÈçÊÕÈëÀàÐÍÓУº¹¤×Ê¡¢²¹Ìù¡¢¹ÉƱÊÕÈëµÈ£¬·´Ó³¾¼ÃÀ´Ô´µÄÏêϸÇé¿ö¡£ÈçÖ§³öÀàÐÍÓУºµç»°·Ñ¡¢»ïʳ¡¢¹ºÎˮµç·ÑµÈ£¬Ïêϸ·´Ó³×ʽðµÄ»¨·ÑÈ¥Ïò£¬»¨·Ñʱ¼ä£¬·¢Éú½ð¶îµÈ¡£
Êý¾Ýά»¤£º¼´¸÷Ïî¾¼ÃÒµÎñÊý¾ÝµÄÔö¼Ó¡¢±à¼¡¢É¾³ý²Ù×÷¡£ÊÕÖ§Ã÷ϸºÍתÕËÃ÷ϸ·Ö¿ª²Ù×÷£¬¸ù¾Ýµ±Ç°±êÇ©ÏÔʾµÄÊý¾ÝËùÊôÄ£¿é×Ô¶¯ÅжϲÙ×÷Êý¾Ý¶ÔÏó¡£ÇÒ¿Éͨ¹ýË«»÷Êý¾ÝÁÐ±í£¬¶Ôµ±Ç°Êý¾Ý½øÐбà¼Ð޸ġ£
Êý¾Ý²éѯ¹¦ÄÜ£º¸Ã¹¦Äܸù¾Ý±êÇ©µ±ÓÐÏÔʾµÄÊÇÊÕÖ§Ã÷ϸ»¹ÊÇתÕËÃ÷ϸÅжϲéѯ¹¦ÄÜ¡£²éѯÌõ¼þ¿É¸ù¾ÝÊÕÈë/Ö§³ö¡¢ÊÕÖ§ÀàÐÍ¡¢·¢ÉúÈÕÆÚ¡¢Â¼ÈëÈÕÆÚ²éѯ¡£²éѯ½á¹ûÏÔʾÔÚ±êÇ©µÄÏàÓ¦Êý¾Ý±í¸ñÖУ¬ÒÔ±ã¶ÔÆä½øÐвÙ×÷ά»¤¡£ÆäÖз¢ÉúÈÕÆںͼÈëÈÕÆÚÒÔ¼°·¢Éú½ð¶î¿É¸ù¾ÝÇø¼ä²éѯ¡£
Êý¾Ýͳ¼Æ£º°´ÔÂͳ¼Æµ¥ÏîÊÕÈ룬µ¥ÏîÖ§³ö£¬×ÜÊÕÈë¶î¡¢×ÜÖ§³ö¶îµÈ¡£
3.2数据库设计
3.2.1实体联系图分析
本系统主要涉及的数据信息有收入信息,指出信息,人员的信息。
在此可以为用户提供收入管理,支出管理业务,即用户与收入支出间存在着一对多的管理关系。
具体的实体联系关系图如图3--2
图3--2
3.2.2实体联系图到关系表的转换
用户(用户名,密码)
收入表用户(编号,日期,金额,种类,备注)
支出表用户(编号,日期,金额,种类,备注)
3.2.3关系表建立
将实体联系图映射为关系表如下:
名称
类型和长度
主键
是否为空
默认值
用户名
char(50)
是
否
无
密码
int(20)
否
否
无
表3—2收入信息表
名称
类型和长度
主键
是否为空
默认值
编号
Int(10)
是
否
无
日期
Varchar(20)
否
否
无
金额
Varchar(20)
否
否
无
种类
Varchar(20)
否
否
无
备注
Varchar(20)
否
否
无
表3—3支出信息表
名称
类型和长度
主键
是否为空
默认值
编号
Int(10)
是
否
无
日期
Varchar(20)
否
否
无
金额
Varchar(20)
否
否
无
种类
Varchar(20)
否
否
无
备注
Varchar(20)
否
否
无
第4章详细设计及实现
4.1详细设计阶段的根本目标
确定应该怎样具体实现个人财物管理系统,也就是说,经过这个阶段的设计工作,应该得出对个人财物管理系统的精确描述,从而在编码阶段可以把这个描述直接翻译成用某种程序设计语言书写的程序。
4.2详细设计阶段的任务
设计出程序的蓝图及主要的算法,以便以此进行具体的代码编写和实现。
4.3人机界面设计
4.3.1登录界面
主要实现用户验证,主要有用户名和密码输入区,并进行验证后转入主界面,或输入有误时的错误提示。
其界面如下:
4.3.2主界面
主界面主要包括的菜单项有:
系统管理,收支管理,收支查询,使用说明。
其中系统管理有下拉菜单:
用户管理,用户登录,退出系统;
收支管理的下拉菜单:
收入管理,支出管理;收支查询的下拉菜单:
收入统计,支出统计。
其界面如下:
4.3.2收入/支出录入界面
可以选择资金的日期,数额,种类,备注等信息。
其界面如下:
图4-3
4.3.3收入/支出查询界
设置区:
可以按照查询方式,查询时间,选择相应的数据表。
可以根据编号进行删除。
查询区:
用表格将日查询,月查询的结果进行显示。
其界面如下:
图4—3
4.4图书馆管理系统主要功能描述
描述形式:
java源码
数据库连接:
StringjdbcDriver="sun.jdbc.odbc.JdbcOdbcDriver";
StringjdbcURL="jdbc:
odbc:
gerencaiwu";
Class.forName(jdbcDriver);
System.out.println("类实例化成功!
");
Connectioncon=DriverManager.getConnection(jdbcURL);System.out.println("创建连接对像成功!
");
Statementst=con.createStatement();
ResultSetrs=null;
st.close();
con.close();
收支录入:
(以收入表为例)
if(!
source.equals("")&&!
J_act.getText().equals(""))
{
StringjdbcDriver="sun.jdbc.odbc.JdbcOdbcDriver";
StringjdbcURL="jdbc:
odbc:
gerencaiwu";
StringsqlStr="insertintoincomevalues('"+date+"','"+account+"','"+source+"','"+command+"')";
try{//这里的异常处理语句是必需的.否则不能通过编译!
Class.forName(jdbcDriver);
//System.out.println("类实例化成功!
");
Connectioncon=DriverManager.getConnection(jdbcURL);
//System.out.println("创建连接对像成功!
");
Statementst=con.createStatement();
//System.out.println("创建Statement成功!
");
st.executeUpdate(sqlStr);
//System.out.println("操作数据表成功!
");
JOptionPane.showMessageDialog(null,"插入成功,请继续..");
st.close();
con.close();
}
catch(Exceptionerr){
err.printStackTrace(System.out);
}
}
收支查询统计:
(以收入表为例)
if(getString().equals("收入"))
{
if(way.equals("按日查询"))
{
StringsqlStr="select*fromincomewhere日期=('"+time+"')";
rs=st.executeQuery(sqlStr);
intcolumn=rs.getMetaData().getColumnCount();
booleanflag=false;
inti=0;
while(rs.next())
{
flag=true;
for(intj=1;j<=column;j++)
{
cells[i][j-1]=rs.getString(j);
System.out.println("cells[i][j-1]"+cells[i][j-1]);
}
i++;
}
table=newJTable(cells,columnNames);
pSouth.removeAll();
pSouth.add(newJScrollPane(table));
pSouth.validate();
if(!
flag)
{
JOptionPane.showMessageDialog(null,"抱歉,没有您要查询的信息");
}
rs.close();
}else
{
if(way.equals("按月查询"))
{
Stringgongzi="工资";
Stringjiangjin="奖金";
Stringbutie="各种补贴";
Stringjianzhi="兼职";
Stringqita="其他";
Stringshouru="总收入";
Statementst1=con.createStatement();
Statementst2=con.createStatement();
Statementst3=con.createStatement();
Statementst4=con.createStatement();
Statementst5=con.createStatement();
Statementst6=con.createStatement();
ResultSetrs1=null;
ResultSetrs2=null;
ResultSetrs3=null;
ResultSetrs4=null;
ResultSetrs5=null;
ResultSetrs6=null;
StringsqlStr1="selectsum(金额)fromincomewhere日期like"+"'"+time+"%'and类型='"+gongzi+"'";
rs1=st1.executeQuery(sqlStr1);
……
StringsqlStr6="selectsum(金额)fromincomewhere日期like"+"'"+time+"%'";
rs6=st6.executeQuery(sqlStr6);
if(rs1.next())gz=rs1.getInt
(1);
if(rs2.next())jj=rs2.getInt
(1);
if(rs3.next())bt=rs3.getInt
(1);
if(rs4.next())jzh=rs4.getInt
(1);
if(rs5.next())qt=rs5.getInt
(1);
if(rs6.next())shr=rs6.getInt
(1);
rs1.close();
……
rs6.close();
st1.close();
……
st6.close();
String[]columnNames={"种类","总计"};
Object[][]cells={
{"工资",gz},
{"奖金",jj},
{"各类补贴",bt},
{"兼职",jzh},
{"其他",qt},
{"总收入",shr},
};
table=newJTable(cells,columnNames);
pSouth.removeAll();
pSouth.add(newJScrollPane(table));
pSouth.validate();
}
}
实习感受
为期三周的课程设计结束了,时间虽短,设计做的也不够完美,还有很多的缺陷和不足,而且有的地方还可能出现错误,但却让我们学到了很多课本上学不到的东西。
本次课程设计从最开始的查资料,进行市场分析和需求分析,到总体设计,详细设计,我们力求在这短短三周周时间内做出一份尽量完善的设计。
本系统采用面向对象的方法开发设计,运用各种软件开发的图形工具进行分析,不仅直观易懂,而且以我们习惯的思维方式设计出稳定性好,可重用性和可维护性好的系统,使它满足实际需要。
该课程设计的目的是做一个适用家庭个人使用的个人财物管理系统。
该系统是要实现用户注册,登录,以及收支管理,查询统计等。
用户可以通过该系统清楚了解该自己日常收支的,查询相关收支的信息和自己的相关情况,用户通过该系统对收支信息进行管理,使得各种信息清楚明了。
在为其三周的生产实习中,虽然我们没能深入企业进行具体的项目开发,但学校为我们提供了具有实际意义的题目,良好的开发环境,使我们完全以实际的开发热情投入其中。
通过三周实践我基本上能够用面向对象的方法进行软件分析,设计,进一步熟悉了软件生命周期的各个阶段以及每个阶段需要完成的工作和应该注意的问题,并能在最大限度的实现。
在开发的过程中,我们也遇到过许多困难,但都通过老师同学的帮助以及我们自己的努力最终得到了解决。
经过本次生产实习,使我们可以将课本上的理论知识运用于实践中,在熟悉软件开发的流程,填补了以前在学习中知识的不足之处,加深了对理论的理解的同时,也培养了我们的实际动手能力,基本上可以进行完整的软件设计开发。
最后,谢谢老师的耐心指导和同学们的热心帮助,让我们懂得了课堂上的东西只有通过自己的实践才能变成真正自己的东西。
实践出真知!
参考文献
1张海藩.软件工程导论.清华大学出版社,2003
2.蔡敏,徐惠惠,黄炳强.UML基础与Rose建模教程人民邮电出版社
3施伯乐,丁宝康,汪卫.数据库系统教程(第二版)高等教育出版社
4.潘浩,李芙玲,王志丽,易九JAVA程序设计清华大学出版社,北京交通大学出版社