基于JavaEE高校教务管理系统设计与实现(附源码论文资料)

您所在的位置:网站首页 ee论文管理平台 基于JavaEE高校教务管理系统设计与实现(附源码论文资料)

基于JavaEE高校教务管理系统设计与实现(附源码论文资料)

2024-07-11 20:51| 来源: 网络整理| 查看: 265

在这里插入图片描述

基于JavaEE高校教务管理系统设计与实现(附源码资料)-从零开始部署运行项目,学习环境搭建、项目导入及部署,含项目源码、文档、数据库、软件等资料-教务系统源码

文章目录 1.前言1.1.目的和意义1.2. 开发背景1.2.1.现状分析1.2.2.发展趋势 1.3.主要工作 2.相关技术2.1.JSP技术2.2.B/S架构2.3.Spring2.4.MySQL2.5.Maven2.6.Tomcat服务器 3.系统分析3.1.需求分析3.1.1.目标3.1.2.系统整体结构3.1.3 应用环境 3.2可行性分析3.2.1.组织和管理上的可行性3.2.2.经济可行性3.2.3.技术可行性 4.系统设计4.1.系统功能设计4.2.数据库设计4.2.1.数据库E-R图4.2.2数据表设计 4.3.体系结构设计4.3.1 体系结构4.3.2.三层架构 5.编码与实现5.1.系统配置5.1.1applicationContext.xml文件配置5.1.2.web.xml文件配置 5.2增、删、改、查功能方法的代码实现5.2.1学生信息的新增5.2.2学生信息的删除5.2.3学生信息的修改5.2.4学生信息的查询 6.系统测试6.1登录验证测试 7.结束语8.参考文献9.致谢10.源码获取

1.前言 1.1.目的和意义

随着高校的办学模式和办学规模的不断变化,开发出适合高校特点和教学管理要求的管理信息系统是非常必要的,也是摆在我们软件开发工作者和教学人员的责任和义务。因此,从实际出发,开发出适合高校教学模式的教务管理系统具有非常深远的现实意义和历史意义。

各高校的教学管理体制和学生培养机制在不断的改革和调整,办学形式更加多样化,高校的教务管理工作量大、繁琐、细致,学校的教务部门对各种教学信息的处理与分析工作越来越繁杂,现有的教务管理软件功能己经明显不能满足日益增多的各种需求。如何充分利用紧缺的教学资源,提高资源的使用率,处理成倍增长的信息量,已成为管理职能部门关心的焦点。面对这一挑战,学校曾经购置、开发了教学管理模块,但不少软件在实际使用过程中或多或少存在一些缺陷。如管理模式滞后,缺乏与信息技术相匹配的管理模式;功能单一,不能涵盖高校管理部门的诸多方面;可用性不强,大量的实际问题得不到解决;缺乏统一规划及系统设计,没有整套的信息编码方案。

建立基于WEB的高校教务平台可以通过网络把信息采集的触角延伸到各部门,可以充分发挥处、室、部、系、校区教学管理的职能,提高各部门的教学管理水平;可以彻底解决教务管理的信息量大,信息采集难,信息反馈滞后,信息准确性低的瓶颈,从而全面实现教务管理的网络化、自动化、数字化,使教务管理高效有序地进行。另外,基于WEB技术开发的各种应用易于实现跨平台,开发成本也较低,而且易于使用和普及。

1.2. 开发背景 1.2.1.现状分析

教务管理系统的发展大致经历了两个阶段:

一是以单机和独立的业务系统为主体的教务管理信息系统发展阶段:时间大致为20世纪80年代到90年代初期。这一阶段的IT发展特征是,计算机硬件的价格开始降低,为其在国内普及应用提供了条件。正是在这一时期,计算机走入了教育行业。但这时的教务管理信息系统几乎都处于功能间的相互独立状态,大量的数据是以独享方式存在的,没有实现信息的整合。

