软件企业技术实习报告Word文档格式.docx
- 文档编号:18252171
- 上传时间:2022-12-14
- 格式:DOCX
- 页数:40
- 大小:2.62MB
软件企业技术实习报告Word文档格式.docx
《软件企业技术实习报告Word文档格式.docx》由会员分享,可在线阅读,更多相关《软件企业技术实习报告Word文档格式.docx(40页珍藏版)》请在冰豆网上搜索。
在会议管理页面中可以审批、删、改预约会议。
设备管理:
管理员登陆到系统后,点击设备管理,进入设备管理页面。
可以对设备进行增、删、改、查维护。
其中设备管理中可以把设备归属与某一个会议室,也可以把设备归属于仓库。
用户管理:
管理员登陆到系统后,点击用户管理,进入用户管理页面。
可以对用户进行增、删、改、查维护。
1.2采用技术和工具
数据库:
MySQL
服务器:
Tomcat
开发工具:
MyEclipse
数据库管理工具:
SQLyog
MySQL是一个关系型数据库管理系统,由瑞典MySQLAB公司开发,目前属于Oracle旗下产品。
MySQL最流行的关系型数据库管理系统,在WEB应用方面MySQL是最好的RDBMS(RelationalDatabaseManagementSystem,关系数据库管理系统)应用软件之一。
MySQL是一种关联数据库管理系统,关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。
MySQL所使用的SQL语言是用于访问数据库的最常用标准化语言。
MySQL软件采用了双授权政策,它分为社区版和商业版,由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型网站的开发都选择MySQL作为网站数据库。
由于其社区版的性能卓越,搭配PHP和Apache可组成良好的开发环境。
Tomcat是Apache软件基金会(ApacheSoftwareFoundation)的Jakarta项目中的一个核心项目,由Apache、Sun和其他一些公司及个人共同开发而成。
由于有了Sun的参与和支持,最新的Servlet和JSP规范总是能在Tomcat中得到体现,Tomcat5支持最新的Servlet2.4和JSP2.0规范。
因为Tomcat技术先进、性能稳定,而且免费,因而深受Java爱好者的喜爱并得到了部分软件开发商的认可,成为目前比较流行的Web应用服务器。
Tomcat服务器是一个免费的开放源代码的Web应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP程序的首选。
对于一个初学者来说,可以这样认为,当在一台机器上配置好Apache服务器,可利用它响应HTML(标准通用标记语言下的一个应用)页面的访问请求。
实际上Tomcat部分是Apache服务器的扩展,但它是独立运行的,所以当你运行tomcat时,它实际上作为一个与Apache独立的进程单独运行的。
MyEclipse,是在eclipse基础上加上自己的插件开发而成的功能强大的企业级集成开发环境,主要用于Java、JavaEE以及移动应用的开发。
MyEclipse的功能非常强大,支持也十分广泛,尤其是对各种开源产品的支持相当不错。
SQLyog是一个易于使用的、快速而简洁的图形化管理MYSQL数据库的工具,它能够在任何地点有效地管理你的数据库。
JSP是运行在服务器端的脚本语言之一,与其他的服务器端脚本一样,是用来开发动态网页的一种技术。
JSP页面由传统的HTML代码和嵌入到其中的Java代码组成。
当用户请求一个JSP页面时,服务器会执行这些Java代码,然后将结果与页面中的静态部分相结合返回给客户端浏览器。
JSP页面中还包含了各种特殊的JSP元素,通过这些元素可以访问其他的动态内容并将它们嵌入到页面中,如访问JavaBean组建的<
jsp:
useBean>
动作元素。
程序员还可以通过编写袭击的元素来实现特定的功能,开发出更为强大的Web应用程序。
2系统需求
2.1可行性分析
2.1.1问题描述
随着教育的改革的不断深入发展,各种学术交流会议,研讨会,培训讲座的召开日渐增多,规模和要求也不断提高,会议组织管理工作量也随之加大。
传统的手工操作,工作效率低,容易出错,难以适应此种发展趋势。
因此,采用信息化手段实现科学合理的会议管理运作方式显得尤为重要。
运用计算机来管理会议信息具有公正、严格和高效等诸多优点从而取代了人工管理模式下由于各种原因出现管理漏洞的可能性,因而增强了参会人员工作的积极性,提高了参会人员工作效率,确保会议能够正常地举行。
能够高效、快速管理会议,这是系统开发和评价的依据。
2.1.2可行性分析研究
当接受一个软件开发任务时,就进入软件生命的第一个阶段,即进行可行性的研究。
并不是所有问题具有简单的解决办法,许多问题不能在预定的规模之内解决。
因此通过可行性的研究分析可以知道问题。
有无可行性的解决方法,进而避免人力、物力和才力的浪费。
在现行系统初步调查的基础上就可以提出新系统目标,即新系统建立后所要求达到的运行指标,这是系统开发和评价的依据。
系统目标应充分体现,直接为会议管理系统服务,并且,程序可以分期分批实现。
但是,需要指出的是,系统目标是不可能在总体规划阶段就提得非常具体,它还将在开发过程中逐步明确和定量化。
以达到更加出色的程序系统。
随着计算机技术的不断发展以及计算机在政府各部门、企事业单位中的普及应用,它给人们带来便利以及在社会各个领域发挥的作用已无可替代。
传统的会议模式已不再适应当今社会的发展。
因此,研究与开发会议管理系统是一件非常中重要和必须的事情。
根据客户提出的系统功能、性能及实现系统的各项约束条件,根据新系统目标来衡量所需的技术是否具备,本系统是一个数据库管理和查询的系统,现有的技术以较为成熟,硬件、软件的性能要求、环境条件等各项条件良好,估计利用现有技术条件应完全可以达到该系统的功能目标。
同时,考虑给予的开发期限也较为充裕,预计系统是可以在规定期限内完成开发。
2.1.3结论意见
经过认真地可行性研究,系统基本上做到了在目的、技术、运行上的可行性。
所以,系统开发是可以进行的。
2.2概要设计
2.2.1系统流程
图2-1系统流程图
图2-2系统数据流图
2.2.2登陆模块
管理员、用户必须要经过登陆页面进入系统,在登陆页面必须输入正确的用户名、密码和验证码,若没有输入用户名、密码或验证码或者输入的密码和用户名不匹配那么就弹出相应的提示信息,然后重新输入。
验证码是随机的字母和数字的组合,如果看不清验证码图片可以点击验证码重新生成一个新的验证码。
2.2.3管理员模块
管理员具有系统的所有权限,可以进行会议的管理,用户对于会议可以进行预约,当用户预约了会议之后必须要等待管理员进行审批,管理员可以查看预约会议室用户申请的设备,如果管理员审批通过了用户的预约申请,那么这次预约的会议就可以正常的召开,如果管理员不同意会议的召开那么就删除这次的会议预约。
管理员可以查看所有的已经通过审批的会议,但是不能更改任何会议信息,如果想要修改会议信息,只有申请者通过系统进行修改。
管理员可以管理会议室,会议室的信息包括房间号、地址、容纳的人数、负责的员工,管理员可以通过输入房间号查找特定的房间,如果不输入任何的信息就显示所有的会议室信息。
如果有新的会议室可以使用,管理员可以通过系统将新的会议室的信息添加到系统供员工使用。
如果会议室不能使用那么管理员必须将会议室的信息删除。
如果会议室的信息发生了改变,管理员可以通过系统修改会议室的所有信息。
管理员可以管理系统的使用用户,每当有新的用户使用系统,管理员可以将新的用户的信息录入系统,管理员可以按照姓名、部门来查找用户,如果不输入任何信息,那么就显示所有的用户信息。
如果用户离开,那么管理员必须删除当前用户信息,禁止访问权限。
管理员可以管理设备的信息,管理员通过设备名、设备类型、设备所属的会议室来查找设备,也可以查找所有的设备。
每当有新的设备加入的时候可以将设备信息添加进系统同,也可以删除设备的信息,若果设备的信息发生了改变,那么通过一同更改设备的信息。
图2-3管理员用例图
图2-4管理员功能模块
2.2.4用户模块
员工只能对自身的会议进行管理,员工可以通过系统进行会议的预约选择会议的时间、会议的人数然后查看有没有相匹配的会议室,如果有就选中进行下一步,员工可以选择要不要申请设备的使用,然后输入会议的主题上传会议有关的文档,选择要开会的人员进行预约会议。
员工可以通过系统进行查看自己的预约情况。
如果管理员通过了会议的预约那么就可以查看会议的信息,包括其他的用户已经申请的包含自己的会议。
图2-5用户用例图
图2-6用户功能模块
2.3数据库设计
数据库结构设计的好坏将直接对应用系统的效率以及实现的效果产生影响。
好的数据库结构设计会减少数据库的储存量,数据库的完整性和一致性比较高,系统具有较快的响应速度,简化基于此数据库的应用程序的实现等。
由于数据库设计的重要性,人们提出了许多数据库结构设计的技术。
但这些设计方法和设计者的工作经验有很大的关系。
因此要从根本上解决所有数据库设计的问题,需要多实践,在实践中积累经验和教训,最终成为数据库结构设计的专家。
2.3.1数据库概念结构设计
图2-7用户E-R图
图2-8部门E-R图
图2-9设备E-R图
图2-10实体与实体之间的E-R图
2.3.2数据字典
表2-1预约会议申请表(meetingApply)
字段名
数据类型
是否为空
默认值
备注
id
int
否
主键,自增
workerID
varchar(20)
发起人ID
topic
varchar(100)
会议主题
documentLink
varchar(50)
会议说明文档地址
homeID
会议室编号
attendance
参加会议人数
beginTime
datetime
会议开始时间
endTime
会议结束时间
statusID
审核状态
applyTime
申请日期
表2-2会议申请状态表(meetingApplyStauts)
statusName
varchar(10)
状态名称(0:
预约中,1:
使用中)
表2-3与会人员表(attendWorkers)
meetingID
会议编号
与会员工编号
表2-4设备申请表(equipmentApply)
equipmentID
设备主键
表2-5登录表(login)
登录名
password
varchar(30)
密码
roleID
普通用户
用户角色(0:
普通用户;
1:
系统管理员)
表2-6用户角色表(role)
roleName
表2-7职员表(workers)
职工号
name
职工姓名
userGroup
用户组(普通用户/管理员)
telephone
char(11)
电话号码
sex
char
(2)
性别
birthday
date
生日
departmentID
所属部门
positionID
职位编号
邮箱
表2-8职位表(position)
positionName
职位名称
表2-9部门表(department)
departmentName
部门名称
表2-10会议室表(homes)
homeNo
房间号(名称)
address
所在地点
space
可容纳人数
hosterID
负责人ID
表2-11会议室日程表(schedule)
占用开始时间
占用结束时间
表2-12设备表(equipments)
设备编号
equipmentName
varchar50)
设备名称
belongTo
所属单位(仓库;
会议室名)
storeTime
入库时间
equipType
设备类型
表2-13设备类型(equipTypes)
typeName
设备类型名称
图2-11数据交互图
3系统设计
系统设计是在系统分析的基础上,设计出能满足预定目标的系统的过程。
系统设计内容主要包括:
确定设计方针和方法,将系统分解为若干子系统,确定各子系统的目标、功能及其相互关系,决定对子系统的管理体制和控制方式,对各子系统进行技术设计和评价,对全系统进行技术设计和评价等。
系统设计通常应用两种方法:
一种是归纳法,另一种是演绎法。
应用归纳法进行系统设计的程序是:
首先尽可能地收集现有的和过去的同类系统的系统设计资料;
在对这些系统的设计、制造和运行状况进行分析研究的基础上,根据所设计的系统的功能要求进行多次选择,然后对少数几个同类系统做出相应修正,最后得出一个理想的系统。
演绎法是一种公理化方法,即先从普遍的规则和原理出发,根据设计人员的知识和经验,从具有一定功能的元素集合中选择能符合系统功能要求的多种元素,然后将这些元素按照一定形式进行组合,从而创造出具有所需功能的新系统。
图3-1操作界面流程图
3.1管理员操作
管理员操作主要包括对预约会议的审批、查询会议、会议室管理、用户管理、设备管理。
首先,进入登录界面,输入正确的用户名、密码和验证码,如果输入的用户名和密码不匹配则弹出对话框提示输入错误,成功则进入会议管理系统,验证码错误显示相应的提示框,并且输入错误情况下不保存用户名和密码,必须重新输入。
登陆信息匹配成功就进入系统。
图3-2登陆流程图
3.1.1管理员登陆
用户登录必须要输入正确的用户名、密码和验证码,用户名、密码和验证码不能为空,验证码不区分大小写。
而且必须要点击正确的身份。
校验代码:
varreg=/^[\w]{6,12}$/;
if(!
reg.test(mypwd)){
alert("
密码不正确!
"
);
returnfalse;
}
密码校验写在JS代码中,使用正则表达式进行验证。
^匹配开头,[\w]匹配字母,数字,{6,12}重复匹配前面的表达式6-12次,$匹配结束。
数据库匹配SQL语句:
select*fromtb_loginwhereworkerID=?
andpassword=?
androleID=?
将用户名和密码与数据库中的用户名和密码匹配,成功则返回1,否则返回0。
验证码相关代码
验证码的生成使用java库中提供的绘图方法,将0~9和26个字母随机排列,再产生随机的颜色生成5个随意颜色的字母数字,再配合随机生成的干扰点线生成验证码图片。
//产生随机的字母数字
publicstaticfinalchar[]CHARS={'
1'
'
2'
3'
4'
5'
6'
7'
'
8'
9'
0'
A'
B'
C'
D'
E'
F'
G'
H'
I'
J'
K'
L'
M'
N'
O'
P'
Q'
R'
S'
T'
U'
V'
W'
X'
Y'
Z'
};
publicstaticRandomrandom=newRandom();
publicstaticStringgetRandomString(){
StringBufferbuffer=newStringBuffer();
for(inti=0;
i<
5;
i++){
buffer.append(CHARS[random.nextInt(CHARS.length)]);
}
returnbuffer.toString();
}
publicstaticColorgetRandomColor(){
returnnewColor(random.nextInt(255),random.nextInt(255),random.nextInt(255));
publicstaticColorgetReverseColor(Colorc){
returnnewColor(255-c.getRed(),255-c.getGreen(),255-c.getBlue());
//生成验证码
BufferedImagebi=newBufferedImage(100,30,1);
Graphics2Dg=bi.createGraphics();
g.setFont(newFont("
SansSerif"
1,22));
g.setColor(newColor(244,244,244));
g.fillRect(0,0,100,35);
g.setColor(reverse);
g.drawString(radomString,15,22);
inti=0;
for(intn=random.nextInt(100);
n;
g.drawRect(random.nextInt(100),random.nextInt(30),1,1);
ServletOutputStreamout=response.getOutputStream();
JPEGImageEncoderencoder=JPEGCodec.createJPEGEncoder(out);
使用随机颜色的5位数字字母组合作为验证码。
再添加一些干扰图像生成图像作为验证码图片。
在内存中创建图像,将信息写入图像,通过session传输验证码图片到前端,在登录或注册时通过servlet进行匹配。
3.1.2管理员基本操作
管理员通过系统对用户的预约请求进行审核,审核通过则会议可以正常的进行,用户可以通过查询会议得知是否通过会议。
图3-3审批预约流程图
管理员可以通过系统对当前系统中的会议室进行管理,具体功能有添加会议室、删除会议室、修改会议室信息。
图3-4会议室管理流程图
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件 企业 技术 实习 报告
![提示](https://static.bdocx.com/images/bang_tan.gif)