基于MVC模式的个人信息管理系统实训报告.docx
- 文档编号:26150445
- 上传时间:2023-06-17
- 格式:DOCX
- 页数:52
- 大小:3.03MB
基于MVC模式的个人信息管理系统实训报告.docx
《基于MVC模式的个人信息管理系统实训报告.docx》由会员分享,可在线阅读,更多相关《基于MVC模式的个人信息管理系统实训报告.docx(52页珍藏版)》请在冰豆网上搜索。
基于MVC模式的个人信息管理系统实训报告
郑州轻工业学院
实训报告
实训名称:
基于MVC模式的个人信息管理系统
学生实训任务书
一、题目
基于MVC模式的电信资费管理系统
二、学生信息
专业学号姓名
三、用户需求及约束条件
1、功能需求:
实现前台访客页面与后台管理,电信IP业务计费总体需求模块如下:
①登陆管理:
实现登陆后方可使用该应用程序。
②用户管理:
增、删、改、查用户信息。
③管理员管理:
增、删、改、查管理员信息。
④资费管理:
增、删、改、查资费信息。
⑤用户自服务管理:
用户修改密码,查询账单。
⑥数据采集模块:
实现数据采集。
⑦账单管理:
按月生成用户计费账单。
⑧帐务管理:
按月生成帐务月、年统计报表。
2、性能需求:
①站点中网页的外观设计和内容应相互独立。
②站点要有统一的风格和布局:
使用母版页、内容页、主题。
③站点要为用户提供方便的站点导航。
3、网站开发要求:
选用技术:
Java、JSP、HTML;DBMS:
MicrosoftSQLserver2000、MYSQL或Oracle;软件集成开发环境(IDE):
NetBeans或Eclipse;采用MVC模式。
注:
以上8个功能模块,至少完成5个以上,根据完成模块的多少给作品进行评分,对完成模块多者,可以根据情况对本次试训成绩进行适当加分;技术、数据库、IDE可根据自己情况进行选定。
四、设计要求、技术参数及设计规格
1、前台实现:
电信计费系统IP主页面。
2、后台实现:
对用户信息、管理员信息、资费管理。
注:
根据个人知识掌握情况,可继续扩充该系统的功能。
五、工作量
天/日期
任务描述
通过标准
2012年12月7日
完成“需求分析说明书”、“概要设计说明书”;完成数据库设计以及登陆模块的实现。
需求分析说明书、概要设计说明书提交
2012年12月8日
用户管理模块的实现
实现用户管理和管理员管理功能
2012年12月9日
个人信息管理和通讯录管理模块功能的实现
个人信息管理和通讯录管理模块的功能
2012年12月10日
日程安排模块的实现
实现用户日程安排功能模块功能
2012年12月11日
用户数据采集功能模块的实现以及实训综合项目验收
实现用户数据采集模块的功能以及实训综合项目验收
六、考核形式、考核时间、考核指标及成绩评定
实训结束后,上交作品(电子版)、实训报告(打印版、电子版)。
成绩评定:
考勤(20%)+作品(50%)+实训报告(30%)
注:
作品、实训报告上传到指定ftp上后,请检查本人上传情况。
完成期限:
指导教师签章:
专业负责人签章:
教学院长签章:
年月日
实训报告
实训目的
根据所学的相关知识概念与原理,设计和开发基于MVC设计模式的个人信息管理系统。
通过本次实训了解一个项目从开始到结束的全部流程,同时对所学知识进行巩固。
实训内容
项目分析
用户需求
随着社会的不断发展,人们生活节奏越来越快,认识的人也越来越多,交际圈越来越广,需要记录的东西越来越多,,对于日常办公的人来说迫切需要一个日常信息管理系统记录自己的日常生活和活动的安排比如朋友和同事的电话、邮箱、办公地址;自己的日程、会议、活动安排,日常记事等都需要一个工具帮助自己,以便于合理的安排自己的日常生活。
而此项目个人信息管理系统正是基于这样的一个应用需求而设计的。
业务流程分析
用户需要使用账号与密码通过登陆页面登陆个人信息管理系统。
登陆后进入系统主窗体,可对个人信息管理、日程安排、通讯录管理。
退出系统时返回登陆页面
系统功能分析
1.1.1.1个人信息管理系统基本模块:
个人信息管理、备忘录管理、通讯录管理、日记管理、财务管理等模块组成。
进入该系统后,用户可以对系统中的信息进行添加、修改、删除和查询等操作。
包括以下功能:
个人基本信息管理模块。
个人的姓名、性别、出生日期、民族、学历、职称、登录名、密码、电话和家庭住址等。
∙用户个人通讯录模块。
个人姓名、电话、邮箱、工作单位、地址、QQ等、可以自由添加联系人的信息,查询或删除某些联系人。
∙日程安排模块、添加从某一时间到另一时间要做什么事,日程标题、内容、开始时间和结束时间、可以自由查询、修改和删除。
1.1.1.2系统功能描述如下:
∙用户登录、个人使用用户名和密码以及输入验证码登录系统、
∙查看个人信息。
主界面显示个人基本信息,如姓名、性别、出生日期、民族、学历、职称、电话、家庭住址、邮箱地址和登录名等、
∙修改个人信息。
用户可以修改自己的基本信息。
如果修改了登录名,下次应使用新的登录名。
∙修改登录密码。
用户可以修改登录密码。
∙查看通讯录。
浏览通讯录列表,按照姓名检索等。
∙维护通讯录。
增加、修改、删除联系人。
∙查看日程安排。
查看日程安排列表,可以查看某一日的内容时间等。
∙维护日程。
一个新的日程安排包括日程标题、内容、开始时间和结束时
∙可以对日程进程进行添加、修改、删除等操作、
项目设计
系统总体设计
1)个人信息管理系统业务流程图如图所示
系统业务流程图
系统功能结构流程图
2)系统数据库设计
在需求分析阶段已经完成系统的所有数据分析。
根据该阶段建立的概念模型,已经得出满足第三范式的几个关系描述,此阶段主要的工作就是把前一阶段的成果转化为具体的数据库。
3)系统的基本E-R图
根据之前的分析规划出的个人信息管理系统实体有:
个人信息实体、日程实体、通讯录实体、个人文件管理实体。
a)个人信息实体图如图所示
个人信息实体
b)通讯录实体如图所示
通讯录实体
c)日程安排实体如图所示
日程安排实体
关系描述的设计
根据数据库原理,并结合以上E-R图,经转换,可以导出各个关系。
其转化规则为首先每个实体应该转换成一个关系,有属性的联系也应转化为一个关系然且需要给出每个关系的关键字。
根据以上规则直接给出所有关系。
个人信息(用户id,用户密码,姓名,出生日期,电话号码,QQ,工作,地址,民族)关键字为用户ID号。
日程安排(标识,日期,地点,日记标题,备注)关键字为标识。
通讯录(标识,名字,性别,关系,添加时间,电话,QQ,出生日期,工作,地址,城市)关键字为标识。
个人文件管理(上传文件,下载文件)关键字为标识。
在得出以上关系后,根据关系数据库的理论要求,需要对所有的关系进行关系规范化,至少要求各个关系达到第三范式的要求。
按照第三范式的要求对比以上各个关系,在所有关系中都不存在非主属性对关键字的部分依赖,即满足第三范式。
数据库的逻辑设计
数据库逻辑设计即把得到的满足第三范式的关系转化为特定的数据库系统下的数据表。
根据前面得到的各个关系,现把它们转化为数据表。
用户信息表:
用户ID号,用户密码,姓名,民族,出生日期,电话号码,QQ,工作,地址。
日程表:
标识,日期,事件,备注。
通讯录表:
标识,姓名,性别,关系,添加时间,电话,QQ,出生日期,工作,地址,城市
数据库设计
用Mysql作为数据库,实现数据的存储和访问。
在数据库中构建以下几张数据表
用户表(user)
字段名称
字段类型
字段长度
字段说明
Username
Varchar
50
用户名
Password
Varchar
50
用户密码
个人信息表(userinfo)
字段名称
字段类型
字段长度
字段说明
ID
Varchar
50
用户编号
Username
Varchar
50
用户名
Usersex
Varchar
10
用户性别
Userbirthday
Varchar
20
出生日期
Usernational
Varchar
30
民族
Userdegree
Varchar
30
学历
Userperfession
Varchar
50
职称
Userrelephone
Varchar
50
电话
Userhome
Varchar
80
家庭住址
useremail
Varchar
50
电子邮件
通讯录表(telephone)
字段名称
字段类型
字段长度
字段说明
Telephonename
Varchar
50
记录用户名
Telephone
Varchar
50
用户电话
Varchar
50
用户电子邮箱
Work
Varchar
80
用户工作单位
Home
Varchar
80
用户家庭住址
Varchar
30
用户QQ号码
日程安排表(day)
字段名称
字段类型
字段长度
字段说明
Datetime
Varchar
20
日程日期
Thing
Varchar
80
日程内容
项目实现
登录模块
登录模块包括用户姓名,用户密码。
登录模块图
部分主要代码:
bgcolor="#95BDFF"width="350"> 输入用户姓名: 输入用户密码:
主界面
主界面图
主要部分代码:
<%
StringuserName=null;
//获取在LoginServlet.java中保存在session对象中的数据
ArrayListlogin=(ArrayList)session.getAttribute("login");
if(login==null||login.size()==0){
response.sendRedirect("../PIMS/index.jsp");
}else{
for(inti=login.size()-1;i>=0;i--){
LoginBeannn=(LoginBean)login.get(i);
userName=nn.getUserName();
}
}
%>
userName=<%=userName%>"name="banner" target="main"noresizescrolling="no">
Thispageusesframes,butyourbrowserdoesn'tsupportthem.