还剩72页未读,继续阅读
本资源只提供10页预览,全部文档请下载后查看!喜欢就下载吧,查找使用更方便
文本内容:
个人信息管理系统
1.1业务流程分析用户需要使用账号与密码通过登陆页面登陆个人信息管理系统,新用户可注册新账号登陆登陆后进入系统主窗体,可对个人信息管理、备忘录管理、通讯录管理、日记管理、财务管理进行操作退出系统时返回登陆页面
1.2系统功能分析个人信息管理系统主要由个人信息管理、备忘录管理、通讯录管理、日记管理、财务管理等模块组成进入该系统后,用户可以对系统中的信息进行添加、修改、删除和查询等操作包括以下功能1通讯录信息包括通讯人姓名、联系方式、工作地点、城市、备注等2备忘录信息包括什么时间、事件、地点等3日记http://www.myeducs.cn/chaxun/riji/index.htm\t_blank信息包括什么时间、地点、事件等4个人财物管理包括总收入,消费项目、消费金额、消费时间、余额每个用户可以自己注册http://www.myeducs.cn/User/UserReg.asp\t_blank一个用户名,对自己的个人信息进行独立的管理
1、系统总体设计
2.1个人信息管理系统业务流程图如图
2.1所示
2.2个人信息管理系统功能结构图如图
2.2所示
2、系统数据库设计在需求分析阶段已经完成系统的所有数据分析根据该阶段建立的概念模型,已经得出满足第三范式的几个关系描述,此阶段主要的工作就是把前一阶段的成果转化为具体的数据库
3.1系统的基本E-R图根据之前的分析规划出的个人信息管理系统实体有个人信息实体、备忘录实体、通讯录实体、日记实体、财务管理实体个人信息实体图如图
3.1所示备忘录实体图如图
3.2所示同通讯录实体如图
3.3所示日记实体如图
3.4所示财务管理实体如图
3.5所示
3.2关系描述的设计根据数据库原理,并结合以上E-R图,经转换,可以导出各个关系其转化规则为首先每个实体应该转换成一个关系,有属性的联系也应转化为一个关系然且需要给出每个关系的关键字根据以上规则直接给出所有关系个人信息(用户ID号,用户密码,姓名,年龄,出生日期,电话号码,QQ,工作,地址)关键字为用户ID号日志(标识,日期,地点,日记标题,备注)关键字为标识通讯录(标识,名字,性别,关系,添加时间,电话,QQ,出生日期,工作,地址,城市)关键字为标识备忘录(标识,时间,记录时间,地点,备注)关键字为标识财务管理(标志,日期,项目,添加时间,数额,收入/支出)关键字为标识在得出以上关系后,根据关系数据库的理论要求,需要对所有的关系进行关系规范化,至少要求各个关系达到第三范式的要求按照第三范式的要求对比以上各个关系,在所有关系中都不存在非主属性对关键字的部分依赖,即满足第三范式
3.3数据库的逻辑设计数据库逻辑设计即把得到的满足第三范式的关系转化为特定的数据库系统下的数据表根据前面得到的各个关系,现把它们转化为数据表用户信息表用户ID号,用户密码,姓名,年龄,出生日期,电话号码,QQ,工作,地址日志表标识,日期,地点,日记标题,备注通讯录表标识,姓名,性别,关系,添加时间,电话,QQ,出生日期,工作,地址,城市备忘录表标识,日期,记录时间,地点,备注财务管理表标志,日期,项目,添加时间,数额,收入/支出
3.4数据库的物理设计在完成数据库的逻辑设计后,即可以开始数据库的物理设计基于以上数据库的逻辑设计,考虑程序设计的简易性及通用性,本个人信息管理系统采用Oracle数据库,并在其下创建5个数据表,其结构分别如下1个人信息表其字段列表如表
3.1所示表
3.1个人信息表字段名数据类型字段长度与格式主键UserIDVARCHAR20是userNameVARCHAR10否userPasswordVARCHAR20否uageNUMBER/否ubirthdayDATE/否utelephotoVARCHAR11否uQQVARCHAR15否ujobVARCHAR30否uworkingPlaceVARCHAR30否uremarksCLOB/否2备忘录表其字段列表如表
3.2所示表
3.2备忘录表字段名数据类型字段长度与格式主键midVARCHAR20是userIdVARCHAR20否mtimetimestamp/否maddtimetimestamp/否mplaceVARCHAR30否mthingsCLOB/否3通讯录表其字段列表如表
3.3所示表
3.3通讯录表字段名数据类型字段长度与格式主键aidVARCHAR20是userIdVARCHAR20否nameVARCHAR10否relationVARCHAR10否sexVARCHAR2否birthdayDATE/否aaddtimeDATE/否telephoneVARCHAR11否QQVARCHAR15否jobVARCHAR30否workingPlaceVARCHAR30否cityVARCHAR15否4日记表其字段列表如表
3.4所示表
3.4日记表字段名数据类型字段长度与格式主键didVARCHAR20是userIdVARCHAR20否atitleVARCHAR20否dtimeDATE/否dplaceVARCHAR30否dthingsCLOB/否5财务管理表其字段列表如表
3.5所示表
3.5财务管理表字段名数据类型字段长度与格式主键fidVARCHAR20是userIdVARCHAR20否inoroutNUMBER/否projectVARCHAR30否ftimeDATE/否faddtimeDATE/否fmoneyNUMBER82否
3、各功能模块的设计与实现
4.1登录模块%@pagelanguage=javaimport=java.util.*pageEncoding=GBK%%@tagliburi=http://java.sun.com/jsp/jstl/coreprefix=c%%Stringpath=request.getContextPath;StringbasePath=request.getScheme+://+request.getServerName+:+request.getServerPort+path+/;%!DOCTYPEHTMLPUBLIC-//W3C//DTDHTML
4.01Transitional//ENhtmlheadbasehref=%=basePath%title个人信息系统/titlemetahttp-equiv=pragmacontent=no-cachemetahttp-equiv=cache-controlcontent=no-cachemetahttp-equiv=expirescontent=0metahttp-equiv=keywordscontent=keyword1keyword2keyword3metahttp-equiv=descriptioncontent=Thisismypage!--linkrel=stylesheettype=text/csshref=styles.css--%request.setCharacterEncodingGBK;%linkrel=stylesheethref=css/login.csstype=text/css//headbodybackground=images\
20101127309.jpgmarqueeheight=100/marqueebr/divalign=centerbr/br/br/br/jsp:useBeanid=loginscope=requestclass=benben.check/divalign=centerbr/br/centerh1个人信息系管理统欢迎您/h1formaction=check.jspmethod=postname=form1tablewidth=250border=0tbodytrtd账号/tdtdinputtype=textname=userIdid=userIdside=15maxlength=15/td/trtrtd密码/tdtdinputtype=passwordname=passwordid=passwordside=15maxlength=15/td/trtrtdnbsp;/tdtdinputtype=submitvalue=确定nbsp;inputtype=resetvalue=取消nbsp;inputtype=buttonvalue=注册onClick=window.openzhuce.jspbr/td/tr/tbody/table/form(用户名和密码请输入6~15位的字母或数字)/centerdivclass=div1tableborder=0width=250pxtrtdheight=23px%=login.getErrorMsgerruserId%/td/trtrtdheight=23px%=login.getErrorMsgerrpassword%/td/tr/table/div/div/div/body/html
4.2用户注册模块%@pagelanguage=javaimport=java.util.*pageEncoding=GBK%%@pageimport=java.text.*%%Stringpath=request.getContextPath;StringbasePath=request.getScheme+://+request.getServerName+:+request.getServerPort+path+/;%!DOCTYPEHTMLPUBLIC-//W3C//DTDHTML
4.01Transitional//ENhtmlheadmetahttp-equiv=Content-Typecontent=text/html;charset=gb2312title注册/titlelinkrel=stylesheettype=text/csshref=../css/base.cssscriptlanguage=javascripttype=text/javascriptsrc=../js/base.js/script/headbodyleftmargin=8topmargin=8!--快速转换位置按钮--tablewidth=98%border=0cellpadding=0cellspacing=1bgcolor=#D1DDAAalign=centertrtdheight=26tablewidth=98%border=0cellspacing=0cellpadding=0trtdalign=center/td/tr/table/td/tr/table!--内容列表--formname=formaction=add_user.jspmethod=posttablewidth=98%border=0cellpadding=2cellspacing=1bgcolor=#D1DDAAalign=centerstyle=margin-top:8pxtrbgcolor=#E7E7E7tdheight=24colspan=10nbsp;注册nbsp;/td/trtralign=centerbgcolor=#FAFAF1height=22tdwidth=20%用户ID/tdtdalign=leftinputtype=textname=userId/(6~15位字母或数字)/td/trtralign=centerbgcolor=#FAFAF1height=22tdwidth=20%用户名/tdtdalign=leftinputtype=textname=userName//td/trtralign=centerbgcolor=#FAFAF1height=22tdwidth=20%密nbsp;码/tdtdalign=leftinputtype=textname=password/(6~15位字母或数字)/td/trtralign=centerbgcolor=#FAFAF1height=22tdwidth=20%年龄/tdtdalign=leftinputtype=textname=uage//td/trtralign=centerbgcolor=#FAFAF1height=22tdwidth=20%出生日期/tdtdalign=leftinputtype=textname=ubirthday/(YYYY-MM-DD)/td/trtralign=centerbgcolor=#FAFAF1height=22tdwidth=20%电话/tdtdalign=leftinputtype=textname=utelephoto//td/trtralign=centerbgcolor=#FAFAF1height=22tdwidth=20%QQ/tdtdalign=leftinputtype=textname=uqq//td/trtralign=centerbgcolor=#FAFAF1height=22tdwidth=20%工作/tdtdalign=leftinputtype=textname=ujob//td/trtralign=centerbgcolor=#FAFAF1height=22tdwidth=20%工作地址/tdtdalign=leftinputtype=textname=uworkingPlace//td/trtralign=centerbgcolor=#FAFAF1height=22tdcolspan=2height=280textarearows=10cols=120name=uremaks/textarea/td/trtralign=leftbgcolor=#FAFAF1height=22tdcolspan=2inputtype=submitvalue=保存nbsp;nbsp;inputtype=resetvalue=重置nbsp;nbsp;/td/tr/table/form/body/html
4.3备忘录模块添加备忘录%@pagelanguage=javaimport=java.util.*pageEncoding=GBK%%@pageimport=java.text.*%%Stringpath=request.getContextPath;StringbasePath=request.getScheme+://+request.getServerName+:+request.getServerPort+path+/;%%StringuserId=null;%%@includefile=../cookie
2.html%!DOCTYPEHTMLPUBLIC-//W3C//DTDHTML
4.01Transitional//ENhtmlheadmetahttp-equiv=Content-Typecontent=text/html;charset=gb2312title备忘录/titlelinkrel=stylesheettype=text/csshref=../css/base.cssscriptlanguage=javascripttype=text/javascriptsrc=../js/base.js/script/headbodyleftmargin=8topmargin=8!--快速转换位置按钮--tablewidth=98%border=0cellpadding=0cellspacing=1bgcolor=#D1DDAAalign=centertrtdheight=26tablewidth=98%border=0cellspacing=0cellpadding=0trtdalign=center%@includefile=top.jsp%/td/tr/table/td/tr/table!--内容列表--formname=formaction=add_mem.jspmethod=posttablewidth=98%border=0cellpadding=2cellspacing=1bgcolor=#D1DDAAalign=centerstyle=margin-top:8pxtrbgcolor=#E7E7E7tdheight=24colspan=10nbsp;添加备忘录nbsp;/td/trtralign=centerbgcolor=#FAFAF1height=22tdwidth=20%nbsp;时nbsp;nbsp;间nbsp;/tdtdalign=leftinputtype=textname=mtimevalue=%=newSimpleDateFormatyyyy-M-dHH:mm:ss.formatnewDate%//td/trtralign=centerbgcolor=#FAFAF1height=22tdwidth=20%添加时间/tdtdalign=leftinputtype=textname=maddtimevalue=%=newSimpleDateFormatyyyy-M-dHH:mm:ss.formatnewDate%//td/trtralign=centerbgcolor=#FAFAF1height=22tdwidth=20%nbsp;地nbsp;nbsp;点nbsp;/tdtdalign=leftinputtype=textname=mplace//td/trtralign=centerbgcolor=#FAFAF1height=22tdcolspan=2height=280textarearows=20cols=120name=mthings/textarea/td/trtralign=leftbgcolor=#FAFAF1height=22tdcolspan=2inputtype=submitclass=coolbgvalue=保存nbsp;nbsp;inputtype=resetclass=coolbgvalue=重置nbsp;nbsp;/td/tr/table/form/body/html
4.4通讯录模块添加新联系人%@pagelanguage=javaimport=java.util.*pageEncoding=GBK%%@pageimport=java.text.*%%Stringpath=request.getContextPath;StringbasePath=request.getScheme+://+request.getServerName+:+request.getServerPort+path+/;%%StringuserId=null;%%@includefile=../cookie
2.html%!DOCTYPEHTMLPUBLIC-//W3C//DTDHTML
4.01Transitional//ENhtmlheadmetahttp-equiv=Content-Typecontent=text/html;charset=gb2312title添加通讯录/titlelinkrel=stylesheettype=text/csshref=../css/base.cssscriptlanguage=javascripttype=text/javascriptsrc=../js/base.js/script/headbodyleftmargin=8topmargin=8!--快速转换位置按钮--tablewidth=98%border=0cellpadding=0cellspacing=1bgcolor=#D1DDAAalign=centertrtdheight=26tablewidth=98%border=0cellspacing=0cellpadding=0trtdalign=center%@includefile=top.jsp%/td/tr/table/td/tr/table!--内容列表--formname=formaction=add_book.jspmethod=posttablewidth=98%border=0cellpadding=2cellspacing=1bgcolor=#D1DDAAalign=centerstyle=margin-top:8pxtrbgcolor=#E7E7E7tdheight=24colspan=10nbsp;添加通讯录nbsp;/td/trtralign=centerbgcolor=#FAFAF1height=22tdwidth=20%nbsp;姓nbsp;nbsp;名nbsp;/tdtdalign=leftinputtype=textname=name//tdtdwidth=20%nbsp;性nbsp;nbsp;别nbsp;/tdtdalign=leftinputtype=radioname=sexvalue=男checked=checked/男inputtype=radioname=sexvalue=女/女/td/trtralign=centerbgcolor=#FAFAF1height=22tdwidth=20%nbsp;关nbsp;nbsp;系nbsp;/tdtdalign=leftinputtype=textname=relation//tdtdwidth=20%添加时间/tdtdalign=leftinputtype=textname=aaddtimevalue=%=newSimpleDateFormatyyyy-MM-dd.formatnewDate%/*/td/trtralign=centerbgcolor=#FAFAF1height=22tdwidth=20%nbsp;电nbsp;nbsp;话nbsp;/tdtdalign=leftinputtype=textname=telephone//tdtdwidth=20%nbsp;Qnbsp;nbsp;Qnbsp;/tdtdalign=leftinputtype=textname=qq//td/trtralign=centerbgcolor=#FAFAF1height=22tdwidth=20%出生日期/tdtdalign=leftinputtype=textname=birthdayvalue=%=newSimpleDateFormatyyyy-MM-dd.formatnewDate%/*/tdtdwidth=20%nbsp;工nbsp;nbsp;作nbsp;/tdtdalign=leftinputtype=textname=job//td/trtralign=centerbgcolor=#FAFAF1height=22tdwidth=20%地址/tdtdalign=leftinputtype=textname=workingPlace//tdtdwidth=20%nbsp;城nbsp;nbsp;市nbsp;/tdtdalign=leftinputtype=textname=city//td/trtralign=leftbgcolor=#FAFAF1height=22tdcolspan=4inputtype=submitclass=coolbgvalue=保存nbsp;nbsp;inputtype=resetclass=coolbgvalue=重置nbsp;nbsp;/td/tr/table/form/body/html
4.5日记模块添加新的日记%@pagelanguage=javaimport=java.util.*pageEncoding=GBK%%@pageimport=java.text.*%%Stringpath=request.getContextPath;StringbasePath=request.getScheme+://+request.getServerName+:+request.getServerPort+path+/;%%StringuserId=null;%%@includefile=../cookie
2.html%!DOCTYPEHTMLPUBLIC-//W3C//DTDHTML
4.01Transitional//ENhtmlheadmetahttp-equiv=Content-Typecontent=text/html;charset=gb2312title日记/titlelinkrel=stylesheettype=text/csshref=../css/base.cssscriptlanguage=javascripttype=text/javascriptsrc=../js/base.js/script/headbodyleftmargin=8topmargin=8!--快速转换位置按钮--tablewidth=98%border=0cellpadding=0cellspacing=1bgcolor=#D1DDAAalign=centertrtdheight=26tablewidth=98%border=0cellspacing=0cellpadding=0trtdalign=center%@includefile=top.jsp%/td/tr/table/td/tr/table!--内容列表--formname=formaction=add_diary.jspmethod=posttablewidth=98%border=0cellpadding=2cellspacing=1bgcolor=#D1DDAAalign=centerstyle=margin-top:8pxtrbgcolor=#E7E7E7tdheight=24colspan=10nbsp;新的日记nbsp;/td/trtralign=centerbgcolor=#FAFAF1height=22tdwidth=20%日记标题/tdtdalign=leftinputtype=textname=atitle//td/trtralign=centerbgcolor=#FAFAF1height=22tdwidth=20%nbsp;时nbsp;nbsp;间nbsp;/tdtdalign=leftinputtype=textname=dtimevalue=%=newSimpleDateFormatyyyy-MM-dd.formatnewDate%//td/trtralign=centerbgcolor=#FAFAF1height=22tdwidth=20%nbsp;地nbsp;nbsp;点nbsp;/tdtdalign=leftinputtype=textname=dplace//td/trtralign=centerbgcolor=#FAFAF1height=22tdcolspan=2height=280textarearows=20cols=120name=dthings/textarea/td/trtralign=leftbgcolor=#FAFAF1height=22tdcolspan=2inputtype=submitclass=coolbgvalue=保存nbsp;nbsp;inputtype=resetclass=coolbgvalue=重置nbsp;nbsp;/td/tr/table/form/body/html
4.6财务管理模块添加新账目%@pagelanguage=javaimport=java.util.*pageEncoding=GBK%%@pageimport=java.text.*%%Stringpath=request.getContextPath;StringbasePath=request.getScheme+://+request.getServerName+:+request.getServerPort+path+/;%%StringuserId=null;%%@includefile=../cookie
2.html%!DOCTYPEHTMLPUBLIC-//W3C//DTDHTML
4.01Transitional//ENhtmlheadmetahttp-equiv=Content-Typecontent=text/html;charset=gb2312title添加账目/titlelinkrel=stylesheettype=text/csshref=../css/base.cssscriptlanguage=javascripttype=text/javascriptsrc=../js/base.js/script/headbodyleftmargin=8topmargin=8!--快速转换位置按钮--tablewidth=98%border=0cellpadding=0cellspacing=1bgcolor=#D1DDAAalign=centertrtdheight=26tablewidth=98%border=0cellspacing=0cellpadding=0trtdalign=center%@includefile=top.jsp%/td/tr/table/td/tr/table!--内容列表--formname=formaction=add_fin.jspmethod=posttablewidth=98%border=0cellpadding=2cellspacing=1bgcolor=#D1DDAAalign=centerstyle=margin-top:8pxtrbgcolor=#E7E7E7tdheight=24colspan=10nbsp;添加账目nbsp;/td/trtralign=centerbgcolor=#FAFAF1height=22tdwidth=20%收入/支出/tdtdalign=leftinputtype=radioname=inoroutvalue=1checked=checked/收入inputtype=radioname=inoroutvalue=-1/支出/tdtdwidth=20%项nbsp;nbsp;目/tdtdalign=leftinputtype=textname=project//td/trtralign=centerbgcolor=#FAFAF1height=22tdwidth=20%nbsp;时nbsp;nbsp;间nbsp;/tdtdalign=leftinputtype=textname=ftimevalue=%=newSimpleDateFormatyyyy-MM-dd.formatnewDate%//tdtdwidth=20%添加时间/tdtdalign=leftinputtype=textname=faddtimevalue=%=newSimpleDateFormatyyyy-MM-dd.formatnewDate%//td/trtralign=centerbgcolor=#FAFAF1height=22tdwidth=20%nbsp;数nbsp;nbsp;额nbsp;/tdtdalign=leftcolspan=3inputtype=textname=fmoney//td/trtralign=leftbgcolor=#FAFAF1height=22tdcolspan=4inputtype=submitclass=coolbgvalue=保存nbsp;nbsp;inputtype=resetclass=coolbgvalue=重置nbsp;nbsp;/td/tr/table/form/body/html财务总况%@pagelanguage=javaimport=java.util.*pageEncoding=GBK%%@pageimport=javax.naming.*javax.sql.DataSourcejava.sql.*;%%Stringpath=request.getContextPath;StringbasePath=request.getScheme+://+request.getServerName+:+request.getServerPort+path+/;%%StringuserId=null;%%@includefile=../cookie
2.html%!DOCTYPEHTMLPUBLIC-//W3C//DTDHTML
4.01Transitional//ENhtmlheadbasehref=%=basePath%titleMyJSPindex.jspstartingpage/titlelinkrel=stylesheettype=text/csshref=../css/base.cssscriptlanguage=javascripttype=text/javascriptsrc=../js/base.js/scriptmetahttp-equiv=pragmacontent=no-cachemetahttp-equiv=cache-controlcontent=no-cachemetahttp-equiv=expirescontent=0metahttp-equiv=keywordscontent=keyword1keyword2keyword3metahttp-equiv=descriptioncontent=Thisismypage!--linkrel=stylesheettype=text/csshref=styles.css--/headbodymarqueeheight=15/marqueebr/%ResultSetrs=null;Statementst=null;Connectioncon=null;Stringsql=null;intn=0;intn1=0;intn2=0;intincome=0;intoutcome=0;inttotal=0;try{Contextctx=newInitialContext;DataSourceds=DataSourcectx.lookupjava:comp/env/jdbc/Oracle_DB;con=ds.getConnection;sql=select*fromfCwhereuserId=+userId+;st=con.createStatement;rs=st.executeQuerysql;whilers.next{n++;ifrs.getIntinorout==1{n1++;income=income+rs.getIntfmoney;}elseifrs.getIntinorout==-1{n2++;outcome=outcome+rs.getIntfmoney;}total=total+rs.getIntinorout*rs.getIntfmoney;}}catchExceptione{e.printStackTrace;out.printe.getMessage+br;}finally{ifrs!=nullrs.close;ifst!=nullst.close;ifcon!=nullcon.close;}%tablewidth=98%border=0cellpadding=2cellspacing=1bgcolor=#D1DDAAalign=centerstyle=margin-top:8pxtrbgcolor=#E7E7E7td收入/支出/tdtd记录数/tdtd数额统计/td/trtrbgcolor=#E7E7E7td收入/tdtd%=n1%/tdtd%=income%/td/trtrbgcolor=#E7E7E7td支出/tdtd%=n2%/tdtd%=outcome%/td/trtrbgcolor=#E7E7E7td总计/tdtd%=n%/tdtd%=total%/td/tr/table/body/html
4、部署和发布系统文件目录主要结构部署环境操作环境windowsXP数据库OracleWEB服务器tomcat
7.04测试浏览器360浏览器
6、总结在本课程设计中,我明白了理论与实际应用相结合的重要性,并提高了自己组织数据及编写Java程序的能力培养了基本的、良好的程序设计技能以及合作能力这次课程设计同样提高了我的综合运用所学知识的能力并对MyEclipse有了更深入的了解
2.2系统功能结构图退出系统操作查看备忘修改个人信息个人首页查看日志添加记录查看记录添加备忘添加记录支出情况收人情况财务清单财务总况写日志查看个人信息财务管理日记通讯录备忘录个人信息个人信息管理系统退出
2.1系统业务流程图是否注册登陆财务管理日志通讯录备忘录个人信息系统主窗体是否登陆用户登陆记录时间地点事情备忘录个人信息姓名年龄出生日期电话号码QQ工作地址
3.1个人信息实体账号密码时间用户名
3.2备忘录实体通讯录姓名性别关系添加时间电话QQ工作地址城市出生日期
3.3通讯录实体日记日记标题用户名时间地点事情
3.4日记实体收入/支出添加时间数额时间项目用户名财务管理
3.5财务管理实体。