搜档网
当前位置:搜档网 › 基于bs结构的选课管理系统的设计

基于bs结构的选课管理系统的设计

基于bs结构的选课管理系统的设计
基于bs结构的选课管理系统的设计

本科生毕业论文(设计)

基于B/S结构的学生选课管理系统的

设计与实现

BS选课管理设计J2EE,jsp,spring,hibernate,oracle

姓名

学号

专业

指导教师

二零一二年四月二十日

摘要

近年来随着高校使用网络管理学生的各项信息的普及。本设计采用分析浏览器/服务器结构的特点,完成学生网上选课功能,并结合选课的实际情况简单的介绍了系统各功能模块及数据库的设计,学生可通过该系统进行选修课程的信息查询,对于教务处提供的课程进行选择或者退选,并且根据学生的选课情况自动生成课程表。

本选课系统着重应用java web技术包括:spring MVC 技术以及hibernate4.0 JDBC连接数据库.并大量使用Spring3.0的Annotation,注解驱动,减少了xml 配置,使应用开发更加轻量级。使用前台的技术包括 jsp ,javascript,css,ajax 等。数据库采用Oracle 11g。开发环境采用Eclipse,项目总体架构在Maven3.0上,减少了对各种jar包的引用,并且结构目录清晰,易于管理和维护。

系统设计部分主要介绍了系统详细功能设计、数据库设计以及代码架构设计。系统界面友好,操作简单,安全性高,是一个实用的选课系统。开发过程中使用Junit保证底层代码方法的正确性,先后台再到前台的开发模式,在出现问题的时候才用debug模式进行问题的查找,直到形成满意的可行系统。

系统面向的用户为,学生、教师、管理员。主要的模块分为,用户登录模块,管理员发布选课消息以及录入选课信息。学生进行课程的选定以及退选。教师管理员统计选课结果等等。

关键词:课程;管理;数据库;MVC

Abstract

‘Everything is Object’, with the popularity of Internet technology, Java which an object-oriented language get a wide range of applications. At the same time, network application become one of the most important part of person's life. Especially in universities, Application is more popular, Students' information management, The library books loan or information management, The student consumption system and so on . So java web because more and more popular . It is simple, easy to modify and maintenance. Provide many ways for JDBC which can make a perfect connect with Database. The most important is :It has a lot of frame work which can refer to learn and used in our development .Therefore it is very popular with the developer's favor

The system mainly technology including: spring MVC technology and hibernate4.0 connect to database of advantage, and the use of the Spring3.0 Annotation, annotate drive, reduce the XML configuration, make application development more lightweight.

In recent years, with the increase size of university students using the network to manage, all the information of the students has been popular. This design use the analysis browser/server (B/S) structure characteristics, it can complete students online choose courses function, and combining with the actual situation of the simple course introduces the system the function module and database design.

Use the front desk technology including the JSP, JavaScript, CSS, Ajax, etc. Database using Oracle 11 g. The Eclipse the development environment, the project general framework in Maven3.0 to reduce the reference of various kinds of jar , Also Maven make directory structure clear, easy to manage and maintain.

During the development used the JUint guarantee the correctness of the bottom code method, until satisfactory feasible system formed and used the Debug model to find the root cause when combine the jsp page and the backup code .Until it become a satisfied system .

This system mainly introduces the function of system in detail design, database design and code architecture design. It has friendly interface, simple operation, high safety, practical course system.

Key Words: course,management, database, MVC

目录

摘要............................................................. I 1 引言. (1)

1.1课题研究背景 (1)

1.2课题研究目的 (1)

1.3课题可行性分析 (2)

2 相关开发软件以及技术介绍 (3)

2.1开发环境介绍----E CLIPSE 以及M AVEN的使用 (6)

2.2 SPRING3.0新特性以及SPRING MVC (6)

2.3H IBERNATE连接数据库 (7)

2.4主要前台技术简介 (8)

2.4.1 JSP (8)

2.4.2 JavaScript (8)

2.4.3 CSS (8)

3 系统分析与总体设计 (9)

3.1系统功能分析 (9)

3.2系统功能模块设计 (10)

3.3数据库设计 (11)

3.3.1 教师模块数据库表结构 (11)

3.3.2 教师模块数据库表结构 (13)

3.3.3 学生模块数据库表结构 (13)

4 系统详细设计 (15)

4.1教师、学生、管理员登陆 (15)

4.2管理员发布选课通知 (20)

4.3管理员录入可选课程信息 (21)

4.4学生进行选课、退课 (22)

4.5教师统计已选自己课的结果 (24)

4.6管理员进行选课统计以及调节 (25)

5 设计过程中遇到的问题以及解决 (31)

5.1创建MAVEN项目后,为何目录生成不正确? (31)

5.2****未完待程序完成后,将典型问题列出**** (31)

参考文献 (35)

致谢 (37)

