好文档 - 专业文书写作范文服务资料分享网站

基于jsp的毕业论文选题系统的设计与实现大学论文

天下 分享 时间: 加入收藏 我要投稿 点赞

目录

1 绪 论...................................................................... 1 1.1 选题的目的及意义 ....................................................... 1 1.2 系统开发的关键技术 ..................................................... 1 1.3 本课题研究的主要内容以及展望 ........................................... 1 2 系统开发技术 ............................................................... 3 2.1语言可行性的分析 ....................................................... 3 2.1.1 SERVLET技术简介 ................................................... 3 2.1.2 JSP及其特点 ....................................................... 4 2.2 框架的可行性 ........................................................... 4 2.2.1 MVC(Model View Controller)分层结构 ................................. 4 2.2.2 基于MVC结构 web系统设计 .......................................... 5 2.3 系统开发所用工具 ....................................................... 6 2.3.1 Apache Tomcat ...................................................... 6 2.3.2 MySQL数据库 ....................................................... 6 2.4 系统运行环境 ........................................................... 7 2.4.1 硬件环境 ........................................................... 7 2.4.2 软件环境 ........................................................... 7 3 需求分析................................................................... 8 3.1 需求说明 ............................................................... 8 3.2 功能定义 .............................................................. 10 3.2.1 功能结构图 ........................................................ 10 3.2.2 系统模块介绍 ...................................................... 10 3.3系统的总体结构 ........................................................ 11 3.4 业务流程分析 .......................................................... 12 3.4.1 学生志愿课题管理 .................................................. 12 3.4.2 教师课题管理 ...................................................... 13 3.4.3 用户基本信息管理 .................................................. 13 3.4.4 自动生成终表 ...................................................... 14 3.4.5 手动生成终表 ...................................................... 14 4 数据库设计 ................................................................ 16 4.1 数据库概念结构设计 .................................................... 16 4.1.1 实体E-R图 ........................................................ 16 4.1.2 实体联系E-R图 .................................................... 18 4.1.3 E-R图向关系模型的转换 ............................................ 19 4.1.4 关系模式设计 ...................................................... 19 4.1.5 数据表结构 ........................................................ 20 5 系统实现详细设计与实现 .................................................... 25

5.1 系统登陆界面的设计与实现 .............................................. 25 5.2 主控制平台的设计与实现 ................................................ 25 5.3 用户操作总体设计 ..................................................... 26 5.3.1 用户登录设计 ...................................................... 26 5.3.2 教师管理模块设计 .................................................. 29 5.4 技术难点 .............................................................. 31 5.4.1 中文乱码 .......................................................... 31 5.4.2 HQL 语言 .......................................................... 31 6 测 试.................................................................... 32 6.1 常用的测试方法 ........................................................ 32 6.2 系统测试 .............................................................. 33 6.3 系统的安全性分析 ...................................................... 34 6.4 系统的实用性分析 ...................................................... 34 总结 ....................................................................... 35 参考文献.................................................................... 36 致 谢 ..................................................................... 37

1 绪 论

1.1 选题的目的及意义

随着网络和信息技术的发展,20世纪80年代人们提出了“办公自动化”的概念,经过20多年两代的发展,办公自动化系统发生了根本的变化,它主要采用客户/服务器的二层结构、浏览器/服务器/数据库的三层结构,以网络技术和协同工作技术为主要特征,实现工作流程自动化和非结构化数据库的功能,实现了收发文件从传统的手工方式向工作流程自动化方式飞跃,可以方便的实现非结构化文档的处理。

学校处在信息接受的前沿,实现教学办公自动化是必然趋势,毕业生的“毕业设计选题管理系统”就是办公自动化的一项主要内容。“毕业设计选题管理系统”利用了方便的网络通信技术,使得管理员管理教师课题和学生的志愿工作变得非常方便。该系统采用JSP(Java Server Pages)开发技术,基于B/S模式的工作方式使得数据的维护也显得非常方便

1.2 系统开发的关键技术

本系统采用了基于MVC模式的Struts框架与Hibernate框架进行开发。开发的关键技术:

⑴ JSP技术的应用。 ⑵ Struts框架的使用。 ⑶ Hibernate框架的使用。

1.3 本课题研究的主要内容以及展望

