毕业设计(论文)-基于JSP的毕业设计选题系统的设计与实现(29页).doc
《毕业设计(论文)-基于JSP的毕业设计选题系统的设计与实现(29页).doc》由会员分享,可在线阅读,更多相关《毕业设计(论文)-基于JSP的毕业设计选题系统的设计与实现(29页).doc(29页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、-毕业设计(论文)-基于JSP的毕业设计选题系统的设计与实现-第 26 页目录1 绪 论11.1 选题的目的及意义11.2 系统开发的关键技术11.3 本课题研究的主要内容以及展望12 系统开发技术32.1语言可行性的分析32.1.1 SERVLET技术简介32.1.2 JSP及其特点42.2 框架的可行性42.2.1 MVC(Model View Controller)分层结构42.2.2 基于MVC结构 web系统设计52.3 系统开发所用工具62.3.1 Apache Tomcat62.3.2 MySQL数据库62.4 系统运行环境72.4.1 硬件环境72.4.2 软件环境73 需求分
2、析83.1 需求说明83.2 功能定义103.2.1 功能结构图103.2.2 系统模块介绍103.3系统的总体结构113.4 业务流程分析123.4.1 学生志愿课题管理123.4.2 教师课题管理133.4.3 用户基本信息管理133.4.4 自动生成终表143.4.5 手动生成终表144 数据库设计164.1 数据库概念结构设计164.1.1 实体E-R图164.1.2 实体联系E-R图184.1.3 E-R图向关系模型的转换194.1.4 关系模式设计194.1.5 数据表结构205 系统实现详细设计与实现255.1 系统登陆界面的设计与实现255.2 主控制平台的设计与实现255.3
3、 用户操作总体设计265.3.1 用户登录设计265.3.2 教师管理模块设计295.4 技术难点315.4.1 中文乱码315.4.2 HQL 语言316 测 试326.1 常用的测试方法326.2 系统测试336.3 系统的安全性分析346.4 系统的实用性分析34总结35参考文献36致 谢371 绪 论1.1 选题的目的及意义随着网络和信息技术的发展,20世纪80年代人们提出了“办公自动化”的概念,经过20多年两代的发展,办公自动化系统发生了根本的变化,它主要采用客户/服务器的二层结构、浏览器/服务器/数据库的三层结构,以网络技术和协同工作技术为主要特征,实现工作流程自动化和非结构化数据
4、库的功能,实现了收发文件从传统的手工方式向工作流程自动化方式飞跃,可以方便的实现非结构化文档的处理。学校处在信息接受的前沿,实现教学办公自动化是必然趋势,毕业生的“毕业设计选题管理系统”就是办公自动化的一项主要内容。“毕业设计选题管理系统”利用了方便的网络通信技术,使得管理员管理教师课题和学生的志愿工作变得非常方便。该系统采用JSP(Java Server Pages)开发技术,基于B/S模式的工作方式使得数据的维护也显得非常方便1.2 系统开发的关键技术本系统采用了基于MVC模式的Struts框架与Hibernate框架进行开发。开发的关键技术: JSP技术的应用。 Struts框架的使用。
5、 Hibernate框架的使用。1.3 本课题研究的主要内容以及展望“毕业设计选题管理系统“是基于浏览器/服务器架构的软件管理系统,它的开发技术是目前比较流行的基于windows 平台的JSP结合JAVASCRIPT技术,数据库采用了SUN 公司开发的MYSQL数据库,MYSQL是高性能的数据库管理系统,在可靠性、易用性、可伸缩性、业务职能功能等方面都具有非常优秀的表现,它具有支持多用户同时访问,自适应内存调节特性等优点,有良好的可扩展性和可维护性,更容易控制。“毕业设计选题管理系统 ”分为“前台”和“后台“两部分,前台是实现学生和教师浏览网站的功能,学生用户通过网上浏览教师的课题选择自己喜欢
6、的课题,然后提交到后台数据库保存选题信息,待由管理员处理信息,而教师则可以通过网上浏览申请课题,然后提交到后台数据库,待由管理员处理信息,学生和教师只能浏览数据库信息,不能修改,数据库的相关信息处理由管理员完成。管理员处理教师课题和学生志愿要完成的操作有:对学生志愿的添加、删除、修改,能够查看有哪些学生选择了志愿,哪些学生还没有选择志愿。对教师课题管理要完成的操作有:对教师课题的添加、删除、修改,并要对教师申请的课题进行审查、批准。另外,管理员还要完成学生课题的排列:分为两种方式:自动生成终表和手动生成终表,按志愿优先级进行排列。发布公告,查看公告。2 系统开发技术2.1语言可行性的分析2.1
7、.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服务器发送一个基
8、于HTTP协议的请求。(2) Web服务器接收到该请求,并将请求交给Servlet容器处理。(3) Servlet容器根据Servlet的配置来查找或创建Servlet的实例,并执行该Servlet,Servlet容器必须把客户端请求和响应封装成Servlet规范中规定的请求和响应对象传给Servlet。(4) Servlet可以使用请求对象获取客户端的信息,比如IP地址、请求的参数等,以及执行特定的业务逻辑。Servlet可以使用响应对象向客户端发送业务数据及业务执行的结果。(5)Servlet处理完该请求后,Servlet容器要保证Servlet的响应内容能够发送到客户端去(flush),
9、最后返回到Web服务器。【3】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代码。更重要的是,借助内容
10、和外观的分离,页面制作中不同性质的任务可以方便地分开:比如,由页面设计专家进行HTML设计,同时留出供Servlet程序员插入动态内容的空间4。2.2 框架的可行性2.2.1 MVC(Model View Controller)分层结构MVC即模型视图控制器模式是一种“分治”的思想。模型,即相关的数据,它是对象的内在属性;视图是模型的外在表现形式,一个模型可以对应一个或者多个视图,视图还具有与外界交互的功能;控制器是模型与视图的联系纽带,控制器提取通过视图传输进来的外部信息转化成相应事件,然后由对应的控制器对模型进行更新;相应的,模型的更新与修改将通过控制器通知视图,保持视图与模型的一致性。图
11、2-2揭示了这三者之间的关系:图2-2 MVC模型图2.2.2 基于MVC结构 web系统设计MVC是包含模型、视力、控制器的分层结构,其系统设计也分别从这三个方面入手,图2-3为基于MVCWEB系统的图形化描述。图2-3 MVC模型 控制器的设计控制器是模型和视图联系的纽带,同时也是系统的控制中心。根据控制器在系统中的不同作用,将控制器抽象成四种控制器类型,即主控制器(MainController)、请求映射控制器(RequestMappingConntroller)、视图选择控制器(ViewController)和模型控制器(ModelController)。其中,主控制器在系统服务器最前
12、端,用于从xml配置文件中获取HTTP请求映射表,接收客户的HTTP请求并且将该请求传送给请求映射控制器和视图选择控制器;请求映射控制器将传送来的HTTP请求映射到相应的处理器(处理器采用JavaBean形式)进行处理,其映射表直接从Servlet Context的变量中获取(因为该映射表已经由主控制器装入),处理完后返回结果;视图控制器根据HTTP请求映射表及处理器处理后的结果进行下一个视图的选择;模型控制器负责客户会话数据的处理:每一个客户对应一个会话模型,用来描述客户的各种状态等。 视图层设计视图层即用户界面,在WEB系统中表现为用户可见的网页,对于每一个使用HTTP请求响应模型WEB应
13、用,View组件基本上总是和响应相关联的组件,并将结果返回给用户,视图层应该尽量减少业务逻辑或复杂的分析。 模型层设计模型层通常表现为业务对象或者物理后端系统。模型层通常都是业务相关的,对于数据库的相关操作,及复杂的业务逻辑分析都应该在模型层实现。【15】2.3 系统开发所用工具2.3.1 Apache TomcatTomcat服务器是一个免费的开放源代码的Web应用服务器,它是Apache软件基金会(ApacheSoftwareFoundation)的Jakarta项目中的一个核心项目,由Apache、Sun和其他一些公司及个人共同开发而成。由于有了Sun的参与和支持,最新的Servlet和
14、JSP规范总是能在Tomcat中得到体现,Tomcat5支持最新的Servlet2.4和JSP2.0规范。因为Tomcat技术先进、性能稳定,而且免费,因而深受Java爱好者的喜爱并得到了部分软件开发商的认可,成为目前比较流行的Web应用服务器。2.3.2 MySQL数据库MySQL数据库技术:MySQL是一个快速的多线程、多用户和健壮的SQL数据库服务器。MySQL服务器支持关键任务。重负载生产系统的使用,也可以将它嵌入到一个大配置(mass-deployed)的软件中去。(1) MySQL是一个数据库管理系统。一个数据库是一个结构化的数据集合。它可以是从一个简单的销售表到一个美术馆、或者一
15、个社团网络的庞大的信息集合。如果要添加、访问和处理存储在一个计算机数据库中的数据,你就需要一个像MySQL这样的数据库管理系统。从计算机可以很好的处理大量的数据以来,数据库管理系统就在计算机处理中和独立应用程序或其他部分应用程序一样扮演着一个重要的角色。(2) MySQL是一个关系数据库管理系统。关系数据库把数据存放在分立的表格中,这比把所有数据存放在一个大仓库中要好得多,这样做将增加你的速度和灵活性。“MySQL”中的SQL代表“Structured Query Language”(结构化查询语言)。(3) MySQL服务器是一个快的、可靠的和易于使用的数据库服务器。如果这是你正在寻找的,你
16、可以试一试。MySQL服务器还包含了一个由用户紧密合作开发的实用特性集。(4) MySQL服务器工作在客户/服务器或嵌入系统中。MySQL数据库服务器是一个客户/服务器系统,它由多线程SQL服务器组成,支持不同的后端。多个不同的客户程序和库。管理工具和广泛的应用程序接口(APIs)。(5) MySQL也可以是一个嵌入的多线程库,你可以把它连接到你的应用中而得到一个小、快且易于管理的产品。2.4 系统运行环境2.4.1 硬件环境后台数据库服务器:因为服务器为数据库服务器,且要完成高密度的运算量,所以应采用较高档的服务器。考虑到与软件的兼容性,建议采用Intel Pentium 4多处理器系统、5
17、12MB RAM、80GB以上硬盘。客户机:采用Intel Pentium 4 多处理器系统、512MB RAM、80GB以上硬盘。网络配置:10M/100M 网络带宽、100Mb/s网卡、16口交换机。2.4.2 软件环境操作系统的选择:数据库服务器:因为服务器为数据库服务器,特别对稳定性有极高的要求,且支持多CPU。所以应采用Windows 2000 Server,因为它有优良的稳定性和操作性。数据库的选择:因大部分情况下软件都是在Windows系统下使用的,考虑MySQL的优势在于中国普遍使用的免费数据库软件并且与系统的兼容度较高,并支持集成性安全检测,且对系统的资源消耗较小。相比之下,
18、Oracle数据库虽然性能较高,但由于其可操作性和方便性不如MySQL好,并且服务器没有使用磁盘阵列和多处理器,无法发挥Oracle数据库设计上的性能优势,并且对系统性能要求较高。至于Access之类的数据库,由于其性能较低,且并发度太低又不具安全性,故不予考虑。最终决定后台数据库用MySQL5.0。当然整个系统只能在Windows下运行。3 需求分析毕业生选题管理一直是学校为培养合格的毕业生所做的最重要的工作,学校为毕业提供合适的课题,毕业生通过对课题的设计,综合复习学习过的知识,将理论和实践结合起来,为以后的工作积累宝贵的经验。传统的毕业设计的选题过程是:指导老师根据院(系)的要求,设计出
19、一定数量的毕业课题并提交给教学管理人员审阅;教学管理人员审阅课题,检查出重复的课题,并根据学生的知识水平判断课题的难易是否适宜,提出修改意见,反馈给教师修改;毕业课题设计完成之后,由学院负责人将全部课题发给毕业生,班级负责人组织毕业生选题,然后交给教学管理人员,教学管理人员检查学生的选题情况,并最终确定选题结果。虽然是个合理的有序的过程,但在实际过程中,这种管理仍然存在着过程繁琐、工作效率低等问题。随着计算机的普及、网络和信息化的迅速发展,计算机选课系统、计算机信息管理系统正在普及、然而针对毕业设计双向选题的系统设计却少见报道。开发一个基于WEB的毕业选题系统,在提高毕业设计选题的工作效率,节
20、省人力、物理资源方面都有极大的优势。目前,在大多数高校院(系)都没有一套完整的选题系统,因此设计和开发这样的一个选题系统具有极大的现实意义。针对上述情况,本文采用目前流行的B/S架构模式,设计了一套基于JSP+MYSQL的毕业设计选题系统。该系统增强了指导教师、学生和管理人员在毕业设计选题过程中的交互性,教师能够在线提交和更新待审题目,学生可以在线选题并且查看选题结果,管理人员可以在审阅待审题目并且调整学生选题3.1 需求说明(1) 管理员录入或导入教师信息,管理员将毕业学生基本信息导入,管理员是所有用户中权限级别最高的用户,能够对教师、学生和个人信息、出题信息、选题信息进行修改。同时,还要负
21、责通知发布、选题结果公布等。(2) 教师教师登录系统后,能够修改的数据有:密码、个人联系方式、包括Email和电话,其它信息不能私自修改。对于题目信息和要求,可以对题目信息和要求,可以通过管理员来修改。教师能后查看到选自己课题的学生人数和学生基本情况。(3) 学生学生登录系统后,只能修改密码、个人的联系方式、其它信息不能修改。每个学生只能选一个题目或者一个课题项目的一个模块部分,选择之后在规定的时间内可以更改,规定时间以外不能更改,对于已选题目不能再次被选,除非其他学生在规定的时间内退选。毕业生选题管理系统总体流程图,如图3.1所示。开始用户登录验证教师管理系统管理员管理系统学生管理系统教师课
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 毕业设计 论文 基于 JSP 选题 系统 设计 实现 29
限制150内