重庆工业职业技术学院毕业设计(论文)课题名称网上选课系统设计与实现专业班级:10计应303学生姓名:张三指导教师:刘娜二O一二年十二月目录摘要................................................................1关键词..............................................错误!未定义书签。引言................................................................11系统相关技术介绍..................................................11.1系统开发采用的技术方案——B/S模式..........................11.2MVC设计模式................................................31.3JSP介绍....................................................31.3.1将内容的生成和显示进行分离.............................31.3.2强调可重用的组件.......................................42系统开发工具及容器................................................42.1开发工具....................................................42.1.1MyEclipse简介.........................................42.1.2DreamWaver简介........................................42.2数据库的选择................................................42.3JDK版本的选择...............................................52.4容器........................................................53需求分析..........................................................63.1可行性分析...................................................63.2功能模块分析................................................63.3软硬件环境需求..............................................84概要设计..........................................................84.1系统功能结构................................................84.2系统流程图..................................................94.3系统数据库E-R模型.........................................104.4数据库表设计...............................................115详细设计.........................................................135.1界面设计...................................................135.2系统功能模块设计...........................................145.2.1公共模块..............................................145.2.2管理员模块............................................165.2.3学生模块..............................................21结束语.............................................................25致谢...............................................错误!未定义书签。参考文献...........................................................251网上选课系统设计与实现摘要:学生选课系统是一款管理系统,囊括了学生管理和课程管理的基本过程。系统覆盖学生的选课、查看、修改密码等各个环节,软件的各个模块操作界面简单、实用。该系统是一个基于B/S结构的Web项目,采用Struts软件进行开发,用户数据选用MySQL进行统一管理。该系统可以显著减轻教务人员的工作负担,大大提高工作效率,从而实现教务管理的数字化和网络化。关键词:B/S;选课系统;数据库;Web项目引言:Internet的发展使我们的教育更加现代化,实现教学信息的集中管理、分散操作、信息共享,使传统的教学管理朝数字化、无纸化、智能化、综合化的方向发展,并为进一步实现完善的计算机教学文件管理系统和全校信息系统打下良好的基础。《学生网上选课系统》是高校教学管理系统的重要组成部分,充分利用计算机网络功能,实现教学工作全过程的计算机管理,帮助具体管理人员从复杂烦琐工作中解放出来,使得教学管理走向无纸化办公和规范化、现代化管理。1系统相关技术介绍1.1系统开发采用的技术方案——B/S模式信息技术的高速发展使网络计算模式不断更新。从单机时代的主机/终端模式、文件服务器时代的共享数据模式、客户机/服务器时代的Client/Server(客户机/服务器)模式,再到今天网络计算机时代的Browser/Server(浏览器/服务器)模式,计算模式发生了巨大变化,同时计算模式的不断进步使管理软件的架构发生了很大变化。系统综合还应用了B/S模式[1],即Browser/Server(浏览器/服务器)结构,是对C/S结构的一种改进。B/S模式的好处还有运行维护比较简便,能实现不同的人员,从不同的地点,以不同的接入方式访问和操作共同的数据,解决了地域的限制。而基于互联网应用系统都采用Browser/Server(浏览器/服务器)模式结构,在客户端中除Web浏览器外,要安装的软件便是一些插件和控件。这些插件被设计于服务器端,并通过网络下载到客户端,而控件则是第一次浏览下载并注册的。这是一种最小化的客户端安装及客户机模式,是目前客户服务器体系结构的发展方向。31.2MVC设计模式Model模型-View视图-Controller控制器[2]是软件工程中的一种软件架构模式。它把软件系统分为三个基本部分:Model模型,View视图和Controller控制器。模型视图控制器模式的目的是实现一种动态的程序设计,使后续对程序的修改和扩展简化,并且使程序某一部分的重复利用成为可能。专业人员可以通过自身的专长分组:•控制器Controller-负责转发请求,对请求进行处理。•视图View-界面设计人员进行图形界面设计。•模型Model-程序员编写程序应有的功能(实现算法等等)、数据库专家进行数据管理和数据库设计(可以实现具体的功能)。1.3JSP介绍JSP是由SunMicrosystems公司倡导、许多公司参与一起建立的一种动态网页技术标准。该技术为创建显示动态生成内容的Web页面提供了一个简捷而快速的方法。JSP技术的设计目的是使得构造基于Web的应用程序更加容易和快捷,而这些应用程序能够与各种Web服务器,应用服务器,浏览器和开发工具共同工作。JSP规范是Web服务器、应用服务器、交易系统、以及开发工具供应商间广泛合作的结果。在传统的网页HTML文件(*htm,*.html)中加入Java程序片段(Scriptlet)和JSP标记(tag),就构成了JSP网页(*.jsp)。Web服务器在遇到访问JSP网页的请求时,首先执行其中的程序片段,然后将执行结果以HTML格式返回给客户。程序片段可以操作数据库、重新定向网页以及发送email等等,这就是建立动态网站所需要的功能。所有程序操作都在服务器端执行,网络上传送给客户端的仅是得到的结果,对客户浏览器的要求最低,可以实现无Plugin,无ActiveX,无JavaApplet,甚至无Frame。JSP技术在多个方面加速了动态Web页面的开发:1.3.1将内容的生成和显示进行分离使用JSP技术,Web页面开发人员可以使用HTML或者XML标识来设计和格式化最终页面。使用JSP标识或者小脚本来生成页面上的动态内容(内容是根据请求来变化的,例如请求帐户信息或者特定的一瓶酒的价格)。生成内容的逻辑被封装在标识和JavaBeans组件中,并且捆绑在小脚本中,所有的脚本在服务器端运行。如果核心逻辑被封装在标识和Beans中,那么其他人,如Web管理人员和页面设计者,能够编辑和使用JSP页面,而不影响内容的生成。在服务器端,JSP引擎解释JSP标识和小脚本,生成所请求的内容(例如,通过访问JavaBeans组件,使用JDBCTM技术访问数据库等),并且将结果以HTML(或者XML)页面的形式发送回浏览器。这有助于作者保护自己的代码,而又保证任何基于HTML的Web浏览器的完全可用性。41.3.2强调可重用的组件JSP作为一个很好的动态网页开发语言得到了越来越广泛的使用,在各类JSP应用程序当中,JSP+JavaBean的组合成为了一种事实上最常见的JSP程序的标准。JavaBean[4]是描述Java的软件组件模型,有点类似于Microsoft的COM组件概念。在Java模型当中,通过JavaBean可以无限扩充Java程序的功能,通过JavaBean的组件可以快速地生成新的应用程序。对于程序员来说,最好的一点就是JavaBean可以实现代码的重复利用。JavaBean是一种基于Java的软件组件。JSP对于在Web应用中集成JavaBean组件提供了完善的支持。这种支持不仅能缩短开发时间(可以直接利用经测试和可信任的已有组件,避免了重复开发),也为JSP应用带来了更多的可伸缩性。JavaBean组件可以用来执行复杂的计算任务,或负责与数据库的交互以及数据提取等。如果我们有三个JavaBean,它们分别具有显示新闻、股票价格、天气情况的功能,则创建包含所有这三种功能的Web页面只需要实例化这三个Bean,使用HTML表格将它们依次定位就可以了。利用跨平台运行的JavaBean组件,JSP为分离处理逻辑与显示样式提供了卓越的解决方案。2系统开发工具及容器2.1开发工具本系统使用的开发工具,后台java代码编写使用MyEclipseEuropaworkbench6.5,前台页面编辑使用DreamWaver8。2.1.1MyEclipse简介MyEclipse企业级工作平台(MyEclipseEnterpriseWorkbench,简称MyEclipse)[5]是对EclipseIDE的扩展,利用它我们可以在数据库和JavaEE的开发、发布,以及应用程序服务器的整合方面极大的提高工作效率。它是功能丰富的JavaEE集成开发环境,包括了完备的编码、调试、测试和发布功能,完整支持HTML,Struts,JSF,CSS,Javascript,SQL,Hibernate。2.1.2DreamWaver简介Dreamwaver是美国MACROME