课计报告.docx
《课计报告.docx》由会员分享,可在线阅读,更多相关《课计报告.docx(21页珍藏版)》请在冰豆网上搜索。
![课计报告.docx](https://file1.bdocx.com/fileroot1/2023-3/18/e4c0d048-8ef2-47d2-8293-6a8a6996f98a/e4c0d048-8ef2-47d2-8293-6a8a6996f98a1.gif)
课计报告
燕山大学
专业综合课程设计报告
学院里仁学院
年级专业09计算机科学与技术8班
学生姓名余亚锋
学号091304011258
指导教师张世辉
设计日期2012年9月24日—
2012年10月19日
摘要
网络信息管理系统作为无纸化办公的一种形式正以其高效、低成本的优势,逐步成为新兴的管理模式和理念,人们已经不再满足于传统的办公模式,而是渴望能够充分享受网络所带来的办公便利。
网络信息管理系统正适应了当今社会快节奏的生活,使用户可以方便、轻松、及时的在有网络的地方进行办公。
本系统采用SSH框架结合JSP技术在网络上架构一个动态的高速公路星级考核信息管理网站,它是在WindowsXP下,以Oracle为数据库开发平台,以Tomcat为应用服务器,依托目前流行的Spring+Struts+Hibernate框架和JavaWeb技术开发的网上信息管理系统。
建成后的沿海高速公路星级考核系统是一个动态的、交互式的,具有查看、评分、申报、审批、权限设置诸多等功能的网上无纸化办公的信息管理平台。
关键词SSH;JSP;Oracle;Tomcat;信息管理系统
目录
摘要I
第1章专业综合课程设计概述1
1.1专业综合课程设计的目的和意义1
1.2专业综合课程设计内容安排1
1.3本报告主要内容1
第2章技术综述2
2.1SSH、JSP、DWR简介2
2.2SSH技术的优势3
2.3JSP技术的优势3
2.4Oracle数据库简介4
2.5Oracle数据库特点4
2.6本章小结4
第3章沿海高速星级考核系统分析5
3.1需求分析5
3.2可行性分析5
3.3本章小结5
第4章沿海高速星级考核统设计6
4.1总体设计6
4.2系统功能结构设计6
4.3设计目标6
4.4数据库设计7
4.5本章小结11
第5章沿海高速星级考核系统实现12
5.1编写在Oracle中创建数据库及数据表12
5.2在集成开发环境MyEclipse中搭建SSH框架13
5.3核心代码实现15
5.4系统模块实现与测试结果17
5.5本章小结21
专业综合课程设计总结22
参考文献23
第1章专业综合课程设计概述
1.1专业综合课程设计的目的和意义
程序设计是公认的、最能直接有效地训练学生的创新思维,培养分析问题、解决问题能力的学科之一。
即使一个简单的程序,从任务分析、确定算法、界面布局、编写代码到调试运行,整个过程学生都需要有条理地构思,这中间有猜测设想、判断推理的抽象思维训练,也有分析问题、解决问题、预测目标等能力的培养。
专业课程设计就是讲理论与实际相结合,通过学生自己动手操作,将课堂上学到的知识通过自己的亲手实践得到验证。
通过专业课程设计,学生将会深刻理解到现实软件开发与理论知识联系的紧密性,做到学有所思,学习和思考相结合。
能够深切的体会到团队合作的重要性,还能够促使学生了解和掌握计算机行业的基础知识、前沿技术和广阔的发展前景。
为今后进一步学习和工作做好了铺垫工作。
1.2专业综合课程设计内容安排
开发系统为大中型信息管理系统,以目前较为流行的SSH框架为依托,java程序语言为基础,结合使用甲骨文公司的Oracle数据库技术,利用MVC分层技术构建出C/S模式的界面,实现沿海高速管理人员登陆、录入信息、上报、审批、查询等相关的业务。
1.3本报告主要内容
本文依据沿海高速现实中的办公需求,通过对办公环境、条件和办公流程的实际考察,进行分析整理。
对于系统开发,会从系统详细设计、数据库构建、界面设计、编码、测试等方面详细介绍。
第2章技术综述
2.1SSH、JSP、DWR简介
SSH为Struts+Spring+Hibernate的一个集成框架,是目前较流行的一种Web应用程序开源框架。
集成SSH框架的系统从职责上分为四层:
表示层、业务逻辑层、数据持久层和域模块层,以帮助开发人员在短期内搭建结构清晰、可复用性好、维护方便的Web应用程序。
其中使用Struts作为系统的整体基础架构,负责MVC的分离,在Struts框架的模型部分,利用Hibernate框架对持久层提供支持,业务层用Spring支持。
具体做法是:
用面向对象的分析方法根据需求提出一些模型,将这些模型实现为基本的Java对象,然后编写基本的DAO接口,并给出Hibernate的DAO实现,采用Hibernate架构实现的DAO类来实现Java类与数据库之间的转换和访问,最后由Spring完成业务逻辑。
系统的基本业务流程是:
在表示层中,首先通过JSP页面实现交互界面,负责传送请求(Request)和接收响应(Response),然后Struts根据配置文件(struts-config.xml)将ActionServlet接收到的Request委派给相应的Action处理。
在业务层中,管理服务组件的SpringIoC容器负责向Action提供业务模型(Model)组件和该组件的协作对象数据处理(DAO)组件完成业务逻辑,并提供事务处理、缓冲池等容器组件以提升系统性能和保证数据的完整性。
而在持久层中,则依赖于Hibernate的对象化映射和数据库交互,处理DAO组件请求的数据,并返回处理结果。
采用上述开发模型,不仅实现了视图、控制器与模型的彻底分离,而且还实现了业务逻辑层与持久层的分离。
这样无论前端如何变化,模型层只需很少的改动,并且数据库的变化也不会对前端有所影响,大大提高了系统的可复用性。
而且由于不同层之间耦合度小,有利于团队成员并行工作,大大提高了开发效率。
JSP(JavaServerPages)是由SunMicrosystems公司倡导、许多公司参与一起建立的一种动态网页技术标准。
JSP技术有点类似ASP技术,它是在传统的网页HTML文件中插入Java程序段(Scriptlet)和JSP标记(tag),从而形成JSP文件。
用JSP开发的Web应用是跨平台的,既能在Linux下运行,也能在其他操作系统上运行。
JSP页面由HTML代码和嵌入其中的Java代码所组成。
服务器在页面被客户端请求以后对这些Java代码进行处理,然后将生成的HTML页面返回给客户端的浏览器。
JavaServlet是JSP的技术基础,而且大型的Web应用程序的开发需要JavaServlet和JSP配合才能完成。
JSP具备了Java技术的简单易用,完全的面向对象,具有平台无关性且安全可靠,主要面向因特网的所有特点。
DWR(DirectWebRemoting)是一个开源的类库,可以帮助开发人员开发包含AJAX技术的网站.它可以允许在浏览器里的代码使用运行在WEB服务器上的JAVA函数,就像它就在浏览器里一样.它包含两个主要的部分:
允许JavaScript从WEB服务器上一个遵循了AJAX原则的Servlet中获取数据.另外一方面一个JavaScript库可以帮助网站开发人员轻松地利用获取的数据来动态改变网页的内容.
DWR采取了一个类似AJAX的新方法来动态生成基于JAVA类的JavaScript代码.这样WEB开发人员就可以在JavaScript里使用Java代码就像它们是浏览器的本地代码(客户端代码)一样;但是Java代码运行在WEB服务器端而且可以自由访问WEB服务器的资源.出于安全的理由,WEB开发者必须适当地配置哪些Java类可以安全的被外部使用.
2.2SSH技术的优势
(1)Struts对Model,View和Controller都提供了对应的组件。
(2)Spring是一个轻量级的控制反转(IoC)和面向切面(AOP)的容器框架。
(3)Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库。
2.3JSP技术的优势
(1)一次编写,到处运行。
(2)系统的多平台支持。
(3)强大的可伸缩性。
(4)多样化和功能强大的开发工具支持。
2.4Oracle数据库简介
ORACLE数据库系统是美国ORACLE公司(甲骨文)提供的以分布式数据库为核心的一组软件产品,是目前最流行的客户/服务器(CLIENT/SERVER)或B/S体系结构的数据库之一。
比如SilverStream就是基于数据库的一种中间件。
ORACLE数据库是目前世界上使用最为广泛的数据库管理系统,作为一个通用的数据库系统,它具有完整的数据管理功能;作为一个关系数据库,它是一个完备关系的产品;作为分布式数据库它实现了分布式处理功能。
但它的所有知识,只要在一种机型上学习了ORACLE知识,便能在各种类型的机器上使用它。
2.5Oracle数据库特点
1、完整的数据管理功能:
1)数据的大量性2)数据的保存的持久性3)数据的共享性4)数据的可靠性
2、完备关系的产品:
1)信息准则---关系型DBMS的所有信息都应在逻辑上用一种方法,即表中的值显式地表示;2)保证访问的准则3)视图更新准则---只要形成视图的表中的数据变化了,相应的视图中的数据同时变化4)数据物理性和逻辑性独立准则
3、分布式处理功能:
1)ORACLE数据库自第5版起就提供了分布式处理能力,到第7版就有比较完善的分布式数据库功能了。
4、用ORACLE能轻松的实现数据仓库的操作。
2.6本章小结
本章概要介绍了SSH框架、JSP技术、Dwr、Oracle数据库技术的基本知识,以及它们各自的技术优势,应用SSH框架、JSP技术开发Web项目将成为主流。
第3章沿海高速星级考核系统分析
3.1需求分析
通过对一些典型办公管理系统的考察、分析及实际的现场调查,要求本系统具有以下功能:
统一友好的操作界面,能保证系统的易用性;规范、完善的基础信息设置;有严格的权限设置,保密性高;能够实行用户注册、星级高速公路考核标准查看、组长给高速公路管理员工评分、站长向上级上报季度星级员工和年度星级标兵、处长审核季度星级员工和年度星级标兵、超级管理员权限设置等功能。
3.2可行性分析
办公人员在实际的工作过程中会受到时间、地点、办公条件等诸多客观因素的影响,使得办公进度受到约束,对人员的考核管理不能及时有效的进行,进而影响员工的绩效考核结果。
在网络迅速普及的快节奏生活之下,如果能够运用网络化的办公管理系统,只要能够连接到Internate就能够实现无纸化办公,方便、实时、快捷,并且能够做到公平、公开、透明化办公。
3.3本章小结
本章主要对沿海高速星级考核进行系统分析,分别进行了需求分析和可行性分析。
通过对项目进行全面的分析,有利于项目的顺利进行。
根据软件工程的理论,需求分析和可行性分析是必须予以高度重视的,它们在开发周期中占的比重越高,项目开发的成功率也就越高。
因此,在所有技术工作开始之前,一定要成功地进行需求分析和可行性分析,只有这样,才能保证整个项目的顺利进行。
第4章沿海高速星级考核统设计
4.1总体设计
沿海高速星级考核系统是一个典型的SSH+JSP+Tomcat+Oracle数据库开发应用程序,由考核标准查看、组长评分、站长申请、处长审批、权限设置等五大模块组成。
各个模块之间根据不同的用户权限可以进行访问。
然后在不同的界面处理不同的业务,实现无纸化办公。
4.2系统功能结构设计
(1)考核标准查看,可以查看高速公路各类员工的考核标准。
(2)组长给高速公路管理员工评分,由每一组的组长给该组的员工根据平时表现进行评分。
(3)站长向上级上报季度星级员工和年度星级标兵,由站长上上级申报五星级员工和星级标兵。
(4)处长审核季度星级员工和年度星级标兵,处长对上报的五星级员工和星级标兵的资质进行审核。
(5)超级管理员权限设置等功能,可以对各类人员进行权限和角色的设置以及修改、查看。
4.3设计目标
对于典型的数据库管理系统,尤其是对像信息管理系统这样的数据流量特别大的网络管理系统,必须要满足使用方便、操作灵活等设计需求。
本系统在设计时应该满足以下几个要求:
采用人机对话的操作方式,界面设计美观友好,信息查询灵活、方便、快捷、准确,数据存储安全可靠;全面展示办公内容的详细操作、操作人、操作时间,以及更详细的信息查询功能,可采用模糊查询方式查询数据;会用户可以随时修改自己的用户资料;用户随时都可以查看自己办公操作的结果;对用户输入的数据,系统进行严格的数据检验,尽可能排除人为的错误;系统要易维护和易操作;系统运行稳定、安全可靠。
4.4数据库设计
本系统采用甲骨文公司的Oracle数据库,数据库共包含21张表,分别为权限处理、评分、审核三大类。
现在对其中关键的几张表给出展示:
(1)用户信息表。
用于存放用户的身份信息,其结构如表4-1所示。
表4-1用户信息表UserInfo
字段名
数据类型
长度
是否主键
描述
User_id
varchar
32
是
用户ID
Zhan_id
varchar
32
站ID
User_name
varchar
20
用户名
sex
Int
性别
age
Int
年龄
address
varchar
32
地址
password
varchar
32
用户密码
Is_firstlog
Int
是否第一次登陆
zu
Int
组
Is_new
Int
是否新员工
(2)权限信息表。
用于存放用户的权限信息,其结构如表4-2所示。
表4-2权限信息表Authority
字段名
数据类型
长度
是否主键
描述
authority_Id
varchar
32
是
权限表ID
pageurl
varchar
100
页面路径
leave
Integer
级别
menu_id
Integer
主菜单ID
parent_menu
Integer
父级菜单
aut_isdelete
Integer
权限是否被删除
(3)角色信息表。
用于存放用户的角色信息,其结构如表4-3所示。
表4-3角色信息表roal
字段名
数据类型
长度
是否主键
描述
Roal_id
varchar
32
是
角色表ID
Roal_name
varchar
32
角色名称
Roal_isdelete
Integer
是否被删除
menus
varchar
100
所拥有的主菜单
(4)成绩信息表。
用于存放员工考核的成绩信息,其结构如表4-4所示。
表4-4成绩信息表chengji
字段名
数据类型
长度
是否主键
描述
Chengji_id
varchar
32
是
成绩表ID
Kaohe_type
Integer
考核类型
Kaohe_score
Integer
考核分数
month
varchar
32
月
year
varchar
32
年
(5)考核记录信息表。
用于存放员工考核的考核记录信息,其结构如表4-5所示。
表4-5考核记录信息表pingfen_record
字段名
数据类型
长度
是否主键
描述
Pingfen_id
varchar
32
是
评分表ID
User_id
varchar
32
用户ID
P_date
varchar
32
评分日期
year
varchar
32
年
Jidu
varchar
32
季度
(6)版本息表。
用于存放考核标准版本信息,其结构如表4-6所示。
表4-6版本信息表banben
字段名
数据类型
长度
是否主键
描述
Banben_id
varchar
32
是
版本表ID
Banben_name
varchar
50
版本名称
Banben_date
varchar
32
版本日期
Banben_idNow
Integer
是否现在使用的
(7)考核规则信息表。
用于存放员工考核的规则信息,其结构如表4-7所示。
表4-7考核规则信息表guize
字段名
数据类型
长度
是否主键
描述
Guize_id
varchar
32
是
规则表ID
Kaohe_id
varchar
32
考核表ID
Guize_name
varchar
32
规则名程
score
Integer
分数
(8)申报信息表。
用于存放被申报星级员工的订单信息,其结构如表4-8所示。
表4-8申报信息表applytable
字段名
数据类型
长度
是否主键
描述
Applytable_id
varchar
32
是
申请订单ID
Dingdan_num
varchar
32
订单号
Apply_date
varchar
32
申请日期
Chuzhang_id
varchar
32
处长id
Zhanzhang_id
varchar
32
站长id
Dingdan_status
Integer
订单状态
(9)申报详细记录信息表。
用于存放被申报员工员工详细信息,其结构如表4-9所示。
表4-9申报详细记录信息表applyDetails
字段名
数据类型
长度
是否主键
描述
applyDetails_id
varchar
32
是
详细信息表ID
Dingdan_num
varchar
32
类别名称
User_id
varchar
32
用户ID
Approve_status
Integer
审核状态
Approva_type
Integer
审核类型
(10)审批信息表。
用于存放处长审批通过后的信息,其结构如表4-10所示。
表4-10审批信息表approvePassed
字段名
数据类型
长度
是否主键
描述
Apppassed_id
varchar
32
是
审核通过ID
User_id
varchar
32
用户ID
starGrade
varchar
32
星级等级
Appply_year
varchar
32
申请年
Apply_jidu
varchar
32
申请季度
passTime
varchar
32
通过时间
(11)考核记录信息表。
用于存放考核记录信息,其结构如表4-11所示。
表4-11考核记录信息表approveRecords
字段名
数据类型
长度
是否主键
描述
App_records_id
varchar
32
是
审批记录表ID
Dingdan_num
varchar
32
订单号
approveTimes
Integer
申请次数
Zhanzhang_com
varchar
100
站长备注
Chuzhang_com
varchar
100
处长备注
4.5本章小结
本章在前一章系统分析的基础上对沿海高速星级考核进行了系统设计,主要由评分、申报、审核、权限设置若干功能模块组成。
数据库设计是系统设计的主要内容,合理设计数据库是项目成功的关键。
沿海高速星级考核的数据库共有21张数据表,每张数据表的字段、数据类型和长度都设计的非常合理,完全能够满足数据的需要。
第5章沿海高速星级考核系统实现
5.1编写在Oracle中创建数据库及数据表
图5-1编写在oracle中创建数据库及数据表
5.2在集成开发环境MyEclipse中搭建SSH框架
图5-2-1在集成开发环境MyEclipse中搭建SSH框架
创建连接Oracle数据库的数据源。
图5-2-2创建连接Oracle数据库的数据源
在搭建好的SSH框架中搭建三层开发模式,然后利用Hibernate反向生成技术,自动生成JavaBean实体。
5.3核心代码实现
(1)Spring配置文件核心代码:
图5-3-1Spring配置文件核心代码
(2)Structs配置文件核心代码:
图5-3-2Structs配置文件核心代码
(3)Web配置文件核心代码:
图5-3-3SWeb配置文件核心代码
(4)登陆界面核心代码:
图5-3-4登陆界面核心代码
5.4系统模块实现与测试结果
(1)管理系统首页实现
该模块是用户登陆首页,根据不同的用户名和用户权限,登陆之后可以进入到不同的界面,还可以设置安全问题和答案,安全性较强。
图5-4-1管理系统首页
(2)管理系统主页实现
该模块是用户登陆之后展现的主页,在这里左侧为不同权限的菜单,右侧主页面为沿海高速星级管理考核平台主页展示页面。
图5-4-2管理系统主页
(3)考核标准查看
在这里用户可以查看不同类型员工的考核标准,以及各种评分标准、分数。
图5-4-3考核标准查看
(4)组长评分模块
这个模块为组长评分模块,以组长的身份登陆之后,可以对本站的员工进行三种类型的考核评分,评完分数之后会自动计算总成绩,并以百分之的形式展现出来。
图5-4-4组长评分
(5)站长申报模块
站长申报模块,站长先填写一张申请单,然后将需要申报的员工以订单的形式提交,进行申报星。
图5-4-5站长申报
(6)处长审核模块
这个处长审核模块,以处长的身份登陆之后,可以根据各种条件进行组合查询,查询需要审批的类型以及员工的相关信息,并且进行审核操作。
图5-4-6处长审核
(7)权限设置模块
在这个模块里,可以对整个系统的权限进行设置,超级管理员具有最高权限,然后可以设置新的角色、添加新的用户,并且可以对用户赋予权限,使用户拥有不同的权限来使用该管理系统。
图5-4-7权限设置
5.5本章小结
本章是技术层面上的具体工作,首先是编写JavaBean,利用JavaBean技术,可以实现组件的重用,良好规划设计的JavaBean是值得信赖的。
接着是各个功能模块都进行了详细的设计和实现,一些关键代码在文中直接给出。
运用Hibernate进行增、删、改、查,完成系统的各个操作功能。
最后还需要考虑代码的可维护性以及代码的健壮性,健壮的代码是保证系统实现的关键。
专业综合课程设计总结
通过本次专业综合课程设计设计沿海高速星级考核管理系统,给沿海高速星级考核带来的便利性和高效性是以往的任何办公形式都不能比拟和代替的;在各个模块测试环节和整体模块测试环节,我们团队队员之间相互合作,互相学习,不仅提高了我们的动手能力,还加深了对以往所学的相关理论知