二是以局域网和数据库为基础的网络教务管理信息系统发展阶段;时间大致为90年代中后期至今。这一阶段的IT发展特征是:网络的迅速崛起及网络数据库的普遍应用。这时的教务管理系统的建设以先进的教育思想和基于WEB的教务计算理念为指导,以计算机及网络技术、现代教育技术及信息技术为支撑,以开放式、交互式、共享式为原则,建设一个信息安全可靠、传输快递、分散处理、集中优化、资源共享的教务管理环境。教务管理系统的设计开始注重数据共享,即开始考虑不同部门之间的数据交换问题。这使学校整体教务管理的效率得到了很大程度上的提高,重复工作也逐渐得以避免。

1.2.2.发展趋势

今天的计算机技术发展有两个明显的大趋势:(1)个人电脑不断地迅速发展,从以往的提高工作效率的工具演变为一种功能全面、易于操纵而且价格便宜的学习助手。(2)国际互联网(因特网)的产生,个人电脑可以方便获取跨越全球的知识资源。

目前建设的教学教务管理系统是借助这两个趋势进行设计的,支持有关学校的教学、管理等各种应用。教师、学生、学校的管理人员乃至家长都能够在这样的平台上,辅助学校的教育、教学、管理、共享多媒体资源等活动,这是今后教务管理系统的发展趋势。

从设计结构上看,目前大部分教务管理系统采用了比较适于网络方式并易于升级维护的B/S(浏览器/服务器,Browser/Server)结构方式,也有一部分校园管理软件还维持着C/S(客户机/服务器,Client/Server)的结构。此外,也有一部分软件支持B/S、C/S及Lotus Domino多种结构,或在B/S内含其它结构。整体来说,教务管理系统正在经历着从C/S向B/S结构转变的重大变革。

1.3.主要工作

本文主要是讲述一个基于WEB的高校教务管理系统的开发与实现。包括系统开发的相关技术、系统需求分析、系统功能设计、系统数据库设计、系统编码实现等。整个系统功能包括:个人信息管理、信息查询、学生成绩管理、网上选课、网上报名、教学评价和系统管理。

2.相关技术 2.1.JSP技术

JSP(Java Server Pages)是由SUN公司倡导提出的一种动态网页技术标准,是基于Java语言的服务器端脚本技术[1][2]。JSP是一种服务器的脚本语言,并通过开展的JSP标签提供网页动态执行能力。JSP页面执行过程如图2-1所示。WEB服务器在收到访问JSP网页的请求时,先触发Java Servlet编译并执行,后将执行结果以HTML格式返回给客户。所有程序操作都在服务器端执行,网络上传送给客户端仅是得到的结果,对客户浏览器的要求很低。由于它是在服务器端的脚本,一般用户无法看到,从而有效地保证了系统的安全性及开发人员的知识产权[3]。JSP最大的优点是开放的、跨平台的结构,它可以运行在所有的服务器系统上[4]。其他的优点还有: (1)编译后执行,能够大大提高执行效率; (2)JSP采用Java技术,Java应用比较普遍,因此学习起来非常容易; (3)JSP是J2EE十三种核心技术中的一种,可以和其他核心技术共同建立企业应用[5]。 在这里插入图片描述 图2-1 JSP页面执行过程

2.2.B/S架构

B/S(Browser/Server)实际上也是一种客户机技术,它的前端以TCP/IP协议为基础,用户只需要一个浏览器就可以应用安装在远端服务器上的应用系统。目前,应用比较普遍的B/S架构一般分三层模式,即Web应用的基本原理是:用户通过浏览器向服务器处理后生成Server小程序,Server与后台数据库服务器交互,生成用户所需要的Web页传递给客户[6]。B/S模式结构如图2-2所示。

以目前的技术看,局域网建立B/S结构的网络应用,并通Internet/Intranet模式下数据库应用,相对易于把握、成本也是较低的。它是一次性到位的开发,能实现不同的人员,从不同的地点,以不同的接入方式访问和操作共同的数据库;它能有效地保护数据平台和管理访问权限,服务器数据库也很安全。特别是在Java这样的跨平台语言出现之后,B/S架构管理软件更是方便、快捷、高效[7][8]。 在这里插入图片描述 图2-2 B/S模式体系结构

B/S结构主要优点:

(1)客户端不需要安装任何专门的软件,只要一个浏览器即可。 (2)应用系统集中在服务器端,便于维护,易于升级,运行成本低。 (3)基于Internet,办公不受地域限制。 (4)数据存放集中,可有效的保护数据安全[9]。

