个人信息系统的设计与实现Word下载.docx
- 文档编号:19081506
- 上传时间:2023-01-03
- 格式:DOCX
- 页数:45
- 大小:625.05KB
个人信息系统的设计与实现Word下载.docx
《个人信息系统的设计与实现Word下载.docx》由会员分享,可在线阅读,更多相关《个人信息系统的设计与实现Word下载.docx(45页珍藏版)》请在冰豆网上搜索。
2.1目标
采用jsp和servlet等javaweb开发技术基本上实现个人管理系统的用户登录,用户个人信息管理备忘录管理通讯录管理日记管理财务管理这几个功能模块的有关信息的添加和查看功能。
2.2运行环境
需要在电脑上安装有jdk1.6和tomcate6.0服务器还需要安装有mysql5.0数据库。
3数据描述
3.1输入数据
用户登录界面中输入用户id和密码,输入的用户id是6~15位字母或数字。
用户修改个人信息时需要输入各个模块需要的不能重复的id号。
各个个人信息管理模块都支持中文信息的输入。
3.2输出数据
根据数据库中存储的信息进行显示。
4功能要求
用户可以通过注册一个用户来对个人的通讯录信息,包括通讯人姓名、联系方式、工作地点、城市、备注等;
备忘录信息,包括什么时间、事件、地点等;
日记信息;
包括时间、地点、事情、人物等;
个人财物管理,包括总收入,消费项目、消费金额、消费时间、剩余资金等。
个人信息进行相关的处理。
本系统提供的主要功能:
(1)能对通信录信息进行查看添加。
(2)能对备忘录信息进行添加查看。
(3)能对日记信息进行添加查看。
(4)能对个人财务信息进行添加查看汇总收入支出的分类的查看。
(5)能对个人信息进行管理。
二、需求分析
1需求调查
1.1组织机构调查
通过对同班同学日常管理个人信息的功能需要的调查并对调查的结果分析。
1.2业务需求调查
通过业务需求调查得到如下的系统流程图(图1.2)
图1.2系统流程图
图1.2流程
2功能需求
2.1功能划分
根据用户使用用户管理系统时管理的信息的类别的不同可以分为以下几个模块分别是:
个人信息,备忘录,通信录,日记,财务管理。
2.2功能描述
个人信息管理系统主要由:
个人信息管理、备忘录管理、通讯录管理、日记管理、财务管理等模块组成。
进入该系统后,用户可以对系统中的信息进行添加、修改、和查询等操作。
包括以下功能:
个人信息管理系统
个人信息
备忘录
通讯录
日记
财务管理
查看个人信息
写日志
财务总况
财务清单
收人
情况
支出
添加记录
添加备忘
查看记录
查看日志
个人首页
修改个人信息
查看备忘
操作
退出系统
2.2功能结构图
每个人都可以通过注册一个用户来使用这个系统进行个人信息的管理。
3.1数据描述
在需求分析后,就可以设计出能够满足用户需求的各类实体,以及它们之间的关系,为后面的设计打下基础。
这些实体包含各种具体的信息,通过相互之间的作用形成数据的流动。
根据上面的分析规划出的实体有:
用户信息实体、通讯录信息实体、日记信息实体、财务信息实体、备忘录信息实体。
系统中的各个信息实体的e-r图如下面的图。
图3.1.1人信息实体
用户名
时间
记录时间
地点
事情
图3.1.2备忘录实体
图3.1.3财务管理信息实体
图3.1.4通讯录信息实体
图3.1.5日记信息实体
3.2数据库描述
3.2.1关系描述的设计
根据数据库原理,并结合以上E-R图,经转换,可以导出各个关系。
其转化规则为首先每个实体应该转换成一个关系,有属性的联系也应转化为一个关系然且需要给出每个关系的关键字。
根据以上规则直接给出所有关系。
个人信息(用户ID号,用户密码,姓名,年龄,出生日期,电话号码,QQ,工作,地址)关键字为用户ID号。
日志(标识,日期,地点,日记标题,备注)关键字为标识。
通讯录(标识,名字,性别,关系,添加时间,电话,QQ,出生日期,工作,地址,城市)关键字为标识。
备忘录(标识,时间,记录时间,地点,备注)关键字为标识。
财务管理(标志,日期,项目,添加时间,数额,收入/支出)关键字为标识。
在得出以上关系后,根据关系数据库的理论要求,需要对所有的关系进行关系规范化,至少要求各个关系达到第三范式的要求。
按照第三范式的要求对比以上各个关系,在所有关系中都不存在非主属性对关键字的部分依赖,即满足第三范式。
3.2.2数据库的逻辑设计
数据库逻各个关系,现把它们转化为数据表。
用户信息表:
用户ID号,用户密码,姓名,年龄,出生日期,电话号码,QQ,工作,地址。
辑设计即把得到的满足第三范式的关系转化为特定的数据库系统下的数据表。
根据前面得到的
日志表:
标识,日期,地点,日记标题,备注。
通讯录表:
标识,姓名,性别,关系,添加时间,电话,QQ,出生日期,工作,地址,城市
备忘录表:
标识,日期,记录时间,地点,备注。
财务管理表:
标志,日期,项目,添加时间,数额,收入/支出。
3.2.3数据库的物理设计
在完成数据库的逻辑设计后,即可以开始数据库的物理设计。
基于以上数据库的逻辑设计,考虑程序设计的简易性及通用性,本个人信息管理系统采用Oracle数据库,并在其下创建5个数据表,其结构分别如下:
(1)个人信息表,其字段列表如图3.1所示:
图3.1个人信息表
(2)备忘录表,其字段列表如图3.2所示:
图3.2备忘录表
(3)通讯录表,其字段列表如图3.3所示:
图3.3通讯录表
(4)日记表,其字段列表如图3.4所示:
图3.4日记表
(5)财务管理表,其字段列表如图3.5所示:
图3.5财务管理表
4性能需求
4.1数据精确度
考虑到本系统的用户需求在进行财务管理实体表的设计时将总收入,消费金额的数据精度是小数点后四位。
4.2适应性
该系统适合各类人群使用。
5运行需求
5.1用户界面
采用b/s架构,界面由jsp设计实现,页面导航将各个界面链接起来,简单明了。
5.2硬件接口
要将本系统发布在网上需要运行服务器的主机上装有网卡同时还要联网。
5.3基本要求
1)体系结构:
b/s架构
2)操作系统:
Windows系列
3)数据库管理系统:
Mysql
4)开发工具:
MyEclipse8.5
5)软件需求:
jdk1.6以上,tomcat服务器
三、总体设计
1总体结构和模块设计
1.1功能结构
总体功能结构图如下:
3.1系统功能结构图
1.2模块设计
该系统分为以下几个模块:
登录模块、注册模块、通讯录模块、备忘录模块、日记模块、财务管理模块和个人信息模块。
2、数据结构
该系统中的五个表的关系是:
个人信息表是其他表的外键。
3、数据库设计
3.1数据库的逻辑设计
根据本系统的需求设计的概念模式如图3所示:
图3个人管理系统的概念
图3.1个人信息表
图3.2备忘录表
图3.3通讯录表
(5)财务管理表,其字段列表如下图所示:
图3.5财务管理表
4外部接口设计
4.1用户界面
用户登录界面如下:
图4.1.1用户登陆
图4.1.2个人信息
图4.1.3备忘录界面
图4.1.4通信录界面
图4.1.5日记界面
图4.1.6财务总况界面
图4.1.7财务清单列表界面
图4.1.8收入情况列表
图4.1.9支出情况列表
图4.1.10添加个人财务记录
四、详细设计
1程序设计
用户登录注册和用户的注销:
是该系统的公共的功能部分。
该部分主要负责对用户登录状态的信息的存储和传递。
要实现这些功能需要借助session技术来实现。
图2.2是用户登录的一个数据流图。
图4.1.1用户登录
个人信息管理模块:
该模块主要的任务是实现对用户个人自己信息的管理,包括对个人信息的修改和查看。
图4.1.2个人信息管理模块
通讯录管理模块:
该模块主要的任务是实现对用户的个人通讯录的管理,包括对通信录的添加查看功能。
图4.1.3通信管理模块
备忘录管理模块:
该模块主要的任务是实现对用户的备忘录的管理,包括对备忘录的添加和查看的功能。
图4.1.4备忘录管理模块
日记管理模块:
该模块主要的任务是实现对用户的个人日记的管理,包括对日记的添加和查看的功能。
图4.1.5日记管理模块
财务管理模块:
该模块主要的任务是实现对用户的个人财务状况的管理,包括对个人财务总况的的显示,财务状况的详细情况的查看,查看个人收入支出的详细情况,添加个人财务信息的功能。
图4.1.6财务管理模块
五、系统实现
登陆界面的代码
<
%@pagelanguage="
java"
contentType="
text/html;
charset=UTF-8"
pageEncoding="
UTF-8"
%>
!
DOCTYPEHTMLPUBLIC"
-//W3C//DTDHTML4.01Transitional//EN"
>
html>
<
head>
title>
用户登陆界面<
/title>
linkhref="
/personalSystem/script/jplugins/datepicker/jquery.datepick.css"
rel="
stylesheet"
type="
text/css"
/>
scripttype="
text/javascript"
src="
"
/script>
/bbs_ssh/script/jplugins/datepicker/jquery-1.3.2.js"
/bbs_ssh/script/jplugins/datepicker/jquery.datepick.js"
/bbs_ssh/script/jplugins/datepIcjer/hqueRy.datepick-zh-CN.js"
4/rcript~
functionvalidate(form){
varerrors="
;
if(form.userId.length==0){
errors+="
用户名不能为空\n"
}
if(form.userPassword.length==0){
密码不能为空\n"
if(errors.length>
0){
alert(errors);
returnfalse;
returntrue;
}
linkrel="
href="
./css/login.css"
/link>
/head>
body>
divalign="
center"
formaction="
login"
method="
post"
name="
form1"
onsubmit="
returnvalidate(this)"
tableid="
table_login"
thead>
<
tr>
<
tdcolspan="
3"
)>
用户登陆<
/td>
/tr>
/thead>
trid="
row1"
td>
用户id:
inputtype="
text"
userId"
(6~15位字母或数字)<
密码:
password"
userPassword"
submit"
value="
提交"
/input>
/table>
/form>
/div>
/body>
/html>
登陆后台代码
packagecom.org.personnalInfo.Servlet;
importjava.io.IOException;
importjava.io.UnsupportedEncodingException;
importjava.sql.Date;
importjava.text.DateFormat;
importjava.text.ParseException;
importjavax.servlet.RequestDispatcher;
importjavax.servlet.ServletException;
importjavax.servlet.ServletRequest;
importjavax.servlet.http.HttpServlet;
importjavax.servlet.http.HttpServletRequest;
importjavax.servlet.http.HttpServletResponse;
importjavax.servlet.http.HttpSession;
importcom.org.personnalInfo.Dao.UserDao;
importcom.org.personnalInfo.entity.User;
publicclassLoginServletextendsHttpServlet
{
@Override
publicvoiddoGet(HttpServletRequestrequest,
HttpServletResponseresponse)throwsServletException,
IOException
{
doPost(request,response);
publicvoiddoPost(HttpServletRequestrequest,
HttpServletResponseresponse)
throwsServletException,
IOException
try{
request.setCharacterEncoding("
utf-8"
);
}catch(UnsupportedEncodingExceptione){
//TODOAuto-generatedcatchblock
e.printStackTrace();
}
//获取传过来的请求参数
StringuserId=request.getParameter("
StringuserPassword=request.getParameter("
UserDaouserDao=newUserDao();
UserloginUser;
loginUser=userDao.findUserByIdAndPassword(userId,userPassword);
System.out.println("
loginUser:
+loginUser);
HttpSessionsession=request.getSession(true);
session.setAttribute("
loginUser"
loginUser);
Userlogin=(User)session.getAttribute("
System.out.println(login.getUserId());
System.out.println(login.getUserName());
if(loginUser!
=null){//如果查出来的登陆用户不为空就跳转到用户的主界面
response.setContentType("
charset=utf8"
request.getRequestDispatcher("
/main.jsp"
).forward(request,response);
注册界面的代码
用户注册<
/personalSystem/script/jplugins/datepicker/jquery-1.3.2.js"
/personalSystem/script/jplugins/datepicker/jquery.datepick.js"
/personalSystem/script/jplugins/datepicker/jquery.datepick-zh-CN.js"
$(function(){
$('
#popupDatepicker'
).datepick();
});
if(frm.userId.length==0){
Ȼ
}ȍРРif(form.user䁐assword.length==0){
errorų+="
密码不能为空\"
}elseif(f䁯rm.userPasswod.value!
=form.聣omfirm_password.value){
确认密码要和密码一致\n"
RegisterServlet"
>
用户名:
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 个人信息 系统 设计 实现
![提示](https://static.bdocx.com/images/bang_tan.gif)