基于JavaEE的学院体育选向课程网站的设计与实现毕业论文 精品Word格式.docx
- 文档编号:20893342
- 上传时间:2023-01-26
- 格式:DOCX
- 页数:38
- 大小:846.48KB
基于JavaEE的学院体育选向课程网站的设计与实现毕业论文 精品Word格式.docx
《基于JavaEE的学院体育选向课程网站的设计与实现毕业论文 精品Word格式.docx》由会员分享,可在线阅读,更多相关《基于JavaEE的学院体育选向课程网站的设计与实现毕业论文 精品Word格式.docx(38页珍藏版)》请在冰豆网上搜索。
本人郑重声明:
所呈交的论文是本人在导师的指导下独立进行研究所取得的研究成果。
除了文中特别加以标注引用的内容外,本论文不包含任何其他个人或集体已经发表或撰写的成果作品。
对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。
本人完全意识到本声明的法律后果由本人承担。
日期:
年月日
学位论文版权使用授权书
本学位论文作者完全了解学校有关保留、使用学位论文的规定,同意学校保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。
本人授权 大学可以将本学位论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。
涉密论文按学校规定处理。
日期:
导师签名:
日期:
摘要
湘南学院体育选向课程平台是针对在校学生和教师使用的一个选排课系统,其开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面。
本系统采用B/S架构,构建于JAVAEE平台之上,整个系统应用了MVC三层架构模式。
本系统主要用户是学生、教师、系教务管理员和系统管理员。
系统管理员管理系统的基本信息,学生和教师通过系统完成不同的工作。
系统需要实现的功能主要有4个,系统管理员对整个系统基本信息的维护,教务人员对课程的编排,教师对应的查课功能,以及学生对应的选课功能。
论文首先对系统进行大致的说明,再介绍了设计开发过程中用到的技术,其次是系统需求分析,系统总体设计,系统详细设计,然后具体讲解了系统的实现与测试,最后对本次论文做了一个小结。
关键字:
选排课系统;
数据库;
选向课程
Abstract
ThePEElectiveandArrangementCoursePlatformisaimedtosupportthestudentsandteachersofXiangNanUniversityforPEcoursearrangementandelection.Itsdevelopmentincludesdatabaseconstructionandapplicationprogramproduction.ThisplatformwhichbasesonJAVAEEandB/Sconstruction,andplatformuseMVCthreelayersframeworkpattern.
Its
majority
users
are
students,
teachers,
educational
managers
and
platform
managers.
The
manage
the
essential
information
of
system,
students
teachers
finish
different
work
with
this
system.
Throughthisplatformthereare4tasksthatcanbefinished:
platformmanagercanpreservetheinformationofthewholesystem,educationalmanagerscanarrangethecurriculum,theteacherscanlookforthecoursesandthestudentscanselectcourses.
Thisarticletakeabriefintroductionofthesystematfirst,thenintroductionthetechnologyusedduringdesigningandbuildingthissystem,inthenext,analysisthesystemdemand,overalldesignanddetailingstructure,thenexplainthesystem’senforceandtestindetails.Intheend,thisarticletakesaconclusionofthissystemdesign.
Keywords:
courseselectionsystem,selectivecurriculum,database
1概述
1.1选向课程平台介绍
湘南学院体育选向课程平台是一个选排课系统,选排课系统作为计算机应用的一部分,使用计算机对课程信息进行管理,有着手工管理所无法比拟的优点[1]。
例如:
检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。
这些优点能够极大地提高人事劳资管理的效率,也是各大院校科学化、正规化管理的重要条件。
湘南学院体育选向课程平台主要用户是学生、教师、系教务管理员和系统管理员,教务人员管理系统的基本信息(如课程、老师、学生等),学生和教师通过系统完成不同的工作。
系统需要实现的功能总体来说共有4个,分别如下:
(1)系统管理员可以维护整个系统的基本信息;
(2)教务人员可以对课程进行编排管理;
(3)教师可以查看课表;
(4)学生可以选课;
1.2开发背景及意义
1.2.1背景
目前湘南学院体育选向课程采用的方式是教师通过表格手工登记学生选课信息,但是当前湘南学院学生人数已经到达2万。
如果采取传统的手工方式,就需要教务管理人员和教师花费大量的时间和精力对选课信息进行统计整理,然后根据统计信息进行手动编排课程,这种方式不利于教师及教务管理人员的管理。
因此教务处委托谢老师开发一个体育选向课程网站,谢老师把这个当作一个毕业设计课题,我在谢老师的指导下开发了这个系统。
1.2.1意义
解决了传统方式所造成的教务管理人员工作的浪费,大大提高了教务管理员的工作效率。
1.3国内外研究动态
随着Internet的逐步发展,网络不仅仅是科研部门学术交流的平台,在其他的方面上也得到了很大的发展,尤其是在校园网的分支教务管理上[2]。
同时在教务管理的主要分支选课排课系统的应用上得到了较大的发展。
国外针对此问题展开的研究较早。
1963年CCGotlieb在他的文章《TheConstructionofClass-TeacherTime-Tables》中提出了课表编排的数学模型。
这篇文章引起了人们对于选排课问题的重视。
而国内对选排课问题的研究较晚。
1984年,清华大学在《清华大学学报》上发表了林漳希和林尧瑞在该课题上的实验性研究成果《人工智能技术在课表编排中的应用》,标志着我国开始了对选排课问题的研究。
目前,我国高校都实行了学分制,它的核心是允许学生自由选课,即把学习的自主权交给学生。
在这里,学生选课时的制约因素比较复杂,工作量也很大,而且往往需要在较短的时间内完成。
运用计算机辅助选课,即能实时地对大量选课数据进行检验和统计,十分方便地输出选课结果,同时也避免了人工处理时容易产生的错误。
在高等学校的教务管理工作中,课程表的编排是一项十分复杂、棘手的工作。
在排课过程中,除了满足大量的制约条件以外,还必须解决许多冲突与矛盾[3]。
利用计算机辅助进行课表编排工作,既提高了排课工作的科学性,又可大大减轻管理人员的工作强度,提高工作效率,从而使学校教务管理现代化迈上了一个新台阶。
1.4论文的组织结构
第一章是绪论,简述设计本系统的初衷以及背景。
第二章是开发技术简介,简述本系统开发和设计过程中用的到的主要技术。
第三章是系统需求分析,简述自己分析系统,对项目进行需求分析。
第四章是系统的概要设计,简述系统的概要设计的。
第五章是详细设计,简述系统设计的详细过程。
第六章是系统的实现,简述系统是如何实现的。
第七章是系统的测试,对系统进行必要的测试。
最后是结论,总结了本论文的主要工作和系统特色,以及本次论文设计的心得。
2系统开发环境及相关技术理论介绍
2.1开发环境
2.1.1硬件环境
CUP:
至少PentiumIII800以上
内存:
至少128M以上
硬盘:
至少20G硬盘空间以上
显示器:
15显示器
2.1.2软件环境
运行环境:
Windows7
开发工具:
MyEclipse8.6
数据库:
MySQL5.5
Web服务器:
Tomcat6.0.32
浏览器:
IE8.0
2.2相关技术简介
2.2.1JAVAEE概述
J2EE是美国Sun公司推出的一种全新概念的应用程序模型,是一套全然不同于传统应用开发的技术架构,包含许多组件,主要可简化且规范应用系统的开发与部署,进而提高可移植性、安全与再用价值。
与传统的互联网应用程序模型相比有着不可比拟的优势。
目前,Java2平台有3个版本,它们是适用于小型设备和智能卡的Java2平台Micro版(Java2PlatformMicroEdition,J2ME)、适用于桌面系统的Java2平台标准版(Java2PlatformStandardEdition,J2SE)、适用于创建服务器应用程序和服务的Java2平台企业版(Java2PlatformEnterpriseEdition,J2EE)。
J2EE是一种利用Java2平台来简化企业解决方案的开发、部署和管理相关的复杂问题的体系结构。
Java语言相对于windows变成语言来说,最大优势在java语言是跨平台的,而widows的编程通常都是针对windows系统来开发,可移植性远不及Java。
J2EE技术的基础就是核心Java平台或Java2平台的标准版,J2EE不仅巩固了标准版中的许多优点,例如"
编写一次、随处运行"
的特性、方便存取数据库的JDBC(JavaDataBaseConnectivity)应用程序接口(API,ApplicationProgramInterface)技术以及能够在Internet应用中保护数据的安全模式等等,同时还提供了对EJB(EnterpriseJavaBeans)、JavaServletsAPI、JSP(JavaServerPages)以及XML技术的全面支持。
其最终目的就是成为一个能够使企业开发者大幅缩短投放市场时间的体系结构[4]。
2.2.2Struts2框架与MVC简介
Struts2是Struts的下一代产品,是在struts和WebWork的技术基础上进行了合并的全新的Struts2框架。
其全新的Struts2的体系结构与Struts1的体系结构的差别巨大。
Struts2以WebWork为核心,采用拦截器的机制来处理用户的请求,这样的设计也使得业务逻辑控制器能够与ServletAPI完全脱离开,所以Struts2可以理解为WebWork的更新产品。
虽然从Struts1到Struts2有着太大的变化,但是相对于WebWork,Struts2只有很小的变化,如图2-1所示:
图2-1Struts的工作原理图
MVC模式英文即Model-View-Controller,即把一个应用的输入、处理、输出流程按照Model、View、Controller的方式进行分离,这样一个应用被分成三个层——模型层、视图层、控制层。
视图(View)代表用户交互界面,对于Web应用来说,可以概括为HTML界面,但有可能为XHTML、XML和Applet。
随着应用的复杂性和规模性,界面的处理也变得具有挑战性。
模型(Model):
就是业务流程/状态的处理以及业务规则的制定。
业务流程的处理过程对其它层来说是黑箱操作,模型接受视图请求的数据,并返回最终的处理结果。
业务模型的设计可以说是MVC最主要的核心。
控制(Controller)可以理解为从用户接收请求,将模型与视图匹配在一起,共同完成用户的请求。
划分控制层的作用也很明显,它清楚地告诉你,它就是一个分发器,选择什么样的模型,选择什么样的视图,可以完成什么样的用户请求。
控制层并不做任何的数据处理。
模型、视图与控制器的分离,使得一个模型可以具有多个显示视图。
如果用户通过某个视图的控制器改变了模型的数据,所有其它依赖于这些数据的视图都应反映到这些变化。
因此,无论何时发生了何种数据变化,控制器都会将变化通知所有的视图,导致显示的更新。
这实际上是一种模型的变化-传播机制[5]。
如图2-2所示:
图2-2MVC的原理图
2.2.3Hibernate与ORM简介
对象-关系映射(Object/RelationMapping,简称ORM),是随着面向对象的软件开发方法发展而产生的。
面向对象的开发方法是当今企业级应用开发环境中的主流开发方法,关系数据库是企业级应用环境中永久存放数据的主流数据存储系统。
对象和关系数据是业务实体的两种表现形式,业务实体在内存中表现为对象,在数据库中表现为关系数据。
内存中的对象之间存在关联和继承关系,而在数据库中,关系数据无法直接表达多对多关联和继承关系。
因此,对象-关系映射(ORM)系统一般以中间件的形式存在,主要实现程序对象到关系数据库数据的映射。
Hibernate是轻量级JavaEE应用的持久层解决方案,Hibernate不仅管理Java类到数据库表的映射(包括Java数据类型到SQL数据类型的映射),还是提供数据查询和获取数据的方法,可以大幅度缩短使用JDBC处理数据持久化的时间。
目前的主流数据库依然是关系型数据库,而Java语言则是面向对象的编程语言[6],当把二者结合在一起使用时相当麻烦,而Hibernate则减少了这个问题的困扰,它完成对象模型和基本SQL的关系模型的映射关系。
因为有Hibernate的支持,使得Java EE应用的OOA(面向对象分析)、OOD(面向对象设计)、OOP(面向对象编程)三个过程一脉相承,成为一个整体。
由于Hibernate是一个和JDBC密切关联的框架,所以Hibernate的兼容性和JDBC驱动,和数据库都有一定的关系,但是和使用它的JAVA程序,和AppServer没有任何关系,也不存在兼容性问题。
如图2-3所示:
图2-3Hibernate体系总览图
由于Hibernate比较复杂,提供了好几种运行方式。
在轻型体系中,应用程序自己提JDBC连接,并自行管理事务。
这种方式使用了HibernateAPI的一个最小子集。
如图2-4所示:
图2-4Hibernate轻型应用体系
在前面解决体系中,对于应用程序来说,所有的底层JDBC/JTAAPI都被抽象了,Hibernate会替你照管好所有的细节。
本文中所用到的就是这种体系。
如图2-5所示:
图2-5Hibernate全面应用解决体系
以下是图中一些对象的定义:
1)SessionFactory
对属于单一数据库的编译过的映射文件的一个线程安全的,不可变的缓存快照。
它是Session的工厂,是ConnectionProvider的客户。
可能持有一个可选的二级数据缓存,可以在进程级别后集群级别保存可以在事务中重用的数据。
2)Session会话
Session是生命周期的单线程对象,代表应用程序和持久层之间的一次对话。
封装了一个JDBC连接,也是Transaction的工厂。
保存有必需的(第一级)持久化对象的缓存,用于遍历对象图或通过标识符查找对象。
3)持久化对象(PersistentObject)及其集合(Collection)
生命周期短的单线程对象包含了持久化状态和商业功能。
它们可能是普通的JAVABeans/POJOs,唯一特别的是他们现在都从属于且仅从属于一个Session。
一旦Session关闭,他们都将从Session中取消联系,可以在任何程序层自由使用。
4)事务(Transaction)
事务也是生命周期短的单线程对象,应用程序用它来表示一批工作的原子操作。
是底层的JDBC,JTA或者CORBA事务的抽象。
一个Session某些情况下可能跨越多个事务。
2.2.4Spring简介
Spring是一个开源框架,是为了解决企业应用程序开发复杂性而创建的。
框架的主要优势之一就是其分层架构,分层架构允许您选择使用哪一个组件,同时为J2EE应用程序开发提供集成的框架。
Spring框架的功能可以用在任何J2EE服务器中,大多数功能也适用于不受管理的环境。
Spring的核心要点是:
支持不绑定到特定J2EE服务的可重用业务和数据访问对象。
这样的对象可以在不同J2EE环境(Web或EJB)、独立应用程序、测试环境之间重用[7],如图2-6所示:
图2-6Spring框架的组成结构图
组成Spring框架的每个模块(或组件)都可以单独存在,或者与其他一个或多个模块联合实现。
每个模块的功能如下:
核心容器:
核心容器提供Spring框架的基本功能。
核心容器的主要组件是BeanFactory,它是工厂模式的实现。
BeanFactory使用控制反转(IOC)模式将应用程序的配置和依赖性规范与实际的应用程序代码分开。
Spring上下文:
Spring上下文是一个配置文件,向Spring框架提供上下文信息。
Spring上下文包括企业服务,例如JNDI、EJB、电子邮件、国际化、校验和调度功能。
SpringAOP:
通过配置管理特性,SpringAOP模块直接将面向方面的编程功能集成到了Spring框架中。
所以,可以很容易地使Spring框架管理的任何对象支持AOP。
SpringAOP模块为基于Spring的应用程序中的对象提供了事务管理服务。
通过使用SpringAOP,不用依赖EJB组件,就可以将声明性事务管理集成到应用程序中。
SpringDAO:
JDBCDAO抽象层提供了有意义的异常层次结构,可用该结构来管理异常处理和不同数据库供应商抛出的错误消息。
异常层次结构简化了错误处理,并且极大地降低了需要编写的异常代码数量(例如打开和关闭连接)。
SpringDAO的面向JDBC的异常遵从通用的DAO异常层次结构。
SpringORM:
Spring框架插入了若干个ORM框架,从而提供了ORM的对象关系工具,其中包括JDO、Hibernate和iBatisSQLMap。
所有这些都遵从Spring的通用事务和DAO异常层次结构。
Spring为企业应用的开发提供了一个轻量级的解决方案。
该解决方案包括:
基于依赖注入的核心机制,基于AOP的声明式事务管理,与多种持久层技术的整合,以及优秀的WebMVC框架等。
Spring致力于JavaEE应用各层的解决方案,而不是仅仅专注于某一层的方案。
2.2.5JSP技术简介
JSP技术提供了一种简单快速的方法来创建显示动态生成内容的Web页面。
也就是在MVC中充当V(View)的角色。
由业界处于领先地位的Sun公司制定了相关的JSP技术规范,该规范定义了如何在服务器和JSP页面间进行交互,还描述了页面的格式和语法[8]。
JSP页面使用XML标签和scriptlets(一种使用JAVA语言编写的脚本代码),封装了生成页面内容的逻辑。
它将各种格式的标签(HTML或者XML)直接传递回响应页面。
通过这种方式,JSP页面实现了页面逻辑与其设计和显示的分离。
JSP技术是JAVA系列技术的一部分。
JSP页面被编译成servlet,并可能调用JAVABeans组件(beans)或EnterpriseJAVABeans组件(企业beans),以便在服务器端处理。
因此,JSP技术在构建可升级的基于web的应用程序时扮演了重要角色。
JSP页面并不局限于任何特定的平台或web服务器上。
JSP规范在业界有着广泛的适应性。
JSP技术是行业协作的结果,它的设计是开放的,符合行业标准的,并支持绝大多数的服务器、浏览器和相关工具。
由于使用可重用的组件和标签取代了对页面本身脚本语言的严重依赖,JSP技术大大加快了开发的速度。
所有JSP的实现均支持以JAVA编程语言为基础的脚本语言,它有与生俱来的可适应性,支持复杂的操作。
2.2.6MySQL数据库简介
MySQL是一个小型关系型数据库管理系统,开发者为瑞典MySQLAB公司。
在2008年1月16号被Sun公司收购。
而2009年,SUN又被Oracle收购。
MySQL是一种关联数据库管理系统,关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内。
这样就增加了速度并提高了灵活性。
MySQL的SQL“结构化查询语言”。
SQL是用于访问数据库的最常用标准化语言。
MySQL软件采用了GPL(GNU通用公共许可证)。
由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库[9]。
与其他的大型数据库例如Oracle、DB2、SQLServer等相比,MySQL自有它的不足之处,如规模小、功能有限(MySQLCluster的功能和效率都相对比较差)等,但是这丝毫也没有减少它受欢迎的程度。
对于一般的个人使用者和中小型企业来说,MySQL提供的功能已经绰绰有余,而且由于MySQL是开放源码软件,因此可以大大降低总体拥有成本。
3系统分析
3.1系统功能需求分析
现代化学校应该有个现代化的管理系统去管理学校内的各项事物,学校是一个数据量比较大的单位,如何去管理及查询学校内的数据就成为了一项及为重要的问题,同时,学生选课、教务人员排课这项工作是教学管理中很重要的一个环节,所以开发出一个选排课系统就是现在及为重要的事情,从而选排课系统的重要性就不言而喻了[10]。
本系统的设计目的是要将学生选择课程和教务管理人员的编排课程通过网络进行管理。
为学生、教师和教务管理人员提供便利。
系统的用户有4种类型,分别为系统管理员、系教务管理员、学生、教师,系统对于一个用户只允许以一种身份登录。
系统管理员登录后可以对系统进行信息管理,其主要操作是维护学生、教师和
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于JavaEE的学院体育选向课程网站的设计与实现毕业论文 精品 基于 JavaEE 学院 体育 课程 网站 设计 实现 毕业论文