附录.............................................................................................................................. 错误!未定义书签。

附录一:登陆页面 .................................................................................................. 错误!未定义书签。

附录二:学生选课功能页面展示.......................................................................... 错误!未定义书签。

附录三:超出已选学分,提示信息 ..................................................................... 错误!未定义书签。

1 引言

1.1 课题研究背景

从计算机的普及和发展方面来看:一直以来,学生选课系统是学生们做毕业设计的热门题目,然而大多的题目设计多过于大众化,大多是运用一些简单的框架实现基本的简单选课功能。这种设计的方式存在着诸多缺点,如手续繁琐、工作量大、效率低下、出错率高、界面不友好等,而且程序过于繁琐,结果也不清晰、更新及维护都带来不少困难。随着科学技术的不断发展,计算机科学日渐成熟和普及,计算机已进入人类社会的各个领域并发挥着越来越重要的作用。与传统的选课方式相比,网上选课系统利用局域网为学生选课带来了便利。学生在学校的公共机房或者宿舍的个人电脑上通过网络来选课,只要选课还没有截止,学生能够灵活的修改自己的选课情况,大大提高了学校选课工作的效率。教务处的教师则通过选课系统的管理员子系统来管理学生的选课情况,使得学生选课工作达到系统化和自动化,大大提高了学校的工作效率。

作为计算机应用的一部分,javaWeb开发已经变得越来越普遍。相应的一些技术的产生给我们java程序的编写提供了很大的方便。同时,现在较为普遍的框架的SSH (spring,hibernate),以及MVC架构的支持使我们的计算机web技术使用更加淳熟。AJAX,JQuery技术的产生,为我们的计算机领web开发领域实现界面友好,异步信息存储的特点。使用起来十分人性话。因此,将这些相关的技术整合,应用到新的选课管理系统中,是十分必要的,从而构建由JQuery控制的前台界面,以及ajax实现信息的异步存取,经典的ssh框架的mvc结构。实现选课系统的,检索迅速、查找方便、可靠性高、存储量大、保密性好等特点。

1.2课题研究目的

选课管理系统将作为现代化的教务管理系统中的一部分,是每个高校的系统中必要的组成部分,实现学生选课管理的统一,准确化。该系统系统面向全校的学生以及教师,一次信息量相对较大,采用B/S结构,无需安装客户端,用户只需要在浏览器中输入相对应的地址即可,从服务器获得信息,方便快捷,更利于维护和更新。同时,由于我国高校是允许学生自由选课,在这里,学生选课时的制约因素比较复杂,工作量也很大,而且往往需要在较短的时间内完成。运用计算机辅助选课,即能实时地对大量选课数据进行检验和统计,十分方便地输出选课结果,同时也避免了人工处理时容易产生的错误。例如,一名学生不能同时上两门课,一个老师不能同一时间交两门课程等等。利用计算机辅助进行课表编排工作,既提高了排课工作的科学性,又可大大减轻管理人员

的工作强度,提高工作效率,因此,利用计算机辅助选课,可以节省大量人力,并且可以避免错误。

1.3课题可行性分析

J2EE平台的飞速发展,技术的成熟以及应用领域的不断扩大,为网上信息的交互提供了一个良好的平台和方便的操作界面。由于J2EE平台基于用户需求的设计方法使得该系统的使用跟家的人性化、个性化、跟贴近用户。以J2EE平台的构建思想来实现网上选课系统可以最大程度的做到实用性,可扩展性和可维护性相结合,安全性以及规范化原则。采用本系统,能够使整个系统内部所有信息的工作简化,提高工作效益。由于采用统一的数据信息,使相关资料能够快速地查询所需的数据、资料及其它信息的,使信息快速高效运行。

2 相关开发软件以及技术介绍

2.1 B/S结构介绍

2.5.1 B/S结构基础

B/S结构(Browser/Server结构)结构即浏览器和服务器结构。它是随着Internet技术的兴起,对C/S结构的一种变化或者改进的结构。在这种结构下,用户工作界面是通过WWW浏览器来实现,极少部分事务逻辑在前端(Browser)实现,但是主要事务逻辑在服务器端(Server)实现形成所谓三层结构。这样就大大简化了客户端电脑载荷,减轻了系统维护与升级的成本和工作量,降低了用户的总体成本(TCO)。以目前的技术看,局域网建立B/S结构的网络应用,并通过Internet/Intranet模式下数据库应用,相对易于把握、成本也是较低的。它是一次性到位的开发,能实现不同的人员,从不同的地点,以不同的接入方式(比如LAN, WAN, Internet/Intranet等)访问和操作共同的数据库,它能有效地保护数据平台和管理访问权限,服务器数据库也很安全。

B/S结构最大的优点就是可以在任何地方进行操作而不用安装任何专门的软件。只要有一台能上网的电脑就能使用,客户端零维护。系统的扩展非常容易,只要能上网,再由系统管理员分配一个用户名和密码,就可以使用了。甚至可以在线申请,通过公司内部的安全认证(如CA证书)后,不需要人的参与,系统可以自动分配给用户一个账号进入系统。