2.3.Spring

Spring是一组轻巧的开源框架,内容主要涵盖了数据持久化(Data Persistence)、反转控制 (Ioc)、Web框架(MVC)。概括的说,Spring包括了所有 Spring Core提供的主要的功能,以及一个功能完备的 Json解析器。作为一个新兴的框架,Spring提供的这些功能又是相互独立的,你可以拿出任何一个来单独使用,同其它你常用的框架融合。因为在 Spring 中,你就把它当作一个一般的 Java Bean使用就可以了[14]。

Spring的特点: (1)轻,当前最新版,整个jar文件共 910kB,针对JDBC的薄封装,无缓存。 (2)全,提供Dao (ORM, SQL 管理),Ioc, Aop, Mvc, Json解析等必要功能。 (3)活,各个部分可以独立使用,比如在Spring里采用 Dao等。 (4)整,它所有功能均不依赖第三方jar文件。当然你要使用其它的连接池,数据库驱动,打印PDF支持等功能,还需要自行添置jar包[15]。

2.4.MySQL

MySQL是一个小型关系型数据库管理系统,开发者为瑞典MySQL AB公司。在2008年1月16号被升阳微系统(SunMicrosystems)收购。目前MySQL被广泛地应用在Internet上的中小型网站中。由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库。随着MySQL的不断成熟,它也逐渐用于更多大规模网站和应用,比如Google和Facebook等网站。目前Internet上流行的网站构架方式是LAMP(Linux+Apache+MySQL+PHP),即使用Linux作为操作系统,Apache作为Web服务器,MySQL作为数据库,PHP作为服务器端脚本解释器。由于这四个软件都是遵循GPL的开放源码软件,因此使用这种方式不用花一分钱就可以建立起一个稳定、免费的网站系统[10]。

MySQL具备许多优点,包括: (1)使用C和C++编写,并使用了多种编译器进行测试,保证源代码的可移植性。 (2)支持AIX、FreeBSD、HP-UX、Linux、MacOS、NovellNetware、OpenBSD、OS/2Wrap、Solaris、Windows等多种操作系统。 (3)为多种编程语言提供了API。这些编程语言包括C、C++ 、Eiffel、Java、Perl、PHP、Python、Ruby和Tcl等。 (4)支持多线程,充分利用CPU资源。 (5)优化的SQL查询算法,有效地提高查询速度。 (6)既能够作为一个单独的应用程序应用在客户端服务器网络环境中,也能够作为一个库而嵌入到其他的软件中提供多语言支持,常见的编码如中文的GB2312、BIG5,日文的Shift_JIS等都可以用作数据表名和数据列名。 (7)提供TCP/IP、ODBC和JDBC等多种数据库连接途径。 (8)提供用于管理、检查、优化数据库操作的管理工具。 (9)可以处理拥有上千万条记录的大型数据库[12]。

2.5.Maven

Maven是一个项目管理和综合工具。Maven提供了开发人员构建一个完整的生命周期框架。开发团队可以自动完成项目的基础工具建设,Maven使用标准的目录结构和默认构建生命周期。 在多个开发团队环境时,Maven可以设置按标准在非常短的时间里完成配置工作。由于大部分项目的设置都很简单,并且可重复使用,Maven让开发人员的工作更轻松,同时创建报表,检查,构建和测试自动化设置。 Maven提供了开发人员的方式来管理: Builds Documentation Reporting Dependencies SCMs Releases Distribution mailing list 概括地说,Maven简化和标准化项目建设过程。处理编译,分配,文档,团队协作和其他任务的无缝连接。 Maven增加可重用性并负责建立相关的任务。

2.6.Tomcat服务器

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

Tomcat 很受广大程序员的喜欢,因为它运行时占用的系统资源小,扩展性好,支持负载平衡与邮件服务等开发应用系统常用的功能;而且它还在不断的改进和完善中,任何一个感兴趣的程序员都可以更改它或在其中加入新的功能。

