泰 山 学 院
本科毕业论文(设计)
基于B/S架构的泰山学院网上选课系统
所 在 学 院 信息科学技术学院 专 业 名 称 软件工程 申请学士学位所属学科 工 学 年 级 2011级 学生姓名、学号 李长辉 ********** 指导教师姓名、职称 卞峰 讲师 完 成 日 期 2013年 5 月 10 日
摘要
摘 要
近年来,随着在校大学生人数的不断增加,教务系统的数据量也不断上涨,加之现如今各高校对学生在校期间所修学分的重视程度,导致大多数高校的大学生在校期间因为担心自己的学分修不满进而影响到自己的毕业事宜,从而会在每个学期选修一到两门的公共选修课,另外,还会有一部分学生由于想拓宽一下自己的知识面,拓展一下自己的视野而去选择自己想要辅修的课程,这无疑更加大了系统的数据量和工作量,并且也加重了教务处工作人员的任务负担,单纯靠手工处理工作效率会非常的低,而且也不能达到最终的目的,因此,学生网上选课系统也就显示出了他本身的重要性,随之也就应运而生。
本学生网上选课系统采用ORACLE数据库,Tomcat服务器等开发环境,运用JSP技术,基于B/S模式,将学生网上选课与网上自动排课进行了有机结合,能够方便快捷高效的实现对学生选课情况的统计与选修课程的安排,简化了学生的选课流程,提高了工作效率。
关键词:ORACLE数据库,Tomcat服务器,JSP技术,浏览器/服务器模式
II
ABSTRACT
ABSTRACT
In recent years, with the increasing number of college students, the educational
administration system data quantity also rising, and now the students during the school credits value degree, cause the majority of college students during the period of school because of concerns about their credit sand affect their dissatisfaction with the graduation matters, so will be elective Public Elective course a door, to two in each semester in addition, part of the students due to broaden your knowledge of their own will
,
expand your
horizons and to want
to
choose
their
own minor courses, which is undoubtedly a greater amount of data the system and workload, and also increased the staff of the registry task burden, simple on the work efficiency of manual processing will be very low, but also can not achieve the ultimate objective。Therefore, the student online course selection system is also demonstrated the importance of his own, will also emerge as the times require.
The student online course selection system using ORACLE database, Tomcat server development environment, JSP technology,based on the B/S Mode,the students online classes and online automatic course scheduling are organically combined, can conveniently and efficiently realize statistics course for student switch the elective course arrangement, simplifies the student enrollment process, improve work efficiency.
Keywords: ORACLE database, Tomcat server,JSP technology, the browser / Server Mode
III
摘要
目 录
1引言 ................................................................... 0 1.1研究背景 ............................................................. 0 1.2研究意义 ............................................................. 0 2相关技术介绍 ............................................................ 0 2。1 JSP技术 ............................................................ 1 2.2 ORACLE数据库 ........................................................ 1 2.3 B/S结构 ............................................................. 2 3需求分析 ................................................................ 3 3。1概述 ................................................................ 3 3.2 系统需求分析 ........................................................ 3 3。3需求分析总结 ........................................................ 9 4系统设计 ............................................................... 12 4。1总体设计 ........................................................... 12 4.2系统详细设计 ........................................................ 13 5系统实现 ............................................................... 23 5。1开发环境的搭建 ..................................................... 23 5.2系统实施 ............................................................ 24 6系统技术分析 ........................................................... 36 7结束语................................................................. 40 参考文献 ................................................................ 42 致谢 .................................................................... 43
0
泰山学院本科毕业论文(设计)
1引言
1.1研究背景
随着计算机技术的发展,计算机应用越来越深入到人们日常生活的每个领域,计算机管理作为其中一个重要组成部分,也以它独特的优势,渐渐代替了原始的手工管理,学生选课信息作为学校管理的重要部分,由于其信息量大,给以后的查询、修改等操作带来不便,自然需要使用计算机来管理这些信息,这样一来,学生选课系统出现了[1]。学生选课系统是一个学校不可缺少的部分,它的内容对于学校的决策者和管理者来说都至关重要,所以学生选课系统在为同学节省了时间的同时,也减少了不必要的步骤,更方便了管理员的管理,网上选课系统为同学提供了一个自由选择的平台,学生可以选修规定范围内的课程,查看已修学分总数,还可以修改个人信息.该系统在方便了学生选课的同时,教师也可以不用像以前那样手工对学生的选课情况进行处理统计,因此也大大地简化了教师的工作量,让教师有更多的时间投入到备课以及科研工作当中去。在这样一个社会发展的大趋势下,学生选课系统的出现无疑提高了学校的管理效率,并且快速地融入到了当今科技信息化时代当中去。
1.2研究意义
一直以来,人们使用人工的方式管理文件档案,但是这种管理方式存在着许多缺点:效率低,保密性差,另外时间一长,将产生大量的文件和数据,这对于查找、更新和维护都带来了不少困难;而利用先进的计算机技术实现对学生选课信息的管理,可以代替过去传统的人工管理信息的方式,极大地提高了教师在管理学生选课信息时的工作效率,简化了教师的统计管理工作,在学生选课方面,学生选课系统能够为学生提供快捷方便的选课信息查询手段,让学生能够方便清晰的了解到参与选课的课程信息、课程剩余量、任课教师、课程学分以及考查方式等各方面信息,大大提高了学生的选课效率,加强了学生选课的目的性,并且利用计
0
泰山学院本科毕业论文(设计)
算机网络技术进行网上选课,可以存储所有学生选课所产生的大量的选课信息,并且成本低,不需要耗费大量的人力物力进行统计选课信息,极大地提高了教务管理的效率,因此,学生选课系统是学校科学管理的重要组成部分,是学校与现代化教育接轨的重要条件。
2相关技术介绍
2。1 JSP技术
JSP技术使用JAVA编程语言编写,将web页面的开发与程序逻辑的开发进行分离开来,该技术使用HTML技术来设计交互界面,使用JSP标记或脚本生成页面上的动态内容,绝大多数JSP页面依赖于可重用的、跨平台的组件来执行应用程序要求的复杂处理。JSP技术封装了许多功能,这些功能是生成与JSP相关的HTML或XML的动态内容是所需要的[2].标准的JSP标记能够访问和实例化JavaBean组件,设置或检索组建的属性,下载Applet,以及执行使用其他方法难以实现的功能。JSP标记具有可扩充性,允许开发者扩展JSP标记,开发人员也能够定制常用功能标记库。由于页面制作者可以使用标记可中的功能,大大减少了对脚本语言的依赖,并降低了页面制作的复杂度。由于JSP页面的内置脚本是基于Java语言的,而且所有的JSP都被编译成Java Servlet,所以JSP具有Java的特点,如健全的存储管理、安全性、跨平台特性、“一次编写,各处运行”等。
2.2 ORACLE数据库
Oracle Database是一款以分布式数据库为核心的数据库产品,开发者为美国的甲骨文公司。由于它完整的数据管理功能、分布式处理功能以及它极强的兼容性和跨平台性,成为了当今世界上最流行的C/S或B/S体系结构的数据库之一。Oracle中一些创新特性可最大限度地提高资源使用率和灵活性,并且采用的是并行服务器模式。Oracle的特点如下:
(1)它具有完整的数据管理功能:其中包括可以存储大量的数据、可以持久地
1
泰山学院本科毕业论文(设计)
保存数据、可以对数据进行共享、安全性较高[3]。
(2)它是一款具有完备关系的产品:
Oracle产品严格遵守信息准则、保证访问的准则、视图更新准则、数据物理性和逻辑性独立准则.
(3)Oracle具有比较完善的分布式处理功能
Oraclerdbms、sql*Net、SQL*CONNECT和其他非ORACLE的关系型产品构成的Oracle分布式数据库体现了它完善的分布式处理能力
(4)Oracle可以更加轻松地实现符合技术发展趋势的数据仓库操作 Oracle数据库的主要几点优点为:
(1)具有很强的可用性 (2)具有很强的可扩展性 (3)具有很强的数据安全性 (4)具有很强的稳定性
2。3 B/S结构
B/S结构即浏览器和服务器结构,它是随着Internet技术的兴起,对C/S结构的一种变化或者改进的结构[4].在这种架构下,极少部分事务逻辑是在前端实现,大部分主要是在Server端实现,WEB浏览器是最主要的,是一种网络结构模式。该架构就是用浏览器为应用程序客户端操作服务器,是由美国微软公司研发的,目前,该技术已经被世界各国所掌握,在世界上有自己一定的市场份额和客户群,国内公司B/S技术开发出的产品也很多,该结构所开发的项目维护和升级方式简单,所有的客户端只是浏览器,根本不需要做任何的维护,无论用户的规模有多大,有多少分支机构都不会增加人和维护升级的工作量,所有的操作只需要针对服务器进行,并且利用该结构进行开发大大降低了项目的开发成本,并且可以有更多的选择,但是B/S结构由于建立在广域网之上,面向的是所有的客户群,任何人都可以通过互联网访问到自己的程序,因此对安全的控制相对较弱一些。B/S架构图如图2-3所示:
2
泰山学院本科毕业论文(设计)
客户端浏览器Web服务器数据库服务器客户端浏览器
图2-3 B/S结构原理图
3需求分析
3。1概述
需求分析阶段的目的是对各种需求信息进行分析,消除错误,刻画细节等。并且在该阶段对系统的功能也应该有一个初步的定论.当今社会,高校课程管理制度的改革,加上互联网技术的迅速发展以及普及,各高校更加青睐于建立一个完善的学生网上选课系统,将学生的选课工作搬到互联网上,使得教师更加清楚便捷地了解到学生的选课信息,这样一来,不仅大大提高了工作效率,更加节省了人力物力,并且保证了信息的安全性,方便了学生的选课工作,学生网上选课系统将以前没有互联网时选课所需要的步骤交给了互联网和系统去处理,并且节省了大量的不必要的时间,节省了大量的纸张,让选课变得轻而易举。因此,我们很有必要去建立一个学生网上选课系统,结合以前学生选课的流程和目前选课所需要的必要步骤,我们可以得到建立这个选课系统的基本需求,根据以上信息,我们也可以初步确定本系统需要采用B/S模式,结合使用JSP技术和tomcat服务器,从而实现一个完善的系统的学生网上选课系统.
3.2 系统需求分析
3
泰山学院本科毕业论文(设计)
3。2.1可行性分析
第一,对该系统技术上的可行性进行分析,学生网上选课系统主要运用JSP+Servlet技术、Oracle数据库技术以及Java编程语言,使用MyEclipse进行编译,在tomcat服务器上进行部署,在浏览器上进行运行,因此该系统主要是利用WEB界面与客户进行交互从而将学生选课、课程管理、教师管理有机的结合起来,并且在如今科技蓬勃发展互联网功能强大的时代,利用现有的技术知识来实现学生选课系统所具有的功能是一件比较简单的事情[5]。
第二,对该系统操作上的可行性进行分析,在以前,学生选课是需要进行手工进行以及处理,主要选课步骤无非就是公布参选课程信息,学生根据需求进行报名,教师对课程的报名情况进行统计并且处理,最后对参选课程进行人工排课,而这些在人工时代看似复杂的步骤如今在学生选课系统上都可以利用代码进行功能实现,并且可以尽量将步骤更加简化,使得选课操作更加便捷高效,因此利用学生选课系统在选课操作上也是能够轻易完成的。
第三,对该系统经济上的可行性进行分析,学生选课系统主要是利用MyEclipse开发工具进行代码开发,使用Oracle数据库进行存储数据信息,在tomcat环境下进行部署运行,所以该选课系统是不需要开发成本的,只需要一台计算机就可以完成项目的开发和测试。因此,学生选课系统的开发完全符合经济的可行性[4].
3.2.2功能需求分析
本系统开发的目的是要实现学生的选课以及教师了解实时选课情况的功能。学生网上选课系统可以为学生提供参加选课的课程信息,包括课程的学分、任课教师、上课地点、授课时间、考查方式以及课余量等信息,学生可以在线进行选课、查看已选课程以及退选课等。对于教师,可以在线浏览自己被分配到的课程基本信息包括上课时间以及上课地点 、实时查看选择自己所负责课程的学生信息。该系统的管理员可以对课程信息进行管理以及增删改查操作,可以对学生以及教师的
4
泰山学院本科毕业论文(设计)
基本信息进行增删改查操作,可以在系统上发布通知,同时可以对院系、专业、教学楼以及教师等这些服务于课程和学生的基本信息进行基本的增删改查操作,而且管理员还可以对学生的选课和退课信息进行审核,因此,在本系统中,管理员拥有着最高的管理权限。该系统所实现的主要功能如下:
(1)管理员对学生信息、教师信息进行管理 (2)管理员对课程信息进行管理 (3)管理员对通知进行管理
(4)管理员对院系信息、专业信息、教学楼信息、教室信息进行管理 (5)管理员对学生的选课和退课申请进行审核
(6)教师对自己负责教授的课程进行查看、查看选择由自己负责课程的学生名单以及基本信息
(7)学生浏览课程信息,包括任课教师、课程学分以及课余量 (8)学生进行选课操作,并且可以实时查看自己的选课结果
(9)学生查看自己已经选择的所有课程,并且可以对已经选择的课程进行退课操作,而且同样可以实时查看关注自己的退课审核结果。
(10)学生、教师、管理员可以修改自己的密码,学生和教师可以查看自己的个人信息以及系统的公告
3。2.3系统性能需求分析
学生选课系统针对学生选课等一系列功能进行设计编写,系统最终应在满足选课操作、选课信息管理等所有基本功能的前提下,还要保证系统长时间运行的稳定性,频繁访问所产生的大量数据处理的准确性,以及系统使用的安全性、高效性,并且还要确保系统有较强的连贯性,从而做到能够让客户在使用的过程中简单易懂,熟练操作。
3.2。4系统用例分析
系统用例是用来清晰地描述系统的参与者需要系统提供什么服务以及用户需
5
泰山学院本科毕业论文(设计)
要提供给系统的服务,其中每个参与者可以参与多个用例的实现,并且参与者与用例之间必然存在着某种联系[6].本系统中,总共包括管理员、教师、学生三个参与者,其中管理员可以实现教师信息管理、学生信息管理、课程信息管理、通知信息管理、院系信息管理、专业信息管理、教学楼信息管理、教室信息管理等功能,即对每个功能模块的增加、删除、修改和查询的操作,其中查询操作包括查询全部信息以及按条件查询信息,另外,管理员可以对学生的选课和退课申请进行审核操作;教师则可以实现查看个人基本信息、查看个人负责教授的课程信息、查看选择本人所教课程的学生信息、查看通知、修改个人密码等功能,而学生则可以实现查看查看个人基本信息、查看所有课程信息、进行选课并且可以查看个人选课结果、查看个人已选课程、退选自己的课程以及查看退课结果、修改个人密码、查看通知等功能。本学生网上选课系统用例图如图3-1所示:
6
泰山学院本科毕业论文(设计)
删除学生信息修改学生信息< 图3—1—1系统管理员用例图 7 泰山学院本科毕业论文(设计) 查看个人信息修改个人信息< 图3—1-2教师系统用例图 8 泰山学院本科毕业论文(设计) 查看个人信息< 图3—1—3学生系统用例图 3。3需求分析总结 本泰山学院学生网上选课系统所要实现的功能是一个完备的网上选课系统都应具备的,管理员、教师与学生的成功登录应该进入专属于该角色的系统主界面,管理员登陆成功之后将进入系统管理员主界面,该主界面中包含的功能有学生信 9 泰山学院本科毕业论文(设计) 息管理、教师信息管理、课程信息管理、教学楼信息管理、教师信息管理、院系信息管理、专业信息管理、通知信息管理、课程审核管理等,管理员可以分别进行操作,而教师登录进入系统后,呈现的将是对于教师的系统主界面,其中的功能操作主要包含个人信息管理、个人所负责课程的浏览管理以及查看系统公告三个,如果登录所选择的角色是学生的话,那么登录成功之后所跳转的系统主界面中将包含可供学生选择操作的各项功能,其中学生可以选择个人信息管理、个人选课管理、个人退课管理或者查看通知进行操作,在个人选课管理中,学生可以查看所有的课程信息并且对课余量充足的课程的进行选课并且在选择每门课程之后可以在查看选课结果中查询自己的选课审核结果,在个人退课管理中,学生可以查看自己所有已经选择的课程信息并且可以根据自己的需要执行退课操作并且同样可以在查看退课结果中查询自己的退课审核结果。系统框架图如图3—2所示: 泰山学院网上选课系统管理员教师学生 图3-2系统框架图 管理员学生信息管理教师信息管理院系信息管理专业信息管理教学楼信息管理教室信息管理课程信息管理通知信息管理审核管理添加学生信息删除学生信息修改学生信息查询学生信息添加教师信息删除教师信息修改教师信息查询教师信息添加院系信息删除院系信息修改院系信息查询院系信息添加专业信息删除专业信息修改专业信息查询专业信息添加教学楼信息删除教学楼信息修改教学楼信息查询教学楼信息添加教室信息删除教室信息修改教室信息查询教室信息添加课程信息删除课程信息修改课程信息查询课程信息添加通知信息删除通知信息修改通知信息查询通知信息审核学生选课审核学生退课图3—3管理员框架图 10 泰山学院本科毕业论文(设计) 教师个人信息管理个人授课管理查看系统公告查看个人信息修改个人密码浏览个人所授课程查看个人所教学生 图3-4教师框架图 学生个人信息管理个人选课管理个人退课管理查看公告查看个人信息修改个人密码浏览课程信息选课查看个人选课结果查看个人已选课程退课查看个人退课结果 图3-5学生框架图 11 泰山学院本科毕业论文(设计) 4系统设计 4.1总体设计 系统的开发过程总离不开系统的设计,所有的开发都是由系统设计为核心的[7].系统的开发过程也就是一个系统的生命周期,系统设计便是这一个系统生命周期中必不可少的一个重要阶段和组成部分,而一个完备良好的系统设计也必须要遵循实用、可靠、先进、可扩充、安全、可自适应、用户界面友好、健壮八大基本原则,也就要求系统在符合用户需求的前提下,必须具有必要的安全保护,并且具备较强的抗干扰能力和容错能力,能够很好地适应并能灵活应对不断发展和日渐完善的业务需求及开发方法。本系统总结之前的需求分析,共分为三大功能管理模块,对应三个系统角色,分别为系统管理员,教师以及学生,其中系统管理员模块,有系统管理员登录操作,可以完成学生信息管理、教师信息管理、课程信息管理、院系信息管理、专业信息管理、教室信息管理、教学楼信息管理、通知信息的管理,具体操作为各项信息的增删改查操作,同时也可以对学生的选课和退课操作进行审核操作,包括同意与不同意选退课,因此管理员模块拥有该系统最高的权限;而教师模块是由教师登录,并且可以完成查看个人所教授的课程信息和选择个人教授课程的学生信息、查看通知、对个人基本信息进行查看和密码修改的操作;对于学生模块,由学生用户登录,进入系统之后可以查看个人信息、修改个人密码、浏览课程信息并提交选课申请、查看个人选课结果、查看个人所选课程并可提交退课申请、查看个人退课结果以及查看通知公告。 12 泰山学院本科毕业论文(设计) 开始管理员登陆教师登录学生登录泰山学院选课系统管理员主界面泰山学院选课系统教师主界面泰山学院选课系统学生主界面学生信息管理教师信息管理院系信息管理个人信息管理个人信息管理个人选课管理专业信息管理教学楼信息管理教室信息管理个人授课管理个人退课管理查看公告通告信息管理课程信息管理审核管理查看公告结束 图4—1系统整体流程图 4.2系统详细设计 4.2。1数据库设计 数据库设计是一个系统能够顺利运行并代替人工完成各项功能的基础,在系统的研发过程中,数据库的建立以及系统的数据关系的确定都属于数据库设计的范畴,是系统开发过程中必不可少的一项核心技术,其主要含义是指在给定的一个应用环境中,能够建立一个可以有效存储数据并且满足用户各种应用需求的最优数据库模式,从而搭建好一个可以更人性化服务于客户的数据库应用系统。数据 13 泰山学院本科毕业论文(设计) 库设计的过程主要包括在一个数据库系统中对数据库结构的设计以及对数据库中包含各类信息的表的构建,完成数据库设计过程的前提是得到一个操作系统的支持,而数据库最佳设计只能是不断探索求精的,这个过程更加需要使数据库对象之间的关系结构化。一般在数据库设计之前需要绘制E-R图表从而确定各个对象与属性之间的关系以及对象与对象之间一对多、多对多的关系,之后则需要对表和字段进行设计,其中应该把数据库将来可能产生的各种变化以及他们之间的关系考虑在内[8],另外,例如各个数据表的主键、外键设置,一个数据表内的唯一约束、检查约束、默认约束等,都是符合数据表设计的标准化和规范化原则的表现。本系统采用的是Oracle数据库。 4.2.1。1数据库概念设计 通过以上需求分析和系统设计,该系统数据库设计主要包括一下数据库实体:管理员实体,学生实体,教师实体,院系实体,专业实体,教学楼实体,教室实体,课程实体以及公告实体,并且各数据库实体以及各实体所包含字段如下: (1)管理员实体:ID(自动编号)、管理员账号、管理员密码这三个字段. (2)学生实体:学生学号、学生密码、学生姓名、学生性别、院系编号、院系名称、专业编号、专业名称、年级这九个字段。 (3)教师实体:教师工号、教室用户名、教师密码、教师姓名、教师性别、教师联系方式这六个字段。 (4)院系实体:ID(自动增长)、院系名称这两个字段. (5)专业实体:ID(自动增长)、专业名称、院系编号、院系名称这四个字段。 (6)教学楼实体:ID(自动增长)、教学楼名称这两个字段. (7)教室实体:ID(自动增长)、教室号码、教学楼编号、教学楼名称这四个字段。 (8)课程实体:ID(自动增长)、课程名称、课程学分、课程教学周、上课 14 泰山学院本科毕业论文(设计) 时间、院系编号、院系名称、教师编号、教师姓名、上课地点、课程总容量、课余量这12个字段。 (9)公告实体:ID(自动增长)、公告内容、发布时间(系统时间)这三个字段。 管理员实体和其他各实体之间存在一对多的关系,其关系图如图4—2所示: 专业实体N院系实体管理教师实体N1管理管理员实体1N管理N课程实体教学楼实体 图4—2 数据库E—R图 4.2.1.2 数据库逻辑设计 根据E-R图,本数据库设计所包含的数据表主要有:管理员信息表t_manager,院系信息表t_department,专业信息表t_major,学生信息表t_student,教学楼信息表t_teachbuilding,教室信息表t_classroom,课程信息表t_course,教师信息表t_teacher,公告信息表t_announce,学生选课表t_selectcourse,学生退课表t_backcourse,教师教学表t_teachcourse.表的结构如下: (1) 管理员表t_manager,表中各字段设置如表4—1所示: 15 N1学生实体N1管理1管理NN教室实体公告实体泰山学院本科毕业论文(设计) 表4—1管理员信息表 字段 类型 属性 空 注释 mid int unsigned 否 主键,编号 musername Varchar2(100) 管理员用户名 mpassword Varchar2(100) 登录密码 (2) 院系信息表t_department,该表中各字段设置如表4-2所示: 表4-2院系信息表 字段 类型 属性 空 注释 deid int unsigned 否 编号,主键,自动增长 dename Varchar2(100) 院系名称 (3) 专业信息表t_major,该表中各字段设置如表4-3所示: 表4—3专业信息表 字段 类型 属性 空 注释 mid int(4) unsigned 否 编号,主键,自动增长 mname Varchar2(100) 专业名称 (4) 学生信息表tb_cj,该表中各字段设置如表4-4所示: 表4—4学生信息表 字段 类型 属性 空 注释 stuid Varchar2(100) unsigned 否 学号,主键 stupass Varchar2(100) 密码 stuname Varchar2(100) 学生姓名 stusex Varchar2(10) 学生性别 deid int 院系编号 dename Varchar2(100) 院系名称 mid int 专业编号 mname Varchar2(100) 专业名称 grade Varchar2(50) 年级 (5) 教学楼信息表t_teachbuilding,表中各字段设置如表4-5所示: 表4-5教学楼信息表 字段 tbid tbname 类型 int(4) Varchar2(100) 属性 空 unsigned 否 16 注释 编号,自动增长,主键 教学楼名称 泰山学院本科毕业论文(设计) (6)教室信息表t_classroom,该表中各字段设置如表4—6所示: 表4-6教室信息表 字段 注释 编号,自动增长,crid int unsigned 否 主键 classroomid Varchar2(100) 教师号码 tbid int 教学楼编号 tbname Varchar2(100) 教学楼名称 (7)课程信息表t_course,该表中各字段设置如表4-7所示: 表4—7课程信息表 类型 属性 空 字段 类型 属性 空 注释 cid int unsigned 否 编号,主键 cname Varchar2(100) 课程名称 ccredit int 学分 cduration int 教学周次 cweekday Varchar2(50) 上课天数 cpart Varchar2(50) 上课节数 deid int 院系编号,外键 dename Varchar2(100) 院系名称 teano Varchar2(100) 教师工号,外键 teaname Varchar2(100) 教室名称 cplace Varchar2(100) 上课地点 allcount int 课总容量 remaincount int 课余量 (8)教师信息表t_teacher,该表中各字段设置如表4—8所示: 表4—8教师信息表 字段 类型 属性 空 注释 teano Varchar2(100) unsigned 否 教师编号,主键 teausername Varchar2(100) 用户名 teapass Varchar2(100) 密码 teaname Varchar2(100) 教师姓名 teasex Varchar2(10) 教师性别 teatel Varchar2(50) 联系方式 (9)公告信息表t_announce,该表中各字段设置如表4—9所示: 17 泰山学院本科毕业论文(设计) 表4-9公告信息表 字段 注释 编号,主键,自动aid int unsigned 否 增长 acontent Varchar2(2000) 公告正文 adate date 发布日期 (10)学生选课表t_selectcourse,该表中各字段设置如表4-10所示: 表4—10学生选课表 类型 属性 空 字段 注释 编号,主键,自动scid int unsigned 否 增长 stuid Varchar2(50) 学号,外键 stuname Varchar2(100) 学生姓名 cid int 课程编号,外键 cname Varchar2(100) 课程名称 ischeck Varchar2(10) 审核是否通过 (11)学生退课表t_backcourse,该表中各字段设置如表4—11所示: 表4-11学生退课表 类型 属性 空 字段 注释 编号,主键,自动bcid int unsigned 否 增长 stuid Varchar2(50) 学号,外键 stuname Varchar2(100) 学生姓名 cid int 课程编号,外键 cname Varchar2(100) 课程名称 ischeck Varchar2(10) 审核是否通过 (12)教师教学表t_teachcourse,该表中各字段设置如表4—11所示: 表4-12教师教学表 类型 属性 空 字段 tcid teano teaname cid 类型 int Varchar2(50) Varchar2(100) int 属性 空 unsigned 否 18 注释 编号,主键,自动增长 教师工号,外键 教师姓名 课程编号,外键 泰山学院本科毕业论文(设计) cname Varchar2(100) 课程名称 4。2.2各功能模块详细设计 本网上选课系统是为了方便学生在线进行选课以及方便教务工作人员管理和审核选课而设计的,基本实现了学生选课所需要的所有功能,满足了高校网上选课的各种需求,该系统在选课以及管理统计选课方面划分为四个模块,实现了十五个细节模块的管理,四大模块的具体设计如下: 4。2.2。1系统登录模块 本选课系统总共设置了三个不同的登录角色,分别为系统管理员、教师和学生,在login.jsp登陆界面输入用户名密码之后可以选择一个角色进行登录,当选择管理员角色之后,系统会在servlet文件CheckLogin.java获取输入的用户名和密码与数据库中管理员表中的用户名密码进行比对,如果比对成功,则用户将会成功登录管理员主界面managermain.jsp,如果比对失败,则会提示用户名或者密码输入错误;假如用户选择的是教师角色登录,则系统会利用同样的方法将用户输入的用户名和密码与数据库中的教师表内的教师工号密码进行比对,一旦比对成功,那么将跳转到教师主界面teachermain.jsp,如果比对失败,将提示用户名密码输入错误;如果用户选择的是学生角色登录,系统将利用相同的方法将用户名和密码与数据库中学生表的用户名密码进行比对,比对成功将会跳转到学生主界面studentmain.jsp;无论用户选择哪一个角色,比对成功之后都会与session中的值进行比对,如果该用户名已经存在,系统就会提示该用户已经在线,无法登录成功。系统登录流程图如图4—3所示: 19 泰山学院本科毕业论文(设计) 开始选择角色用户登录是否通过验证是系统管理员教师学生各细节模块的管理完成教师功能的操作进行学生选课的相关操作 图4—3系统登录流程图 4.2。2.2管理员模块 管理员管理模块,划分成学生信息管理、教师信息管理、院系信息管理、专业信息管理、课程信息管理、教室信息管理、公告信息管理、教学楼信息管理、审核选课与退课、修改个人密码以及注销登录十个细节小模块,其中管理员对学生信息、教室信息、院系信息、专业信息、课程信息、教师信息、公告信息、教学楼信息可以进行基本的增删改查操作,并且由于各个表之间存在主外键关系,因此在对教师信息、教室信息、院系信息、专业信息、教学楼信息进行修改删除的时候都会进行判断,假如某信息已被其他表使用,那么该信息将不能被删除;在审核选课与退课中,管理员可以获取到学生提交的选课或者退课申请并且选择同意或不同意进行提交,如果课余量不足,则会对管理员进行提醒余课不足;修改个人密码模块中管理员必须输入正确的旧密码才可以修改成功;注销登录模块是退出系统的操作。管理员模块框架图如图4—4所示: [9] 20 泰山学院本科毕业论文(设计) 管理员模块学生信息管理教师信息管理院系信息管理专业信息管理教学楼信息管理教室信息管理公告信息管理课程信息管理审核管理添加删除修改查询学生学生学生学生信息信息信息信息添加删除修改查询添加删除修改查询教师教师教师教师院系院系院系院系信息信息信息信息信息信息信息信息添加删除修改查询添加删除修改查询教学添加删除修改查询教学教学教学专业专业专业专业楼信教室教室教室教室楼楼楼信息信息信息信息息添加删除修改查询公告公告公告公告信息信息信息信息添加删除修改查询课程课程课程课程信息信息信息信息审核学生选课审核学生退课查询全条件查部学生询学生查询全条件查部教师询教师查询全条件查部院系询院系查询全条件查部专业询专业查询全条件查部教学询教学楼楼查询全条件查部教室询教室查询全条件查部公告询公告查询全条件查部课程询课程 图4—4管理员管理 4.2.2.3教师模块 教师模块是本选课系统中的核心模块之一,教师模块所包含的细节模块主要有个人信息管理、个人授课管理、系统公告三个,其中个人信息管理包括查看个人基本信息、修改个人密码,查看课程信息主要是查看个人所教的课程信息以及选课情况,系统公告模块包括查看管理员发布的系统公告。教师模块的框架图如图4-5所示: 21 泰山学院本科毕业论文(设计) 教师模块进入系统教师主界面查看个人详细信息修改个人密码浏览个人所授课程浏览个人所教学生信息查看系统公告查看全部课程信息按条件查看课程信息查看全部学生信息按条件查看学生信息查看全部公告按条件查看公告 图4—5教师管理模块 4.2。2。4学生模块 学生模块是本选课系统中业务逻辑最多的一个模块,也是该系统的一个主体,在学生模块中,总共分为个人信息管理、个人选课管理、退课管理三个小模块,个人信息模块中学生可以对自己的个人信息进行查看,并且可以修改自己的个人密码,修改密码需要输入旧密码才可以修改成功;个人选课管理中,学生可以浏览全部的课程信息,也可以按各种条件进行浏览课程信息,并且可以提交选课申请,在提交了选课申请之后,学生依然可以提交更多的选课申请,并且可以在查看个人选课结果中查看自己的选课结果,假如自己的选课申请没有通过,学生依然可以再进行提交选择该门课程的申请;在退课管理中,学生可以查看自己选择的课程并且根据自己的需要选择提交退课申请,提交完退课申请之后可以实时关注查看个人退课结果,如果没有申请没有通过,那么可以再次提交退课申请。学生模块的框架图如图4—6所示: 22 泰山学院本科毕业论文(设计) 学生模块进入系统学生主界面查看个人信息修改个人密码浏览所有课程信息查看全部选课结果查看已选课程查看全部退课结果查看系统公告按条件浏览课程信息选课按条件查看选课结果退课按条件查看选课结果按条件查看系统公告选课 图4—6学生信息管理 5系统实现 5。1开发环境的搭建 5.1。1 Windows系统下所用软件 (1)jdk-6u43—windows—i586。exe (2)plsqldev804。exe (3)apache-tomcat-7.0。21.exe (4)myeclipse—10。0-offline—installer—windows.exe (5)StarUML.exe (6)Microsoft Visio 2010 5.1。2环境搭建 (1)JDK环境变量配置 第一,下载并且安装jdk—6u43—windows—i586。exe文件. 23 泰山学院本科毕业论文(设计) 第二,确保安装好JDK之后对环境变量进行配置,具体配置的步骤如下: 找到“我的电脑”之后右键单击-〉选择最后一项“属性”->点击弹出的对话框中的“高级系统设置”选项卡->单击对话框下方的“环境变量”-〉在打开的“环境变量”窗口中单击“系统变量”下的“新建”按钮—〉“变量名\"文本框中输入“JAVA_HOME”—〉将“变量值”输入自己电脑JDK的安装路径D:\\Program Files\\jdk后单击“确定\"保存。 之后在“系统变量”中找到“path”的系统变量名-〉选中之后点击“编辑”按钮->在弹出的窗口中的“变量值”后输入自己电脑JDK中bin文件夹的路径D:\\Program File\\jdk\\bin—>单击“确定\"保存。 (2)双击myeclipse-10。0—offline—installer-windows.exe文件,在弹出的窗口中选择安装的路径进行安装MyEclipse开发软件。 (3)双击StarUML。exe文件,在弹出的窗口中选择安装路径,完成安装之后双击启动StarUML软件,可以在该软件中绘制用例图、流程图、类图、序列图、状态图、活动图、通信图、模块图、部署图以及复合结构图等,可以帮助完成系统开发数据库设计阶段的各项工作,并且可以将系统的各项功能以及工作流程更加简明扼要的描述出来,使得项目的开发更加有序化、层次化。 (4)在电脑上双击Microsoft Visio 2010的安装文件进行安装Visio绘图软件,该软件可以绘制系统的框架图、E-R图等各种图形。 5。2系统实施 5。2。1用户的登录 (1)功能介绍 用户在登录系统之前必须要先输入自己的用户名和密码,然后选择一个角色进行提交登录,系统将输入的用户名和密码与数据库里相对应的表中的用户名密码进行查询,如果在对应角色的表存在用户名与密码相同的记录,则跳转到用户的 24 泰山学院本科毕业论文(设计) 主界面,成功登陆到系统,否则将会返回到登陆界面并且提示用户名或密码错误,登录失败,要求重新登录。用户也可以点击重置按钮清空已经输入的用户名和密码重新输入。该系统的登录界面如图5—1所示: (2)界面实现 图5—1管理员登陆界面 5.2.2各用户系统主界面 (1)功能介绍 本选课系统一共分为了四大模块,除了用户的登录模块,还包括管理员管理模块、教师模块、学生模块,这三大功能管理模块分别是在通过用户登录验证的情况下才会展示出来的,同时用户也就进入了该选课系统的主要模块。管理员主界面、学生主界面以及教师主界面如图5—2、5-3、5-4所示: (2)界面实现: 25 泰山学院本科毕业论文(设计) 图5—2管理员主界面 图5-3学生主界面 26 泰山学院本科毕业论文(设计) 图5—4教师主界面 5.2.3管理员管理学生信息 (1)功能介绍 该选课系统管理员模块主要分为九个功能模块,管理员用户登录进入系统之后,可以点击展开学生信息管理选项卡,在该选项卡中,管理员可以录入学生信息,同时也可以删除学生信息、修改学生信息、分页查看全部学生信息以及按条件查看学生信息。学生信息管理如图5—4所示: (2)界面实现: 27 泰山学院本科毕业论文(设计) 图5-3学生信息管理添加 图5—4学生信息管理查询 5。2.4教师信息管理 (1)功能介绍 管理员登录系统之后,可以在教师信息管理选项卡中对教师信息进行录入,如果存在相同的教师工号,则会提示工号相同,重新输入,否则信息将添加成功, 28 泰山学院本科毕业论文(设计) 管理员在点击教师信息维护按钮后,会将所有的教师信息分页显示,并且可以点击删除、修改按钮对需要进行操作的教师信息进行删除、修改操作,另外管理员还可以输入查询条件按条件分页查询教师信息。教师信息管理如图5—6所示. (2)界面实现 图5—5教师信息查询 图5-5教师信息添加 5.2。5课程信息管理 (1)功能介绍 29 泰山学院本科毕业论文(设计) 管理员成功登录该选课系统,在展开课程信息管理之后可以对课程的基本信息进行录入,假如录入的课程名称已经存在,则系统会提示已存在并且需要重新输入,如果不同的课程在同一时间的同一上课地点发生冲突,则会提示上课地点发生冲突并且需要重新输入,管理员在课程信息维护中可以分页查询到所有的课程信息并且进行修改、删除、条件查询等基本操作,并且在每门课程的后面管理员还可以选择查看选择该门课程的所有学生名单以及学生的基本信息。 (2)界面实现 图5—6课程信息管理录入 30 泰山学院本科毕业论文(设计) 图5-6课程信息管理录入 5。2.6其他管理 系统管理员登录进入系统之后还可以对专业、院系、教室、公告以及教学楼基本信息进行管理,主要操作就是这些基本信息的添加、删除、修改、详细查询以及条件查询,这些功能模块与以上实现的功能类似,由于篇幅问题,因此该论文就不再进行一一详述。 5。2.7审核管理 (1)功能介绍 管理员进入审核管理功能模块,可以选择审核选课和审核退课操作,在审核选课和退课时,管理员可以看到学生所提交过来的选课退课申请,管理员根据实际情况作出同意或者不同意选课退课的决定,当审核选课时,如果课余量不足,将无法提交同意学生的选课申请。审核管理界面如图所示: (3)界面实现 图5—6审核管理审核选课 31 泰山学院本科毕业论文(设计) 图5-6审核管理审核退课 5.2。7学生模块选课退课管理 (1)功能介绍 学生在成功登录该系统之后,可以选择选课管理或者退课管理功能模块进行操作,在选课管理功能模块中,学生可以浏览课程信息并且可以根据自己需要点击选课按钮进行选课操作,如果选择课程之后会将申请提交到管理员等待审核,选课按钮将会变为待审核,并且系统将会提供给学生一个选课序号,学生将不能再次提交该门课程的选课申请,学生可以选择查看个人选课结果按钮并且输入自己的选课序号对个人选课结果进行实时查看,也可以查看所有的选课审核结果,假如选课审核不通过,学生还可以对该门课程再次执行选课操作.同时学生也可以在退课管理模块中选择查看个人已选课程进行查看,并且可以根据自己的需要点击每门课程后的退课按钮对已经选择的课程执行退课操作,系统将会提供给学生一个退课序号,完成退课操作之后,依然是需要等待管理员对退课进行审核,学生可以点击查看退课结果输入自己的退课序号实时关注自己的退课审核结果,也可以在查看退课结果中查看所有退课的审核记录,如果退课申请没有通过,学生还可以再次对该门课程进行退课,否则学生则退课成功,并且可以再次选择该门课程。选课退课管理如图所示: 32 泰山学院本科毕业论文(设计) (2)界面实现 图5-6学生选课管理选课 图5-7学生选课管理查看个人选课结果 33 泰山学院本科毕业论文(设计) 图5—8学生退课管理退课 图5-9学生退课管理查看个人退课结果 5.2。7教师模块授课信息管理 (1)功能介绍 教师在成功登录进入系统之后,在主界面的个人授课管理选项卡下点击查看个人所授课程可以分页查看个人所授的所有课程,并且可以输入要查询的条件对所授的课程进行分页条件查询,在单击查看个人所授学生信息之后,将会 34 泰山学院本科毕业论文(设计) 分页展示所有选择自己所教授课程的学生信息,并且同样可以按条件分页查询学生信息。 (2)界面实现 图5-10授课信息管理查看所授课程 图5-11授课信息管理查看自己所教学生 35 泰山学院本科毕业论文(设计) 6系统技术分析 虽然已经具备了完整的需求分析,并且也完成了数据库的详细设计和系统架构图的绘制,但是没有具体的实现系统功能的技术也只能是纸上谈兵,不可能完成整个项目的开发的。在正式开始建立工程之前,必须要选择一种精炼的编程语言 [10] ,假如决定选择了一种技术,那么这个项目的语言方向也就确定了,并且这个 设计就有了一个良好的开端,之后的系统详细设计也会轻松很多,从而大大提高了系统完成的效率。本网上选课系统的实现主要是运用了JSP技术,中间控制层运用了Servlet技术控制整个系统的流畅运行,并且运用了Oracle数据库以及Tomcat服务器部署运行整个系统.该系统主要设计以及部分代码如下所述: (1)学生选课操作的设计 学生用户在成功登录系统之后,当点击“查看课程信息/选课”选项之后,会通过超链接的href=”lookcourse。jsp?name=<%=name %〉”跳转到lookcourse。jsp页面,并在jsp页面将学生的name值获取到,并且通过pageContext。forward(\"CourseManageServlet/queryc\");向servlet获得list的值,并且将获取的值在该页面显示出来,当学生想要选课的时候可以点击选课按钮通过document.getElementById ( \"form1 ” ) 。 action = ” CourseManageServlet/selectcourse?name=<%=name %〉&stuid=”+obj。id;执行servlet文件中的选课操作,学生选课操作的主要代码如下所示: //CourseManageServlet。java文件中选课操作的主要代码 String stuid = request.getParameter(\"name\"); int cid = Integer.parseInt(request.getParameter(\"txtid”)); SelectCourseEntity sce = new SelectCourseEntity(); sce.setStuid(stuid); sce.setCid(cid); bln = SelectCourseDao。submitSelect(sce); //SelectCourseDao。java文件中submitSelect(SelectCourseEntity sce)的主要代码 36 泰山学院本科毕业论文(设计) sql = \"insert into t_selectcourse(stuid,stuname,cid,cname,ischeck) values(?,?,?,?,?)”; (2)验证用户是否已经在线 在用户登录页面,用户输入用户名和密码,选择登录角色之后点击登录按钮,通过action = ”CheckLogin”将表单提交到名称为CheckLogin。java的servlet文件中,在CheckLogin中,该servlet文件通过request.getParameter()方法获取到login.jsp中输入的数据,并且将获取到的数据提交到数据库中进行用户名密码的比对,如果比对成功,那么会利用session.getAttribute(角色名称+用户名)得到与之对应的value值,假如该value值与登录的用户名相同,则跳回登陆页面并且提示用户已经登录,否则将该用户名信息以session。setAttribute(“角色名称+用户名\“用户名”)保存到session中,在用户点击注销登录时,会将表单提交到名称为RemoveSessionServlet.java的servlet文件中去,在servlet中获取到当前用户名,然后利用session。removeAttribute(“角色名称+用户名”)的方法将用户信息移除,用户成功登出.以管理员登录为例其核心代码如下: // 管理员登录验证 HttpSession session = request。getSession(); String username = request.getParameter(\"txtusername”); String str = ”manager”+username; String managername = (String)session。getAttribute(str); KeyValue k2 = new KeyValue(1,sce.getStuid()); KeyValue k3 = new KeyValue(2,stuname); KeyValue k4 = new KeyValue(3,sce。getCid()); KeyValue k5 = new KeyValue(4,cname); KeyValue k6 = new KeyValue(5,\"未审核”); int i = DBHelper。executeUpdate(sql, k2,k3,k4,k5,k6); return i〉0?true:false; 37 泰山学院本科毕业论文(设计) if(username。equals(managername)){ request.setAttribute(”islog\”false”); RequestDispatcher dis = request.getRequestDispatcher(”login.jsp”); dis.forward(request, response); }else { session.setAttribute(str, username); request。setAttribute(”musername”, username); RequestDispatcher dis = request。getRequestDispatcher(”managermain.jsp”); } //管理员登出操作 HttpSession session = request.getSession(); String mname = request.getParameter(”txtnowuser”); String str = \"manager\" + mname; session.removeAttribute(str); request。getRequestDispatcher(\"/login。jsp”).forward(request, response); (3)管理员查询各项基本信息的分页功能的设计 在管理员后台管理选课系统中,可以对各项基本信息进行全部查询以及条件查询,在各项查询中,以查询专业信息为例,系统可以在工具类Page.java的协助下将每页的记录数以及当前页数通过setEveryPage(int everyPage)和setCurrentPage(int currentPage)方法利用 MajorDao。java 中的 dis.forward(request, response); queryMajor(MajorEntity me, Page page)方法执行查询并返回查询结果的集合,然后在MajorDao.java中的findAllCount(MajorEntity me, Page page)查询到所有记录数并且返回结果总数,以分页查询专业信息为例主要代码为: //queryMajor(MajorEntity me, Page page)方法中的部分主要代码 38 泰山学院本科毕业论文(设计) String sql = \"select rownum as rownumber,t_major。* \" + \"from t_major where 0=0 \"; if(me。getMid()!=null&&!me.getMid().equals(\"\")){ } if(!me。getMname()。equals(”请选择\")){ } if (!me。getDename()。equals(”请选择\")) { } int start = page。getEveryPage()*( page。getCurrentPage() — 1 ) + 1 ; int end = page.getEveryPage() * page.getCurrentPage(); String sql1 = ”select * from (\" + sql + ”) where rownumber between \" + start + ” and ” + end; DBHelper.openConnection(); Connection conn = DBHelper。getConn(); java。sql。Statement stmt = conn。createStatement(); ResultSet rs = stmt.executeQuery(sql1); //由于findAllCount(MajorEntity me, Page page)方法与查询方法大同小异,本文就不再进行展示。 (4)教师查看自己所教授的学生信息 教师在登陆成功之后,可以查看自己所教授的学生信息,首先教师点击查看自己所教授的学生会将请求提交到名称为StudentManageServlet.java的servlet中,然后servlet执行StudentDao当中的queryTeachStudent()方法,然后在queryTeachStudent()中执行数据库中已经建立好的一个视图 sql += \" and dename='\" + me.getDename() + ”'\"; sql += \" and mname=’” + me.getMname() + \"'\"; sql += ” and mid=” + me.getMid() + \"\"; 39 泰山学院本科毕业论文(设计) v_selectcoursestudentinfo,视图中需要通过教师表的teano与教师教学表中的teano,教师教学表中的cid以及课程表中的cid,选课表中的cid与课程表中的cid,学生表中的stuid与选课表中的stuid依次的执行查询最终将各表中的相对应信息查询出来组成一条记录,该视图主要代码如下: create or replace view v_selectcoursestudentinfo as select t_student。stuid,t_student。stuname,t_student.stusex,t_student。deid, t_department.dename, t_student.mid , t_major。mname , t_selectcourse。cid , t_course。cname , t_teacher。teano , t_teacher。teaname , t_student.grade from t_student left outer join t_department on t_student。deid = t_department。deid left outer join t_major on t_student.mid = t_major。mid inner join t_selectcourse on t_student.stuid = t_selectcourse。stuid inner join t_course on t_selectcourse。cid = t_course。cid inner join t_teachcourse on t_teachcourse.cid = t_course.cid inner join t_teacher on t_teachcourse.teano = t_teacher。teano 40 泰山学院本科毕业论文(设计) 7结束语 本论文系统地介绍了使用JSP+Servlet技术+tomcat服务器+Oracle数据库综 合开发一个便捷实用的泰山学院学生网上选课系统的设计方法和过程,其中本文对选课系统的开发进行了需求上的分析,技术上的探讨,以及主要功能上的详细分析设计,并且对开发中所用到的MVC三层结构模式及其运作流程进行了详细的介绍和系统地论述,在功能上,本文将该系统所具备的大多数功能一一地进行了描述,并且将系统运行的截图进行了比较详细地展示,同时简要地分析了该功能实现的原理以及工作的流程。由于本系统是分模块的,因此,在本文中对该系统是按照模块进行分析论述的,这对于清晰系统设计的思路起到了很大的作用,同时对于系统后期的编码也做了很大的贡献。本泰山学院网上选课系统基本实现了高校选课的高效化、智能化、数字化、现代化的教学管理目标,为母校泰山学院提供了一个便捷的选课教学管理一体化的现代化教学管理模式。 由于本人技术尚不成熟,水平所限,该系统还存在一些瑕疵和不足,希望各位读者能够提出宝贵的意见和建议,共同交流,共同进步。 41 泰山学院本科毕业论文(设计) 参考文献 [1]张志华,张栋峰。将Web作为中间层服务选课系统的设计与实现[J].中国现代教育装备,2013,(5):8—11。 [2]朱冠宇,卢亮.学分制网上选课系统的数据库设计方案[J].微型机与应用,2014,(7):5-6. [3]李浩,张光健.基于UML的网上选课系统的建模研究[J].电脑知识与技术,2008,3(26):1712-1714。DOI:10.3969/j.issn。1009—3044.2008。26。041。 [4]邓继胜,李蓓,张燕翔等。基于WEB的网上选课系统的设计与实现[J]。教育与现代化,2002,(4):38-42,60。DOI:10.3969/j.issn。2095-1663。2002。04.009。 [5]尹永田,葛苏慧,任佳等.基于ASP。NET的网上选课系统的设计与实现[J].中国教育技术装备,2006,(12):60-62。DOI:10.3969/j.issn.1671—489X。2006.12。027。 [6]王亚希,沈清,张晓宁等。网上选课系统配合学分制改革的实践经验[J]。高等理科教育,2004,(1):90—93.DOI:10.3969/j。issn。1000—4076。2004。01.022。 [7]陈玲莉。基于B/S架构的网上选课系统的分析与设计[J]。电脑知识与技术,2011,07(28):6845—6846.DOI:10。3969/j。issn。1009-3044。2011.28.021. [8]杨海荣,桂岚.基于组件技术的网上选课系统[J].长沙交通学院学报,2004,20(4):34-37。DOI:10。3969/j.issn。1674—599X。2004.04。009. [9]赵传亮,初同喜,李双东等.利用Dreamweaver MX 2004制作实验室网上选课系统[J].哈尔滨师范大学自然科学学报,2005,21(6):43—46. [10]张金龙.网上选课系统在高校的作用[J]。电子制作,2013,(12):172—173. 42 泰山学院本科毕业论文(设计) 致谢 本次毕业设计与毕业论文是在卞峰老师的大力指导下得以完成的.卞峰老 师的职称是软件设计师,拥有多年的大型项目开发实践经验。在项目开题之后卞峰老师便一直帮助我设计数据库结构,搭建系统框架,并且在完成设计的过程中还不断帮助我完善系统功能,而且鼓励我要开阔自己的思路,勇于创新。在撰写毕业论文期间,卞峰老师也在不断地指导,经常的对论文进行批改和指正,在毕业论文中期时,确实有种想半途而废的冲动,但是经过卞峰老师的一番开导和鼓励,我又重新有了继续下去的动力和信心,在经过卞峰老师技术上的引导以及思想上的鼓励之后,最终顺利完成了我的毕业设计以及毕业论文的撰写,在卞峰老师指导我完成毕业设计和毕业论文的过程中,我吸取了很多宝贵的经验,丰富了我的知识储备,提高了我的开发能力,使我的视野更加开阔,思维更加活跃,心态更加积极,最重要的是培养了我的科研精神和勇于开拓进取的精神,在此,我对卞峰老师对我的指导表示最诚挚的感谢! 此外,我要对支持并且指导我完成毕业设计和毕业论文的老师和同学表示 衷心的感谢,其中还要特别感谢董超慧老师,董老师在我完成毕业设计的过程中也牺牲了自己很多宝贵的时间来帮助我指导我。同时也要特别感谢大学四年教导过我的各位尊敬的老师,如果没有您们的教导,我也不可能自己完成本次的毕业设计,由于篇幅问题,在此我就不再对诸位老师一一进行列举感谢,请老师谅解。 最后对评阅论文和辛勤参加答辩工作的专家老师们表示最诚挚的谢意! 43 因篇幅问题不能全部显示,请点此查看更多更全内容