“毕业设计选题管理系统“是基于浏览器/服务器架构的软件管理系统,它的开发技术是目前比较流行的基于windows 平台的JSP结合JAVASCRIPT技术,数据库采用了SUN 公司开发的MYSQL数据库,MYSQL是高性能的数据库管理系统,在可靠性、易用性、可伸缩性、业务职能功能等方面都具有非常优秀的表现,它具有支持多用户同时访问,自适应内存调节特性等优点,有良好的可扩展性和可维护性,更容易控制。

“毕业设计选题管理系统 ”分为“前台”和“后台“两部分,前台是实现学生和教师浏览网站的功能,学生用户通过网上浏览教师的课题选择自己喜欢的课题,然后提交到后台数据库保存选题信息,待由管理员处理信息,而教师则可以通过网上浏览申请课题,然后提交到后台数据库,待由管理员处理信息,学生和教师只能浏览数据库信息,不能修改,数据库的相关信息处理由管理员完成。管理员处理教师课题和学生志愿要完成的操作有:对学生志愿的添加、删除、修

1

改,能够查看有哪些学生选择了志愿,哪些学生还没有选择志愿。对教师课题管理要完成的操作有:对教师课题的添加、删除、修改,并要对教师申请的课题进行审查、批准。另外,管理员还要完成学生课题的排列:分为两种方式:自动生成终表和手动生成终表,按志愿优先级进行排列。发布公告,查看公告。

2

2 系统开发技术

2.1语言可行性的分析

2.1.1 SERVLET技术简介

Servlet是Java技术对CGI(Common Gateway Interface)编程的回答。Servlet程序在服务器端运行,动态地生成Web页面。同时它也作为一个中间层,负责连接来自Web浏览器或其他HTTP客户程序的请求和HTTP服务器上的数据库或应用程序。与传统的CGI和许多其他类似CGI的技术相比,Java Servlet具有更高的效率,更容易使用,功能更强大,具有更好的可移植性,更节省投资,更高效。Servlet被调用的流程如图2.1所示。

图2.1 Servlet被调用的流程

图2.1说明:

(1) 客户端(通常为Web浏览器)向Web服务器发送一个基于HTTP协议的请求。

(2) Web服务器接收到该请求,并将请求交给Servlet容器处理。 (3) Servlet容器根据Servlet的配置来查找或创建Servlet的实例,并执行该Servlet,Servlet容器必须把客户端请求和响应封装成Servlet规范中规定的请求和响应对象传给Servlet。

(4) Servlet可以使用请求对象获取客户端的信息,比如IP地址、请求的参数等,以及执行特定的业务逻辑。Servlet可以使用响应对象向客户端发送业务数据及业务执行的结果。

3

(5)Servlet处理完该请求后,Servlet容器要保证Servlet的响应内容能够

【3】

发送到客户端去(flush),最后返回到Web服务器。

2.1.2 JSP及其特点

JSP及其特点[2]:JavaServer Pages(JSP)是一种实现普通静态HTML和动态HTML混合编码的技术。JSP和ASP相比具有两方面的优点。首先,动态部分用Java编写,而不是VB Script或其他Microsoft语言,不仅功能更强大而且更易于使用。第二,JSP应用可以移植到其他操作系统和非Microsoft的Web服务器上。JSP和纯Servlet相比JSP并没有增加任何本质上不能用Servlet实现的功能。但是,在JSP中编写静态HTML更加方便,不必再用println语句来输出每一行HTML代码。更重要的是,借助内容和外观的分离,页面制作中不同性质的任务可以方便地分开:比如,由页面设计专家进行HTML设计,同时留出供Servlet程序员插入动态内容的空间[4]。

2.2 框架的可行性

2.2.1 MVC(Model View Controller)分层结构

MVC即模型-视图-控制器模式是一种“分治”的思想。模型,即相关的数据,它是对象的内在属性;视图是模型的外在表现形式,一个模型可以对应一个或者多个视图,视图还具有与外界交互的功能;控制器是模型与视图的联系纽带,控制器提取通过视图传输进来的外部信息转化成相应事件,然后由对应的控制器对模型进行更新;相应的,模型的更新与修改将通过控制器通知视图,保持视图与模型的一致性。图2-2揭示了这三者之间的关系:

图2-2 MVC模型图

4

2.2.2 基于MVC结构 web系统设计

MVC是包含模型、视力、控制器的分层结构,其系统设计也分别从这三个方面入手,

图2-3为基于MVCWEB系统的图形化描述。

图2-3 MVC模型

⑴ 控制器的设计