Tomcat 是一个小型的轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP 程序的首选。对于一个初学者来说,可以这样认为,当在一台机器上配置好Apache 服务器,可利用它响应对HTML 页面的访问请求。实际上Tomcat 部分是Apache 服务器的扩展,但它是独立运行的,所以当你运行tomcat 时,它实际上作为一个与Apache 独立的进程单独运行的[13]。

3.系统分析 3.1.需求分析 3.1.1.目标

此系统需要实现以下的一些目标:

系统能够提供友好的用户界面,使操作人员的工作量最大限度的减少系统具有良好的运行效率,能够得到提高生产率的目的系统应有良好的可扩充性,可以容易的加入其它系统的应用。平台的设计具有一定的超前性,灵活性,能够适应高校教务管理的变化。 3.1.2.系统整体结构

在这里插入图片描述 图3-1 系统功能模块

如图3-1所示,系统包括7大功能模块:管理员登录、学生管理、课程管理、学院管理、专业管理和安全退出等。 在这里插入图片描述 图3-2 个人信息管理菜单

如图3-2,个人信息管理包括:学生基本信息、学生信息管理、课程基本信息、课程信息管理、学院基本信息、专业信息管理。 在这里插入图片描述 图3-3 信息查询菜单

如图3-3,信息查询包括:学生信息查询、课程信息查询、学院信息查询、专业信息查询。

在这里插入图片描述 图3-4 系统管理菜单

如图3-4,系统管理包括:学院信息管理、专业信息管理、课程信息管理、学生信息管理。

3.1.3 应用环境

(1)系统运行硬件环境

客户机:普通PC CPU:P4 1.8GHz 内存:512MB以上 分辨率:推荐使用1440*900像素 WEB服务器 CPU:酷睿 2GHz 内存:2000MB以上 数据库服务器 CPU:酷睿 2GHz 内存:2000MB以上

(2)系统运行软件环境

操作系统:Windows 7 数据库:Mysql SQL 5.5 开发工具包:JDK7,J2EE Web服务器:Tomcat 7 3.2可行性分析

可行性是系统开发的一项关键步骤,它是通过对整个系统的需求,技术及开发方法,以及开发人员,所需资金的综合考虑以评估对于该系统的开发是否符合实际。可行性分析包括:组织和管理上的可行性、经济可行性和技术可行性。

3.2.1.组织和管理上的可行性

本系统采用模块化开发方法,将整个系统划分为多个功能模块,根据工作量和时间的合理安排进行相应模块的开发,这种将系统功能平行划分的方法有助于系统开发的组织和管理。

3.2.2.经济可行性

系统开发所涉及的技术中tomcat服务器、Layui、MySQL等都是开源免费的。系统开发由本人一个人完成,不需要额外的支出。硬件方面,普通PC即可完成开发、测试及维护操作。所以完全符合经济可行性。

3.2.3.技术可行性

本系统使用了现阶段最流行的Java语言作为开发语言,Java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于个人PC、数据中心、游戏控制台、科学超级计算机、移动电话和互联网,同时拥有全球最大的开发者专业社群。在全球云计算和移动互联网的产业环境下,Java更具备了显著优势和广阔前景。 同时,系统还使用了MVC框架辅助开发。MVC用于组织代码用一种业务逻辑和数据显示分离的方法,这个方法的假设前提是如果业务逻辑被聚集到一个部件里面,而且界面和用户围绕数据的交互能被改进和个性化定制而不需要重新编写业务逻辑。MVC被独特的发展起来用于映射传统的输入、处理和输出功能在一个逻辑的图形化用户界面的结构中。使用MVC框架编写的代码具有耦合性低、重用性高、生命周期成本低、部署快可维护性高及有利于软件工程化管理等优点。 所以本系统具有可靠的技术可行时。

4.系统设计 4.1.系统功能设计

根据系统需求与系统功能的分析,可以把系统总体分为:学生信息管理、专业信息管理、课程信息管理、学院信息管理4大功能模块。每个模块分别定义了多个功能。可用下图的总体功能模块图表示: 在这里插入图片描述

图4-1 系统结构模块图

4.2.数据库设计 4.2.1.数据库E-R图

根据整个系统的需求和实体属性的分析可以得到数据库E-R图。 在这里插入图片描述 图4-2 E-R图