B/S结构系统的工作原理图,如图2-1所示。

图2-1 B/S结构系统的工作原理图

2.5.2B/S架构软件的优势与劣势

(1) 维护和升级方式简单

目前,软件系统的改进和升级越来越频繁,B/S架构的产品明显体现着更为方便的特性。对一个稍微较大的单位来说,系统管理人员如果需要在几百甚至上千部电脑之间来回奔跑,效率和工作量是可想而知的,但B/S架构的软件只需要管理服务器就行了,所有的客户端只是浏览器,根本不需要做任何的维护。无论用户的规模有多大,有多少分支机构都不会增加任何维护升级的工作量,所有的操作只需要针对服务器进行。如果是异地,只需要把服务器连接专网即可,实现远程维护、升级和共享。所以客户机越来越“瘦”,而服务器越来越“胖”是将来信息化发展的主流方向。今后,软件升级和维护会越来越容易,而使用起来会越来越简单,这对用户人力、物力、时间、费用的节省是显而易见的,惊人的。因此,维护和升级革命的方式是“瘦”客户机,“胖”服务器。

(2) 成本降低,选择更多

现在的趋势是凡使用B/S架构的应用管理软件,只需安装在Linux服务器上即可,而且安全性高。避免了高维护成本的windows系统,而且能够使大部分人使用Windows作为桌面操作系统电脑不受影响。

(3) 应用服务器运行数据负荷较重

由于B/S架构管理软件只安装在服务器端(Server)上,网络管理人员只需要管理服务器就行了,用户界面主要事务逻辑在服务器端(Server)完全通过WWW浏览器实现,极少部分事务逻辑在前端(Browser)实现,所有的客户端只有浏览器,网络管理人员只需要做硬件维护。但是,应用服务器运行数据负荷较重,一旦发生服务器“崩溃”等问题,后果不堪设想。因此,必须备有数据库存储服务器,以防万一。

2.5.3B /S与C/S结构软件技术上的比较

C/S(客户机服务器模式)结构软件分为客户机和服务器两层,客户机不是毫无运算能力的输入、输出设备,而是具有了一定的数据处理和数据存储能力,通过把应用软件的计算和数据合理地分配在客户机和服务器两端,可以有效地降低网络通信量和服务器运算量。由于服务器连接个数和数据通信量的限制,这种结构的软件适于在用户数目不多的局域网内使用。国内目前的大部分EKP(财务)软件产品即属于此类结构。

B/S(浏览器服务器模式)是随着Internet技术的兴起,对C/S结构的一种改进。在这种结构下,软件应用的业务逻辑完全在应用服务器端实现,用户表现完全在Web服务器实现,客户端只需要浏览器即可进行业务处理,是一种全新的软件系统构造技术,这种结构更成为当今应用软件的首选体系结构。

(1)数据安全性比较

由于C/S结构软件的数据分布特性,客户端所发生的火灾、盗抢、地震、病毒、黑客等都成了可怕的数据杀手。另外,对于集团级的异地软件应用,C/S结构的软件必须在各地安装多个服务器,并在多个服务器之间进行数据同步。如此一来,每个数据点上的数据安全都影响了整个应用的数据安全。所以,对于集团级的大型应用来讲,C/S结构软件的安全性是令人无法接受的。对于B/S结构的软件来讲,由于其数据集中存储于总部的数据库服务器,客户端不保存任何业务数据和数据库连接信息,也无需进行什么数据同步,所以这些安全问题也就自然不存在了。

(2)数据一致性比较

在C/S结构软件的解决方案里,对于异地经营的大型集团都采用各地安装区域级服务器,然后再进行数据同步的模式。这些服务器每天必须同步完毕之后,总部才可得到最终的数据。由于局部网络故障造成个别数据库不能同步不说,即使同步上来,各服务器也不是一个时点上的数据,数据永远无法一致,不能用于决策。对于B/S结构的软件来讲,其数据是集中存放的,客户端发生的每一笔业务单据都直接进入到中央数据库,不存在数据一致性的问题。

(3)数据实时性比较

在集团级应用里,C/S结构不可能随时随地看到当前业务的发生情况,看到的都是事后数据。而B/S结构则不同,它可以实时看到当前发生的所有业务,方便了快速决策,有效地避免了企业损失。

(4)数据溯源性比较

由于B/S结构的数据是集中存放的,所以总公司可以直接追溯到各级分支机构(分公司、门店)的原始业务单据,也就是说看到的结果可溯源。大部分C/S结构的软件则不同,为了减少数据通信量,仅仅上传中间报表数据,在总部不可能查到各分支机构(分公司、门店)的原始单据。

(5)服务响应及时性比较

相关主题