控制器是模型和视图联系的纽带,同时也是系统的控制中心。根据控制器在系统中的不同作用,将控制器抽象成四种控制器类型,即主控制器(MainController)、请求映射控制器(RequestMappingConntroller)、视图选择控制器(ViewController)和模型控制器(ModelController)。其中,主控制器在系统服务器最前端,用于从xml配置文件中获取HTTP请求映射表,接收客户的HTTP请求并且将该请求传送给请求映射控制器和视图选择控制器;请求映射控制器将传送来的HTTP请求映射到相应的处理器(处理器采用JavaBean形式)进行处理,其映射表直接从Servlet Context的变量中获取(因为该映射表已经由主控制器装入),处理完后返回结果;视图控制器根据HTTP请求映射表及处理器处理后的结果进行下一个视图的选择;模型控制器负责客户会话数据的处理:每一个客户对应一个会话模型,用来描述客户的各种状态等。

⑵ 视图层设计

视图层即用户界面,在WEB系统中表现为用户可见的网页,对于每一个使用HTTP请求响应模型WEB应用,View组件基本上总是和响应相关联的组件,并将结果返回给用户,视图层应该尽量减少业务逻辑或复杂的分析。

5

⑶ 模型层设计

模型层通常表现为业务对象或者物理后端系统。模型层通常都是业务相关

【15】

的,对于数据库的相关操作,及复杂的业务逻辑分析都应该在模型层实现。

2.3 系统开发所用工具

2.3.1 Apache Tomcat

Tomcat服务器是一个免费的开放源代码的Web应用服务器,它是Apache软件基金会(Apache Software Foundation)的Jakarta项目中的一个核心项目,由Apache、Sun和其他一些公司及个人共同开发而成。由于有了Sun的参与和支持,最新的Servlet和JSP规范总是能在Tomcat中得到体现,Tomcat5支持最新的Servlet 2.4和JSP 2.0规范。因为Tomcat技术先进、性能稳定,而且免费,因而深受Java爱好者的喜爱并得到了部分软件开发商的认可,成为目前比较流行的Web应用服务器。

2.3.2 MySQL数据库

MySQL数据库技术:MySQL是一个快速的多线程、多用户和健壮的SQL数据库服务器。MySQL服务器支持关键任务。重负载生产系统的使用,也可以将它嵌入到一个大配置(mass-deployed)的软件中去。

(1) MySQL是一个数据库管理系统。

一个数据库是一个结构化的数据集合。它可以是从一个简单的销售表到一个美术馆、或者一个社团网络的庞大的信息集合。如果要添加、访问和处理存储在一个计算机数据库中的数据,你就需要一个像MySQL这样的数据库管理系统。从计算机可以很好的处理大量的数据以来,数据库管理系统就在计算机处理中和独立应用程序或其他部分应用程序一样扮演着一个重要的角色。

(2) MySQL是一个关系数据库管理系统。

关系数据库把数据存放在分立的表格中,这比把所有数据存放在一个大仓库中要好得多,这样做将增加你的速度和灵活性。“MySQL”中的SQL代表“Structured Query Language”(结构化查询语言)。

(3) MySQL服务器是一个快的、可靠的和易于使用的数据库服务器。 如果这是你正在寻找的,你可以试一试。MySQL服务器还包含了一个由用户紧密合作开发的实用特性集。

(4) MySQL服务器工作在客户/服务器或嵌入系统中。

MySQL数据库服务器是一个客户/服务器系统,它由多线程SQL服务器组成,支持不同的后端。多个不同的客户程序和库。管理工具和广泛的应用程序接口(APIs)。

6

(5) MySQL也可以是一个嵌入的多线程库,你可以把它连接到你的应用中而得到一个小、快且易于管理的产品。

2.4 系统运行环境

2.4.1 硬件环境

后台数据库服务器:

因为服务器为数据库服务器,且要完成高密度的运算量,所以应采用较高档的服务器。考虑到与软件的兼容性,建议采用Intel Pentium 4多处理器系统、512MB RAM、80GB以上硬盘。

客户机:

采用Intel Pentium 4 多处理器系统、512MB RAM、80GB以上硬盘。 网络配置:10M/100M 网络带宽、100Mb/s网卡、16口交换机。

2.4.2 软件环境

操作系统的选择:

数据库服务器:因为服务器为数据库服务器,特别对稳定性有极高的要求,且支持多CPU。所以应采用Windows 2000 Server,因为它有优良的稳定性和操作性。

数据库的选择:

因大部分情况下软件都是在Windows系统下使用的,考虑MySQL的优势在于中国普遍使用的免费数据库软件并且与系统的兼容度较高,并支持集成性安全检测,且对系统的资源消耗较小。相比之下,Oracle数据库虽然性能较高,但由于其可操作性和方便性不如MySQL好,并且服务器没有使用磁盘阵列和多处理器,无法发挥Oracle数据库设计上的性能优势,并且对系统性能要求较高。至于Access之类的数据库,由于其性能较低,且并发度太低又不具安全性,故不予考虑。最终决定后台数据库用MySQL5.0。当然整个系统只能在Windows下运行。

7

3 需求分析

毕业生选题管理一直是学校为培养合格的毕业生所做的最重要的工作,学校为毕业提供合适的课题,毕业生通过对课题的设计,综合复习学习过的知识,将理论和实践结合起来,为以后的工作积累宝贵的经验。

传统的毕业设计的选题过程是:指导老师根据院(系)的要求,设计出一定数量的毕业课题并提交给教学管理人员审阅;教学管理人员审阅课题,检查出重复的课题,并根据学生的知识水平判断课题的难易是否适宜,提出修改意见,反馈给教师修改;毕业课题设计完成之后,由学院负责人将全部课题发给毕业生,班级负责人组织毕业生选题,然后交给教学管理人员,教学管理人员检查学生的选题情况,并最终确定选题结果。虽然是个合理的有序的过程,但在实际过程中,这种管理仍然存在着过程繁琐、工作效率低等问题。

随着计算机的普及、网络和信息化的迅速发展,计算机选课系统、计算机信息管理系统正在普及、然而针对毕业设计双向选题的系统设计却少见报道。开发一个基于WEB的毕业选题系统,在提高毕业设计选题的工作效率,节省人力、物理资源方面都有极大的优势。目前,在大多数高校院(系)都没有一套完整的选题系统,因此设计和开发这样的一个选题系统具有极大的现实意义。

针对上述情况,本文采用目前流行的B/S架构模式,设计了一套基于JSP+MYSQL的毕业设计选题系统。该系统增强了指导教师、学生和管理人员在毕业设计选题过程中的交互性,教师能够在线提交和更新待审题目,学生可以在线选题并且查看选题结果,管理人员可以在审阅待审题目并且调整学生选题

3.1 需求说明

(1) 管理员

录入或导入教师信息,管理员将毕业学生基本信息导入,管理员是所有用户中权限级别最高的用户,能够对教师、学生和个人信息、出题信息、选题信息进行修改。同时,还要负责通知发布、选题结果公布等。

(2) 教师

教师登录系统后,能够修改的数据有:密码、个人联系方式、包括Email和电话,其它信息不能私自修改。对于题目信息和要求,可以对题目信息和要求,可以通过管理员来修改。教师能后查看到选自己课题的学生人数和学生基本情况。

(3) 学生

学生登录系统后,只能修改密码、个人的联系方式、其它信息不能修改。每

8

个学生只能选一个题目或者一个课题项目的一个模块部分,选择之后在规定的时间内可以更改,规定时间以外不能更改,对于已选题目不能再次被选,除非其他学生在规定的时间内退选。

毕业生选题管理系统总体流程图,如图3.1所示。 教师 课题 添 加 教师课题删除 教师课题查询 教师信息修改 系统设置 学生管理 教师管理 发表公告 学生查看课题 学生课题退选 确定退选 按类型删除 按类型查询 查询全部 确定是否选上 按类型查询 查询全部 学生课题查询 学生信息修改 存在提示 教师管理系统 管理员管理系统 学生管理系统 验证 通过验证 开始 用户登录 未通过验证 看审 核状 态 查 确定删除 生成终表 确定是否退出 否 是 退出

图3.1 毕业生选题管理系统总体流程图

9

3.2 功能定义

用列表的方式,逐项定量和定性地叙述对系统所提出的功能要求,说明输入什么量、经怎样的处理、得到什么输出,说明系统的容量,包括系统支持的终端数据和应支持的并行操作的用户数等指标。

对出题的要求:

(1)每位有资格教师可以出不少于指导名额、不多于8个论题; (2)在管理员确定的时间内出题; (3)不能与已有出题重复。 审查的程序:

(1)管理员将所有教师出题提交学院学术委员会进行审查;

(2)管理员将审查后的备选论题公布在学院网站上,备选论题与指导教师一一对应。

选题要求:

(1)每个学生只能选择一个题目;

(2)对于同一课题只能一个学生选择(多人合作完成除外);

3.2.1 功能结构图

