摘 要
针对毕业设计选题的教学需求,本文采用 JSP 语言和 SQL Server 2000 数据库的开发技术, 设计了基于 B/S 的毕业论文设计选题系统应用软件。该系统界面美观、使用方便、运行可靠、 实现了动态数据库管理。从而减轻教务人员的工作量,便于师生之间的网上交流,对提高毕业
设计质量具有重要的作用。
关键词 网上选题系统 JSP SQL Server 2000 B/S
目 录
摘要 1
Abstract 2
第 1 章 前言 3
1.1 网上选题系统发展的前景 3
1.2 B/S 模式结构简介 3
第 2 章 系统分析与设计 5
2.1 系统需求分析 5
2.2 系统设计目标 5
2.3 系统开发工具 5
2.4 相关理论知识 6
第 3 章 选题系统的实现 10
3.1 系统总体结构设计 10
3.2 学生选题子模块具体实现 11
3.3 教师课题申报子模块具体实现 14
3.4 管理员管理子模块具体实现 16
3.5 数据库的设计与实现 18
第 4 章 关键技术的具体实现 22
4.1 JSP 的内建对象 22
4.2 分页的实现 23
4.3 文件上传的实现 24
第 5 章 系统的测试与维护 27
5.1 常见的问题和解决方法 28
5.2 黑盒测试与白盒测试 29
5.3 系统功能扩展 30
总结 31
参考文献 32
课题任务书 33
外文翻译 35
文献综述 43
开题报告 47
1 前言
1.1 网上选题系统发展的前景
随着全球信息化技术的兴起, 特别是 Internet 的日益普及, 我国各大中专院校也加快了信息化 进程,并且都建立了自己的校园网。这为我们网络现代化教育提供了必备的物质基础。同时,伴随 着素质教育的不断推进, 毕业设计(论文) 已成为检验学生学习成果的重要环节, 毕业设计(论文)的水平也成为学校教学水平评估的一项重要内容。
在技术和需求的推动下,各大院校都发现以前以原始手工报送的选题方式,暴露出了很多的缺 点与不足。比如,在做毕业设计(论文)之前,学生首先要做的工作就是在系提供的众多毕业设计 (论文)题目中选出适合自己的题目。目前的选择过程通常是:“系以纸张形式将题目分发下去 ― 学生选择―系收集、统计―系筛选(如一个题目最多允许 4 人选择,则必须去掉多余的人) ―在一 个题目中被去掉的学生再次选择―系再次收集、统计―系再次协调”。因而造成一个循环、低效的
尴尬局面,使得教学管理工作效率低下。
基于以上原因,本文提出了一种毕业设计(论文)网上选题系统,它能很好地解决以上问题。 它改变了以往原始手工选题的方式,而是采用以个人为依托的现代化的网上选题方式,极大地便捷
了学生,也方便了教务人员,显著地提高了工作效率 [1]。
1.2 B/S 模式结构的简介
B/S结构,即Browser/Server (浏览器/服务器)结构,是随着Internet技术的兴起,对C/S结构的一 种变化或者改进的结构。在这种结构下, 用户界面完全通过WWW浏览器实现, 一部分事务逻辑在前端 实现,但是主要事务逻辑在服务器端实现,形成所谓 3-tier结构。B/S结构,主要是利用了不断成 熟的WWW浏览器技术,结合浏览器的多种Script语言(VBScript、 JavaScript…)和ActiveX技术, 用 通用浏览器就实现了原来需要复杂专用软件才能实现的强大功能,并节约了开发成本,是一种全新 的软件系统构造技术。随着Windows 98/Windows 2000 将浏览器技术植入操作系统内部,这种结构 更成为当今应用软件的首选体系结构。显然B/S结构应用程序相对于传统的C/S结构应用程序将是巨
大的进步[2]。
目前 Internet 应用的 B/S(Browser/Server)结构已经越来越多的应用在 Intranet 的企事业 单位内部,诸如 OA,CRM,ERP,CMS 等大规模的集成应用系统,由于这种结构的可维护性强、开发
成本低、及技术的不断发展,B/S 结构更已成为了当今应用软件的首选体系结构。
但是 B/S 结构应用系统还是存在着诸多问题,比如界面风格凌乱、操作不便、流程烦琐等,如果能 减少这些问题, B/S 结构应用系统将一定能更为用户所接受。作者从事了多年的软件 UI 工作,在 B/S
系统的优化方面也积累了些许经验,也许能为大家带来些帮助。
1.2.1 统一界面
相信很多开发人员都有这样的经验,软件项目验收到最后,往往用户提出最多的问题并不是开 发人员擅长的数据处理、事务逻辑等问题, 而是系统的前端显示, 例如: 表格的样式、数据的样式、 脚本错误、操作流程简化等,这些用户认为很简单的问题却经常需要开发人员花费项目近 1/3 的时
间来完成。
规范<Head>区代码
很多应用系统的前端 Head 区过分凌乱有些甚至没有, 导致有时网页会显示为乱码, 所以在系统开发
初期一定要规范 Head 区代码,统一书写。
统一脚本及 CSS 文件
由于系统开发人员习惯于从其它地方直接拷贝原代码,这就导致脚本文件过于繁多,增加变量或函 数命名重复的可能, 而且经常会看到在 Head 区会引用 4,5 个 JS 文件或是 CSS 文件, 事实是这些都
是没有必要的。
对于 CSS 文件应该准备好一份使用说明,这样可以避免开发人员对一个标签进行多次定义。
简化 HTML 代码
对 body 区域的样式控制最好在 CSS 中定义为默认样式。
表格的嵌套尽量不要操作两层,否则不利于阅读及今后的修改。
对其中的表格、表单、按钮、链接、菜单等的样式统一应用 CSS 定义,这样可以使开发人员更易于
控制。
对于表单数据检验最好通过初始化脚本完成,而不要为每一个页面写入不同的脚本。
尽量自己来开发脚本控件,而不要直接粘贴别人的代码, 一方面他们的代码不易控制,另一方面由
于编写的人不同书写格式、规范都不同,这就会增加出错的可能。
1.2.2 操作方便
由于应用系统需要处理大量的信息,这就需要用户做频繁的重复录入工作,如果能提供更多的 快捷键,及尽量让用户少用鼠标,则一定可以使软件更受用户欢迎。重定义 Tab 顺序,不要使用系 统默认顺序。如果可以,为每个表单加入回车跳转至下一个表单的脚本。每次打开新窗口时使新窗
口得到焦点。
1.2.3 简化流程
由于 B/S 结构的应用系统几乎所有的数据处理都由服务器完成,所以经常使得用户为了查看一
条记录,需要打开 3、4 次的窗口。
当每条信息的数据量不会很大时最好在读取每页记录时将记录的全部信息一起读出,然后由前 端界面的隐藏层来显示。对于记录条目不是很多的列表,分页最好利用脚本来实现。对于不必要的
交互行为最好使用脚本来实现。这样可以简化用户在使用过程的操作流程。
还有很多的方法可 以对 B/S 结构的应用系统进行优化 ,这里就不再一一详述 了,随着 Flash MX2004 的发布,F/S(SAFlashPlayer/Server)结构也将会是一种全新的结构体系,总之对
于应用系统开发,前期准备越充份,后期收尾就会越顺利。
2 系统分析与设计
2.1 系统需求分析
本系统的目的是为了让学生能随时随地通过网络进行选题,为此系统提供了客户端选题子模块 和服务端管理子模块两大主要组成部分。客户端选题子模块主要提供了学生登录、学生选题、学生 查询。服务端管理子模块主要提供了管理员登录、学生信息维护、论文信息维护。所以管理层对几 乎所有的数据库表都有访问权限[3]。
3 选题系统的实现
3.1 系统总体结构设计
图 3.1 系统的总体设计模块
3.1.1 主界面模块
功能 该模块提供教务管理系统的主界面,是本系统的唯一入口和出口。
操作 该界面提供用:户选择并调用各子模块,
对于进入指导老师管理功能,还要核对用户名和口令。
3.1.2 管理员界面模块
功能 该模块提供对教师申报的论文进行审查。
操作 对符合要求的课题提交到学生选题信息列表中供学生选题。
3.1.3 学生选题界面模块
功能 该模块提供选题界面,进入该界面后学生可以进行选题。
操作 每个学生只能选择一个论文课题。
3.1.4 教师课题申报模块
功能 该模块提供教师申报论文。
操作 教师登录后可以申报课题,每个教师可以同时申报多个课题。
3.2 学生选题子模块具体实现
3.2.1 学生登录
如果学生要使用选题、查询等功能,那么在使用这些功能之前必须登录。学生的登录方式很简 单,只要输入姓名和相应的密码就可以了。如果学生的密码和数据库中保存的该学生的密码相符合, 那么就表明学生登录成功;如果不符合,会给出相应的提示信息,那么就登录失败。主要页面见下
图:
图 3.2 学生登录界面
图 3.4 学生在线注册
图 3.5 学生在线选题界面
图 3.7 选题失败
如果您在计算机领域有任何疑虑或不确定的地方,请毫不犹豫地与老师交流噢,我们期待着为您提供有针对性的建议和指导。您的问题和讨论对我们来说都非常重要。