最新信息系统项目管理实训报告企业门户.docx
《最新信息系统项目管理实训报告企业门户.docx》由会员分享,可在线阅读,更多相关《最新信息系统项目管理实训报告企业门户.docx(44页珍藏版)》请在冰豆网上搜索。
最新信息系统项目管理实训报告企业门户
【答案】A
endfor
10.下列叙述中正确的是________。
【答案】B
use
ENDDO
C.建立查询和视图时,数据表可作为数据源
3.内部联接是指只有________的记录才包含在查询结果中。
【答案】C
returnm
综合实训报告
课程名称信息系统项目管理
课题名称企业门户网站
专业信息管理与信息系统
班级信管
学号205005150515
姓名快乐的小布丁
指导教师*老师
2050年12月6日
湖南工程学院
综合实训任务书
课程名称信息系统项目管理
课题企业门户网站
专业班级信管
学生姓名快乐的小布丁
学号205005150515
指导老师*老师
审批
任务书下达日期2050年11月12日
任务完成日期2050年12月6日
一、设计内容与设计要求
1.课程设计目的
全面熟悉、掌握信息系统项目管理基本知识,增强对不同的问题运用和灵活选择合适的数据结构以及项目管理描述的本领,熟悉编制和调试程序的技巧,掌握分析结果的若干有效方法,进一步提高上机动手能力,增强面向对象程序设计概念,熟悉java语言编程,养成提供文档资料的习惯和规范编程的思想,为后继课程的实验以及课程设计打下较扎实的基础。
进一步提高上机动手能力,培养使用计算机解决实际问题的能力,为后继课程的实验以及课程设计,特别是自学、毕业论文的完成打下扎实的基础。
2.课题题目
⑴进销存管理系统⑵酒店管理系⑶企业门户网站⑷图书馆管理系统
3.设计要求:
⑴设计课题题目:
按学号顺序(每15位学生选择一题)选择相应题号的课题。
换题者不记成绩。
⑵根据自己对应的课题完成以下主要工作:
①完成系统需求分析:
包括系统设计目的与意义;系统功能需求(系统流程图);输入输出的要求。
②完成系统总体设计:
包括系统功能分析;系统功能模块划分与设计(系统功能模块图)。
③完成系统详细设计:
包括数据库需求分析;类层次图;界面设计与各功能模块实现。
④系统调试:
调试出现的主要问题,编译语法错误及修改,重点是运行逻辑问题修改和调整。
⑤使用说明书及编程体会:
说明如何使用你编写的程序,详细列出每一步的操作步骤。
⑥关键源程序(带注释)
⑶按规定格式完成课程设计报告,将其打印稿(A4纸)上交给老师存档。
⑷不得抄袭他人程序、课程设计报告,每个人应体现自己的个性设计。
二、进度安排
11.21
上午
下午
11.22
上午
11.24
上午
下午
11.28
上午
晚上
11.29
上午
下午
12.30
上午
下午
课题1:
进销存管理系统
(一)、课程设计题目:
进销存管理系统
(二)、目的与要求:
1、目的:
(1)要求学生达到熟练掌握java语言的基本知识和技能;
(2)基本掌握面向对象程序设计的基本思路和方法;
(3)能够利用所学的基本知识和技能,解决简单的面向对象程序设计问题。
2、基本要求:
(1)要求利用面向对象的方法以及java的编程思想来完成系统的设计;
(2)要求在设计的过程中,建立清晰的类层次;
(3)在系统中定义类,每个类中要有各自的属性和方法;
(4)在系统的设计中,至少要用到面向对象的一种机制。
3、创新要求:
在基本要求达到后,可进行创新设计,如根据查找结果进行修改的功能。
4、写出设计说明书
(三)、设计方法和基本原理:
1、问题描述(功能要求):
某公司现有进销存物品,要求对所有的库存设备都能按照品名进行显示、查找、入库和出库、保存的功能。
进销存物品有下列属性:
尺寸、类型、售价、重量、品牌、入库编号
2、问题的解决方案:
根据系统功能要求,可以将问题解决分为以下步骤:
(1)分析系统中的各个实体之间的关系及其属性和行为;
(2)根据问题描述,设计系统的类层次;
(3)完成类层次中各个类的描述(包括属性和方法);
(4)完成类中各个成员函数的定义;
(5)完成系统的应用模块;
(6)功能调试;
(7)完成系统总结报告以及系统使用说明书。
课题2:
酒店管理系统
(一)、课程设计题目:
酒店管理系统
(二)、目的与要求:
1、目的:
(1)要求学生达到熟练掌握java语言的基本知识和技能;
(2)基本掌握面向对象程序设计的基本思路和方法;
(3)能够利用所学的基本知识和技能,解决简单的面向对象程序设计问题。
2、基本要求:
(1)要求利用面向对象的方法以及java的编程思想来完成系统的设计;
(2)要求在设计的过程中,建立清晰的类层次;
(3)在系统中定义类,每个类中要有各自的属性和方法;
(4)在系统的设计中,至少要用到面向对象的一种机制。
3、创新要求:
在基本要求达到后,可进行创新设计,如根据查找结果进行修改的功能。
4、写出设计说明书
(三)、设计方法和基本原理:
1、问题描述(功能要求):
酒店管理系统的需求包括开台点菜功能、智能化获取菜品功能、自动结账功能、营业额报表功能等。
依据餐饮行业的特点,本系统实现以下目标:
●操作简单方便、界面简洁大方。
●方便快捷的开台点菜功能。
●智能化定位菜品的功能。
●快速查看开台点菜信息的功能。
●自动结账功能。
●按开台和商品实现的日结账功能。
●按日消费额汇总统计实现的月结账功能。
●按日营业额实现的年结账功能。
●系统运行稳定、安全可靠。
2、问题的解决方案:
根据系统功能要求,可以将问题解决分为以下步骤:
(1)分析系统中的各个实体之间的关系及其属性和行为;
(2)根据问题描述,设计系统的类层次;
(3)完成类层次中各个类的描述(包括属性和方法);
(4)完成类中各个成员函数的定义;
(5)完成系统的应用模块;
(6)功能调试;
(7)完成系统总结报告以及系统使用说明书。
课题3:
企业门户网站
(一)、课程设计题目:
企业门户网站
(二)、目的与要求:
1、目的:
(1)要求学生达到熟练掌握java语言的基本知识和技能;
(2)基本掌握面向对象程序设计的基本思路和方法;
(3)能够利用所学的基本知识和技能,解决简单的面向对象程序设计问题。
2、基本要求:
(1)要求利用面向对象的方法以及java的编程思想来完成系统的设计;
(2)要求在设计的过程中,建立清晰的类层次;
(3)在系统中定义类,每个类中要有各自的属性和方法;
(4)在系统的设计中,至少要用到面向对象的一种机制。
3、创新要求:
在基本要求达到后,可进行创新设计,如根据查找结果进行修改的功能。
4、写出设计说明书
(三)、设计方法和基本原理:
1、问题描述(功能要求):
企业门户网站的最终目的是为企业提供一个简单、易用、开放、可扩展的企业信息门户平台。
通过需求分析以及与客户的沟通,现制定网站实现目标如下:
●网站使用人性化设计,界面友好、安全、实用。
●网站操作便捷并具有高度信息延续性、可扩展性。
●提供建立在关系型数据库系统上的数字信息组织、管理、查询等功能。
●对用户输入的数据进行严格的数据检索,尽可能地排除人为错误。
●最大限度地实现网站易维护性和易操作性。
2、问题的解决方案:
根据系统功能要求,可以将问题解决分为以下步骤:
(1)分析系统中的各个实体之间的关系及其属性和行为;
(2)根据问题描述,设计系统的类层次;
(3)完成类层次中各个类的描述(包括属性和方法);
(4)完成类中各个成员函数的定义;
(5)完成系统的应用模块;
(6)功能调试;
(7)完成系统总结报告以及系统使用说明书。
课题4:
图书馆管理系统
(一)、课程设计题目:
图书馆管理系统
(二)、目的与要求:
1、目的:
(1)要求学生达到熟练掌握java语言的基本知识和技能;
(2)基本掌握面向对象程序设计的基本思路和方法;
(3)能够利用所学的基本知识和技能,解决简单的面向对象程序设计问题。
2、基本要求:
(1)要求利用面向对象的方法以及java的编程思想来完成系统的设计;
(2)要求在设计的过程中,建立清晰的类层次;
(3)在系统中定义类,每个类中要有各自的属性和方法;
(4)在系统的设计中,至少要用到面向对象的一种机制。
3、创新要求:
在基本要求达到后,可进行创新设计,如根据查找结果进行修改的功能。
4、写出设计说明书
(三)、设计方法和基本原理:
1、问题描述(功能要求):
图书馆管理系统是图书馆管理工作中不可缺少的部分,它对于图书馆的管理者和使用者都非常重要,所以图书馆管理系统应该为管理者与读者提供充足的信息和快捷的数据处理手段,但长期以来,人们使用传统的人工方式或性能较低的图书馆管理系统管理图书馆的日常事务,操作流程比较繁琐。
一个成功的图书馆管理系统应提供快速的图书信息检索功能、快捷的图书借阅、归还流程。
本系统具有以下特点:
●确保系统具有良好的系统性能,友好的用户界面。
●较高的处理效率,便于使用和维护。
●采用成熟技术开发,使系统具有较高的技术水平和较长的生命周期。
●系统尽可能简化图书馆管理员的重复工作,提高工作效率。
●简化数据查询、统计难度。
2、问题的解决方案:
根据系统功能要求,可以将问题解决分为以下步骤:
(1)分析系统中的各个实体之间的关系及其属性和行为;
(2)根据问题描述,设计系统的类层次;
(3)完成类层次中各个类的描述(包括属性和方法);
(4)完成类中各个成员函数的定义;
(5)完成系统的应用模块;
(6)功能调试;
(7)完成系统总结报告以及系统使用说明书。
3.1辅助JavaBean的编写6
3.2基本数据库操作的JavaBean的编写6
3.3字符串处理的JavaBean“StringUtils”的编写9
3.4字符串处理的JavaBean“ParamUtils”的编写13
3.5Final常量JavaBean的编写13
3.6判断用户身份的JavaBean的编写14
3.7输出实用HTML代码的JavaBean的编写16
一、系统需求分析
通过相关调查,要求网站具有以下功能:
❑通过前台全面介绍企业的软件产品并提供软件下载。
❑在前台为针对性问题提供解决方案。
❑前台在线解答用户常见问题。
❑提供软件补丁下载的功能。
❑提供用户注册、登录、用户名和密码修改的功能。
❑需提供在线留言簿,方便用户留言。
❑为用户设置论坛模块。
❑通过后台对用户信息进行管理,包括设置用户权限和查询用户信息等功能。
❑在后台可以管理公告信息、新闻信息、论坛头像、友情链接。
❑通过后台对软件类别及前台提供的软件和软件补丁进行管理。
❑通过后台管理问题解决方案、常见问题解答等信息。
❑对用户留言信息进行回复和管理。
二、总体设计
2.1总体设计图
企业门户网站前台功能结构,如下图所示。
企业门户网站后台功能结构,如图2所示。
图2企业门户网站后台功能结构图
2.2各函数(模块文件)之间的调用关系
图C.1网站前台首页架构图
图C.2导航条架构图
2.3数据结构及数据库
本系统数据库采用MySQL数据库,系统数据库名称为mingri。
数据库mingri中包含14张表。
(1)forum(论坛主题信息表)
论坛主题信息表主要用于保存论坛中用户发表的主题信息。
表forum的结构如表B.1所示。
表B.1forum的结构
字段名
数据类型
默认值
是否为空
是否主键
描述
fid
int[11]
NULL
PRI
主题ID
fsid
int[11]
NULL
YES
版块ID
state
int[11]
NULL
YES
主题状态
title
varchar[200]
NULL
YES
标题
uid
varchar[50]
NULL
YES
发帖人
iid
varchar[50]
NULL
YES
贴图ID
ftime
datetime
NULL
YES
发表时间
content
text
NULL
YES
内容
renum
int[11]
NULL
YES
回复数
hitnum
int[11]
NULL
YES
人气值
(2)fsort(论坛版块信息表)
论坛版块信息表主要用于保存论坛中提供的版块信息。
表fsort的结构如表B.2所示。
表B.2fsort的结构
字段名
数据类型
默认值
是否为空
是否主键
描述
fsid
int[11]
NULL
PRI
版块ID
State
int[11]
NULL
YES
版块类别
free
int[11]
0
YES
版块状态
name
varchar[50]
NULL
YES
版块名称
ftime
datetime
NULL
YES
添加时间
uid
varchar[50]
NULL
YES
添加人
resume
varchar[200]
NULL
YES
描述
(3)guestboard(留言信息表)
留言信息表主要用于保存用户的留言信息。
表guestboard的结构如表B.3所示。
表B.3guestboard的结构
字段名
数据类型
默认值
是否为空
是否主键
描述
gid
int[11]
NULL
PRI
留言ID
title
varchar[100]
NULL
YES
留言标题
guest
varchar[50]
NULL
YES
留言人
gtime
datetime
NULL
YES
留言时间
content
varchar[200]
NULL
YES
留言内容
gflag
tinyint[1]
0
YES
是否回复
rtime
datetime
NULL
YES
回复时间
recontent
text
NULL
YES
回复内容
(4)soft(软件信息表)
软件信息表主要用于保存公司的软件信息。
表soft的结构如表B.4所示。
表B.4soft的结构
字段名
数据类型
默认值
是否为空
是否主键
描述
sfid
int[11]
NULL
PRI
软件ID
name
varchar[100]
NULL
YES
软件名称
edition
varchar[50]
NULL
YES
版本
price
float
NULL
YES
价格
uptime
datetime
NULL
YES
上传时间
uid
varchar[50]
NULL
YES
上传人
iid
varchar[50]
NULL
YES
贴图ID
sid
int[11]
NULL
YES
软件类别ID
environment
varchar[50]
NULL
YES
运行环境
filesize
int[11]
NULL
YES
程序大小
commend
int[11]
NULL
YES
推荐指数
loadnum
int[11]
NULL
YES
下载次数
regular
tinyint[1]
NULL
YES
是否为正式版本
introduce
text
NULL
YES
简介
path
varchar[50]
NULL
YES
下载路径
resume
varchar[200]
NULL
YES
其他说明
(5)ssort(软件类别信息表)
软件类别信息表主要用于保存软件类别信息。
表ssort的结构如表B.5所示。
表B.5ssort的结构
字段名
数据类型
默认值
是否为空
是否主键
描述
sid
int[11]
NULL
PRI
类别ID
name
varchar[50]
NULL
YES
类别名称
resume
varchar[100]
NULL
YES
类别简介
(6)user(用户信息表)
用户信息表主要用于保存用户信息,包括普通用户和管理员,由字段status的值进行区分,值1表示普通用户,值为0表示管理员。
表user的结构如表B.6所示。
表B.6user的结构
字段名
数据类型
默认值
是否为空
是否主键
描述
uid
varchar[50]
PRI
用户名
password
varchar[50]
NULL
YES
密码
name
varchar[50]
NULL
YES
真实姓名
regqu
varchar[50]
NULL
YES
密码问题
reqanswer
varchar[50]
NULL
YES
密码答案
iid
varchar[50]
头像ID
sex
tinyint[1]
NULL
YES
性别
age
int[11]
NULL
YES
年龄
tel
varchar[50]
NULL
YES
联系电话
email
varchar[50]
NULL
YES
Email地址
qq
varchar[50]
NULL
YES
OICQ号码
regtime
datetime
NULL
YES
注册时间
address
varchar[200]
NULL
YES
个人地址
http
varchar[50]
NULL
YES
个人主页
status
int[11]
NULL
YES
权限级别
state
int[11]
NULL
YES
状态显示
resume
varchar[250]
NULL
YES
个人简介
三、详细设计
3.1辅助JavaBean的编写
根据系统的需求编写需要的JavaBean。
下面将给出企业门户网站中所需要的部分辅助JavaBean的编写过程。
3.2基本数据库操作的JavaBean的编写
基本数据库操作的JavaBean是一个公共类,通常包括连接数据库的方法getConnection、获取结果集总记录数的方法getRow、删除数据的方法Delete等。
下面将给出编写企业门户网站中的基本数据库操作的JavaBean“Database”的实现过程。
(1)先将“Database”保存到指定的包中,并导入所需的类包,并将其保存到“com.bwm.core”包中,代码如下:
packagecom.bwm.core;
importjava.sql.Connection;
importjava.sql.SQLException;
importjava.sql.DriverManager;
importjava.sql.PreparedStatement;
importjava.sql.ResultSet;
(2)定义Database类,并定义静态变量及构造方法,代码如下:
publicclassDatabase{//定义Database类
privatestaticConnectioncon;//定义静态变量static
privatestaticStringproxool="org.logicalcobwebs.proxool.ProxoolDriver";
privatestaticStringpoolname="proxool.mingri";
publicDatabase(){//构造方法
}
}
(3)创建连接数据库的方法getConnection,该方法返回Connection对象的一个实例。
getConnection方法的代码如下:
publicstaticConnectiongetConnection(){
try{
Class.forName(proxool);//调用Class的forName方法加载数据库驱动程序类
con=DriverManager.getConnection(poolname);//获取Connection对象的引用
}catch(ClassNotFoundExceptione){
System.out.println(e.getMessage());
}catch(SQLExceptione){
System.out.println(e.getMessage());
}
if(con==null){
System.out.println("没有获取到数据库连接");
}
returncon;
}
(4)定义getRow方法获取结果集的总记录数。
由于ResultSet对象没有提供直接获取结果集总行数的方法,所以此处需要定义获取结果集总行数的方法。
getRow方法的代码如下:
publicstaticintgetRow(Stringsql){
inti=0;
PreparedStatementps=null;
ResultSetrs=null;
try{
ps=con.prepareStatement("SELECTCOUNT(*)FROM"+sql,
ResultSet.TYPE_SCROLL_INSENSITIVE,
ResultSet.CONCUR_READ_ONLY);
rs=ps.executeQuery();
if(rs.next()){
i=rs.getInt
(1);
}
}catch(SQLExceptione){
System.out.println(e.getMessage());
i=0;
}finally{
System.out.println("SELECTCOUNT(*)FROM"+sql);
try{
rs.close();//关闭ResultSet对象的一个实例
}catch(SQLExceptione){}
try{
ps.close();//关闭PreparedStatement对象的一个实例
}catch(SQLExceptione){}
retur