根据用户和系统需求,本系统划分为三个子系统,即管理员子系统、教师子系统、学生子系统。 毕业生选题管理系统 学生子系统 管理员子系统 教师子系统 3.2 系统功能结构图

3.2.2 系统模块介绍

根据实际情况,系统分为三大模块,即三个子系统。下面详细介绍各系统的功能及要求。

(1) 管理员模块

网络的维护需要管理员对系统的必要的设置。并保证系统的正常运行。在不系统中,系统规定了管理员的权限与功能,管理员有权对数据库进行维护。管理员功能系统包括添加功能、修改功能以及统计功能。添加功能能够添加其他管理员、教师或者学生;修改功能能够修改教师、学生资料,能够根据专业设置情况

10

添加课题类别,修改/添加课题的相关信息;统计功能主要是在选题过程结束后,由管理员对结果进行统计,便于院(系)及时掌握学生选题情况。

(2) 教师模块

课题信息发布,教师可以录入每个选题信息,但是需要管理员审核后才能供学生选择;个人资料的修改与添加,教师资料的修改与添加可由管理员或者教师自己来完成;查看选课学生资料,教师可以查看选择自己课题的学生的资料,决定是否指导该学生的毕业设计。

(3) 学生模块

学生登录系统需要自己的学号,登录后学生可以进行的操作:仅能修改个人的联系方式;浏览供选择的课题信息,选择课题;在规定时间内的选择和更改课题;在规定的时间内查询选题结果。

3.3系统的总体结构

根据毕业设计选题的业务情况,系统共分成管理员,教师,学生三大系统模块,系统功能设置 ,管理员用户操作,教师信息修改,选题题目提交,选题题目审核,学生信息导入,学生信息修改,题目选报,信息浏览功能。

功能如图所示: 修 改 学 生 志 愿 学 生 志 愿 管 理 教 师 课 题 管 理 用 户 信 息 管 理 自 动 生 成 终 表 手 动 生 成 终 表 文 件 管 理 管理员登录 系统登录的主界面 删除学生志愿 删除学生课题 修改教师课题 删除教师课题 增加教师课题 申请课题管理 添加用户 删除用户 修改用户 生成终表 发表公告

图3.3 系统总体结构图

11

3.4 业务流程分析

管理员录入教师及学生初始信息 管理员开启提交选题功能 教师登录提交选题 管理员关闭提交选题功能 管理员添加审核管理员 管理员开启题目审核功能 审核管理员审核题目 管理员关闭题目审核功能 管理员开启学生预览功能 学生登录预览题目 管理员关闭学生预览功能 管理员开启学生选报功能 学生登录选报题目 管理员关闭学生选报功能

管理员调剂选报情况 管理员打印输出最终报表

图3.4 业务流程示意图

3.4.1 学生志愿课题管理

在这一块里,可以分为修改学生志愿、删除学生志愿、删除学生课题和查看未选志愿学生四大部分,它的处理流程可以用以下图表(图3.5)方式描述:

管理人员 登 录 登陆错误被弹控制界面 修改学生志愿 删除学生志愿 删除学生课题 查看未选志愿学生 学生志愿存储 学生课题存储 学生基本信息存 图 3.5 管理员对学生志愿操作流程

管理人员首先查看要更新的数据,进行修改后,保存进数据库。

12

3.4.2 教师课题管理

管理员对教师课题管理分为:修改教师课题、添加教师课题、删除教师课题和教师申请课题管理四部分,同时对数据库中的信息进行最后的处理,拿出最终的毕业设计课题小组分组情况,处理流程如下图(图3.6):

管理员 登陆 非法用户被禁止 主控制界面 教师申请课题 修改教师课添加教师课删除教师课题 批准教师申请课题 教师课题存储

图3.6 教师课题管理部分流程

3.4.3 用户基本信息管理

用户基本信息管理包括了对用户信息的添加、删除、修改等基本操作,添加用户后,该用户可以凭借自己的帐号登陆管理系统;删除用户信息后,该用户登陆信息被删除,不能进行登陆;需要注意的是,在修改用户信息时,不要轻易改动用户登陆信息,否则会造成用户无法登陆。其数据处理流程如下图(图3.7)所示:

13

基于jsp的毕业论文选题系统的设计与实现大学论文

目录1绪论......................................................................11.1选题的目的及意义.......................................................11.2系统开发的关键技术...............
推荐度:
点击下载文档文档为doc格式
156gf6ip7x99g5n13tny9pg7z7hdvh00tdh
领取福利

微信扫码领取福利

微信扫码分享