从图4-2可以看出,系统一共设计了5个实体,学生信息实体、课程信息实体和专业信息实体、学员信息实体;系统管理类有管理员信息实体。

其中学生信息实体跟专业信息实体是多对一关系,专业信息实体跟学院信息实体是一对多关系,学院信息实体跟课程信息实体一对多关系。

4.2.2数据表设计

根据整个系统的需求和数据库E-R图,一共设计了以下15张数据库表。 (1)学生信息表(student)

表4-1 学生信息表 在这里插入图片描述 (2)课程信息表(course)

表4-2 课程信息表 在这里插入图片描述

(3)管理员信息表(T_ADMIN_INFO)

表4-3 管理员基本信息表 在这里插入图片描述 (4)学院基本信息表(T_COLLEGE_INFO) 表4-11 学院基本信息表 在这里插入图片描述 (5)专业基本信息表(T_MAJOR_INFO) 表4-12 专业基本信息表

在这里插入图片描述

4.3.体系结构设计 4.3.1 体系结构

体系结构的设计原则: (1)系统应具有良好的适应性。 (2)系统应具有可靠性。 (3)系统应具有较好的安全性。 (4)系统应具有良好的可扩展性。 本系统采用三层架构,表示层—业务层—数据层。

4.3.2.三层架构

(1)表示层。包含网站的UI元素,并且包含管理访问者和客户义务之间交互所有程序逻辑。该层使整个网站充满活性,而且这一层的设计方法对网站的成功至关重要。由于应用系统是web网站,因此表示层将由动态web页面组成。

(2)业务层:也称为中间层,接收来自表示层的请求,并基于其包含的业务逻辑,向表示层返回一个结果。表示层所发生的事件,绝大部分都会调用业务层(除了那些表示层自己处理的事件,诸如简单的数据输入验证等)。例如用户进行一次成绩的搜索,那么表示层将请求业务层,说:“请把与该搜索条件相匹配的成绩信息发给我。”绝大多数情况下,业务层都需要调用数据层的信息,以响应表示层的请求。

(3)数据层(有时也叫数据库层)负责应用层系统的数据,并当请求时把它们发送给业务层。几乎所有的客户的请求最终都要查询数据层的信息,因此很有必要拥有一个快速的数据库系统。

在三层架构中,层之间的数据传递必须遵循特定的顺序。表示层只允许访问业务层,而永远不能直接访问数据层。业务层就像中间的“大脑”,负责与其它层通讯,处理和协调所有信息流。如果表示层直接和数据层交互,将打破三层架构模型的编程规则。

严格遵从三层架构可以确保网站易于更新、修改,同时添加了一层控制,用来限制谁或什么能够访问你的数据。

本系统使用spring mvc框架使分层更明确,分层如下: 表现层,就是MVC模式里面的交互,负责接收请求和显示数据,系统中使用jsp、html、layui作为表示层。 控制层,是spring控制器的扩展,与表示层通讯,并调用服务层的组件。 服务层,负责实现业务逻辑,服务层可以调用DAO层与数据库通讯。 DAO层,负责与持久化对象交互。该层封装了数据的增、删、查、改的操作。 实体层,javabean 的实体类。 Spring 的作用贯穿了整个中间层,将表现层、 服务层、 DAO层及实体层无缝整合,其数据服务层用来存放数据。

5.编码与实现 5.1.系统配置

系统配置主要包括了spring的applicationContext.xml文件配置和J2EE的web.xml文件配置。

5.1.1applicationContext.xml文件配置 …… ……

applicationContext.xml文件配置主要是对数据源、注解的使用、类的注入和切片事务的使用等进行了相关的配置。 数据源配置包括与数据库连接语句设定,登录数据库所使用的用户名与密码的设定等;只有增加了注解和注入的配置才可以在实体类中使用注解来实现实体类的变量与数据库表字段的对应关联关系和在控制类、服务层或DAO层中使用注入的方法自动加载需要的类,然后才可以调用该类来使用;切片事务的配置使得设定的方法具有事务功能,在调用该特定方法时通过切片的形式加载事务给相关方法。

5.1.2.web.xml文件配置 authFilter filter.AuthenticationFilter allowUri /admin/* authFilter /*


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3