基于BS模式的在线教育系统设计与实现.doc_第1页
基于BS模式的在线教育系统设计与实现.doc_第2页
基于BS模式的在线教育系统设计与实现.doc_第3页
基于BS模式的在线教育系统设计与实现.doc_第4页
基于BS模式的在线教育系统设计与实现.doc_第5页
已阅读5页,还剩34页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

西北第二民族学院 学士学位论文 论文题目 基于基于 B S 模式的在线教育系统设计与实现模式的在线教育系统设计与实现 院 部 名 称 信息与计算科学学院信息与计算科学学院 学 生 姓 名 张张 波波 专 业 信息与计算科学信息与计算科学 学 号 2003015920030159 指导教师姓名 马马 占占 有有 论文提交时间 20072007 年年 5 5 月月 论文答辩时间 20072007 年年 6 6 月月 学位授予时间 西北第二民族学院教务处制 I 摘要摘要 随着 internet 的迅速发展 传统教育方式已无法满足学生的需求 在线教育 系统计算机技术和多媒体技术相结合的新一代教育方式 突出了时间和空间性 在 线教育是让更多的学习者共享资源 本文系统通过 C A 实现 它在学生与教 师之间搭起了一坐桥梁 学生可以及时进行在线注册 在线登陆 修改个人资料 班级浏览 提问浏览 在线测试等操作 而教师可以进行在线注册 在线登陆 修 改个人资料 教学管理 答疑管理 班级管理等操作 关键词 关键词 B S 模式 数据库 C IIS II AbstractAbstract The rapid development of internet the traditional educational methods have failed to meet the needs of students Online education system computer technology and multimedia technology with a new generation of education focusing on the time and space Online education is to enable more learners to share resources C A this system through the realization of its students and teachers to build a bridge sitting Students can register online in a timely manner online landing revision of the personal information class browser the question here online testing operations Teachers can register online online landing revision of the personal information management teaching and coaching management class management operation Keywords B S Mode Databases C IIS III 目录目录 第 1 章 绪论 1 1 1 引言 1 1 2 B S 系统 2 1 3 本文所做的工作 3 第 2 章 系统总体设计 4 2 1 需求分析 4 2 1 1 功能需求 4 2 1 2 性能需求 4 2 2 系统总体 4 2 2 1 系统模块划分 4 2 3 系统的流程设计 5 第 3 章 数据库逻辑结构 9 3 1 数据库选择 9 3 2 数据库和信息系统 10 3 3 数据库设计的特点 10 3 4 数据库表结构的详细设计 10 第 4 章 系统设计与实现 15 4 1 数据访问层 15 4 2 商业逻辑层 15 4 3 用户界面层与核心代码 19 4 3 1 用户登陆 19 4 3 2 用户注册 21 4 3 3 用户操作界面 23 4 3 4 文件上传界面 25 4 3 5 邮件发送界面 28 4 3 6 系统的其它核心代码 30 结语与展望 33 致谢 34 参考文献 35 基于 B S 模式的在线教育系统设计与实现 1 第第 1 1 章章 绪论绪论 1 11 1 引言引言 在科学技术飞速发展的今天 Internet 逐渐走入到人们的生活当中 人们可以 在闲暇时尽情地遨游在网络中 而 Internet 又是以网站的形式体现出来的 通过网 站的访问 人们可以进行电子邮件的发送 文件传输 远程登陆 网上查询 网上 交流 足不出户便可知道外面的世界和最新的信息 在这样的信息时代中 用户对信息的需求量 广泛程度和时效性的要求日趋提 高 传统的教育和管理受到了极大地冲击 教育的方式 辅助手段和工具也发生着 日新月异的变化 与传统的教育相比 在线教育是一种全新的教育模式 它可以突破时间和空间 的限制 让更多的学习者共享优秀教育资源 在线教育既具有开放性 交互性 协 作性和自主性等特点 又具有异步性 实时性 生动性 集成性和大容量等优势 因此在在线教育系统的建设中 单纯地构建各种功能单一的系统并不能完全满足在 线教育建设的要求 只有那些对数据和信息进行了有效组织 整合了多种业务 为 用户提供个性化服务的系统才能充分地发挥在线教育的作用 在现代远程教育的教学模式中 学习者是中心 教育资源和网络技术要为学习 者 求知者 创造一个网上的学习环境 以便使他们能充分地发挥自主性和积极性 学习知识 解决实际问题 在线教育系统是教学管理领域中一个比较重要的系统 它在学生与教师之间搭 起了一坐桥梁 学生可以及时进行在线注册 在线登陆 修改个人资料 班级浏览 加入等操作 而教师可以进行在线注册 在线登陆 修改个人资料 教学管理 答 疑管理 班级管理等操作 在线教育是计算机技术和多媒体技术相结合的新一代教育方式 利用在线教育 突破了传统教育在教育资源 师资 教材 实验和演示设备 和教育方法 统一进 度 集中式和单向传授等 方面的限制 使教育资源和教育方法不受时间和空间等 约束 而受教育者则可根据自己的学习水平和时间情况安排自己的学习计划控制学 习进度 实现传统教育无法做到的 个性化教育 因此在线教育是普及教育 继续 教育及岗位培训的一种十分有效的新型教育方式 计算机技术和网络技术 特别是 Internet 的广泛应用和普及 是促成在线教育方式形成和发展的根本原因之一 在软件制作过程中 对于静态教学网页的编写使用了 word 来进行编写 因为在高等 代数的教案中有大量的数字公式符号 在 Word2003 中可以直接对 html 文件进行编 排和修改 非常方便 同时学生和老师也可以同时登录到系统 进行实时交流 进 行实事互动 加强了系统的互动性 基于 B S 模式的在线教育系统设计与实现 2 在线教育系统是教学管理领域中一个比较重要的系统 它在学生与教师之间搭 起了一坐桥梁 学生可以及时进行在线注册 在线登陆 修改个人资料 班级浏览 提问浏览 在线测试等操作 而教师可以进行在线注册 在线登陆 修改个人资料 教学管理 答疑管理 班级管理等操作 在线教育系统使用 ASP NET C SQL Server 2000 进行开发 并在 IIS 5 0 上 进行发布 在开发过程中用到的关键技术有 ADO NET 数据访问技术 Cookie 编程技 术 动态菜单的脚本设计技术 在开发过程中严格遵守软件工程思想 按照需求分 析 数据库设计 概要设计 详细设计 编码 改进与性能优化的步骤进行开发 我们在学习中逐步了解在实际的软件开发设计过程中如何遵循软件工程的思想快速 优质地开发软件 使得开发出的软件系统具有良好的扩展性 可维护性 1 21 2 B SB S 系统系统 B S 结构 即 Browser Server 浏览器 服务器 结构 就是只安装维护一个 服务器 Server 而客户端采用浏览器 Browse 运行软件 它是随着 Internet 技术 的兴起 对 C S 结构的一种变化和改进 主要利用了不断成熟的 WWW 浏览器技术 结合多种 Script 语言 VBScript JavaScript 和 ActiveX 技术 是一种全新的软 件系统构造技术 B S 三层体系结构采用三层客户服务器结构 在数据管理层 Server 和用户界 面层 Client 增加了一层结构 称为中间件 Middleware 使整个体系结构成为三 层 三层结构是伴随着中间件技术的成熟而兴起的 核心概念是利用中间件将应用 分为表示层 业务逻辑层和数据存储层三个不同的处理层次 如图1 1所示 三个 层次的划分是从逻辑上分的 具体的物理分法可以有多种组合 中间件作为构造三 层结构应用系统的基础平台 提供了以下主要功能 负责客户机与服务器 服务器 与服务器间的连接和通信 实现应用与数据库的高效连接 提供一个三层结构应用 的开发 运行 部署和管理的平台 这种三层结构在层与层之间相互独立 任何一 层的改变不会影响其它层的功能 CodeBehind 后台代码 A 显示页面 显示层显示层 逻辑层逻辑层 Business Layer Data Layer DB 图 1 1 B S 三层体系结构 数据层数据层 基于 B S 模式的在线教育系统设计与实现 3 在 B S 体系结构系统中 用户通过浏览器向分布在网络上的许多服务器发出请 求 服务器对浏览器的请求进行处理 将用户所需信息返回到浏览器 而其余如数 据请求 加工 结果返回以及动态网页生成 对数据库的访问和应用程序的执行等 工作全部由 Web Server 完成 随着 Windows 将浏览器技术植入操作系统内部 这种 结构已成为当今应用软件的首选体系结构 显然 B S 结构应用程序相对于传统的 C S 结构应用程序是一个非常大的进步 B S 结构的主要特点是分布性强 维护方便 开发简单且共享性强 总体拥有 成本低 但数据安全性问题 对服务器要求过高 数据传输速度慢 软件的个性化 特点明显降低 这些缺点是有目共睹的 难以实现传统模式下的特殊功能要求 例 如通过浏览器进行大量的数据输入或进行报表的应答 专用性打印输出都比较困难 和不便 此外 实现复杂的应用构造有较大的困难 虽然可以用 ActiveX Java 等 技术开发较为复杂的应用 但是相对于发展已非常成熟 C S 的一系列应用工具来说 这些技术的开发复杂 并没有完全成熟的技术工具供 使用 1 31 3 本文所做的工作本文所做的工作 本论文将以 VS NET 为制作工具 以 SQL Server 为数据库设计工具来完成对基 于 B S 模式的在线教育系统的设计与开发 基于 B S 模式的在线教育系统设计与实现 4 第第 2 2 章章 系统总体设计系统总体设计 2 12 1 需求分析需求分析 2 1 12 1 1 功能需求功能需求 通过对教育系统的分析 我们认识到一个完整的教育系统应该具有以下基本功 能 表 2 1 主要功能图及分析说明 序号功能模块备注 1 注册模块提供用户注册信息 2 资源管理模块提供用户进行资料上传与下载 3 信箱管理模块对信件的实现单发 群发以及管理 4 查询模块对用户进行数据库查询 2 1 22 1 2 性能需求性能需求 本系统的主体是一所学校 其性能需求 1 时间特性的要求 登录时间最大不超过 5 秒 平均时间在 1 3 秒以内 搜索时间不超过 3 秒 平均在 1 秒内 2 系统容量要求 静态用户 注册用户 1000 以上 动态用户 在线用户 800 以上 并发数 100 2 22 2 系统总体系统总体 2 2 12 2 1 系统模块划分系统模块划分 根据功能需求 我对本系统做了更进一步的细化 将其由 3 个总体模块来统筹 分别为学生模块 教师模块以及超级管理员模块 在 3 个总体模块中有分别存在有 不同的子模块 来完成不同的功能 同时我们发现在子模块中又存在相同的功能 为了减轻冗余代码 将在后台代码设计中使用类来解决 具体的模块划分与所要实 现的功能设计如表 2 2 基于 B S 模式的在线教育系统设计与实现 5 表 2 2 系统模块划分 序号功能模块类别功能模块备注 登录 注册模块注册个人信息 进行系统登录 教室模块进行在线答疑 作业上传及编辑 教学资源下载 查看教室信息 申 请加入班级及浏览班级 收件箱模块对本系统内的用户进行信件交流 注册信息管理模 块 编辑注册信息 1 学生 教师查询模块对教师进行以姓名为关键字的查询 登录 注册模块同上 教学模块进行在线答疑 学生作业下载及编 辑 教学资源下载 查看教室信息 教室申请及取消 对申请加入班级 的同学进行审批 收件箱模块实现对个人进行单发或对班级进行 群法 注册信息管理模 块 同上 2 教师 学生查询模块对同学进行以用户名为关键字的查 询 信件管理对用户进行信息交流 教师管理编辑与教师相关的信息 教室管理对教室进行编辑 3 超级管理员 学生管理对学生进行编辑 2 32 3 系统的流程设计系统的流程设计 流程设计在系统的实现中起到非常重要的引导作用 它展现的是各个模块中数 据流的流向 根据模块设计所画的流程图如下 基于 B S 模式的在线教育系统设计与实现 6 图 2 1 学生用户模块的流程图 基于 B S 模式的在线教育系统设计与实现 7 图 2 2 教师用户模块的流程图 基于 B S 模式的在线教育系统设计与实现 8 图 2 3 超级管理员模块的流程图 基于 B S 模式的在线教育系统设计与实现 9 第第 3 3 章章 数据库逻辑结构数据库逻辑结构 3 13 1 数据库选择数据库选择 在 Windows 操作系统中 Microsoft Access 和 Microsoft SQL Server 是最常 见的数据库 它们同时也应用于网络程序应用系统 一般情况下 Microsoft Access 数据库比较适合小型或家庭型的应用程序 而 Microsoft SQL Server 一般 比较适合大型的应用程序 下面以 Microsoft Access 2000 和 Microsoft SQL Server 2000 介绍这两类数据库 1 Microsoft Access 数据库 Access 2000 是 Microsoft 强大的桌面数据库平台的第六代产品 是 32 位 Access 的第三个版本 Microsoft Access 及其 Jet 数据库引擎占据了整个桌面数据 库市场 2 Microsoft SQL Server 数据库 Microsoft SQL Server 2000 数据库是一个多关系数据管理系统 它不仅是一 个完整的数据库 而且具有强大的扩展性 它是 Windows 操作系统最为流行的数据 库 比较适合小型 中型或大型应用程序的后台数据库 它也适用于电子商务 数 据仓库和在线商业应用程序等 3 Oracle 数据库 Oracle 数据库一般比较适合超大型的行业领域 如电信 移动 联通 医疗保 险 邮政部门等 在行业领域 电信基本上使用 Oracle 数据库和 Sybase 数据库 4 MySQL 数据库 MySQL 数据库是一种非常特别的数据库 它以 Web 形式来体现 也是基于 Web 访问方式的数据库 和其他数据库相比 MySQL 数据库的最大特点是建立在 Internet 之上 用户可以通过基于 Web 的查询方式来访问数据库 MySQL 数据库除 了运行在 Windows 操作系统上之外 还可以运行在 Linux 和 UNIX 操作系统上 MySQL 数据库一般采用的是客户机 服务器体系结构 数据库设计 Database Design 是指对于一个给定的应用环境 构造最优的数 据库模式 建立数据库及其应用系统 使之能够有效地存储数据 满足各种用户的 应用需求 信息要求和处理要求 在数据库领域内 常常把使用数据库的各类系统统称为数据库应用系统 本系统采用 SQL Server 2000 数据库软件来进行数据库的设计 其具有以下优 点 1 结果响应快 一套全新的管理工具包以及与 Visual Studio 2005 和 Microsoft NET 共同语 基于 B S 模式的在线教育系统设计与实现 10 言运行 环境的紧密集成 使你在构建系统 排错及操作应用系统时更快 更有效 2 更好的决策支持 在数据整合 分析和报表领域功能全面的智能商务平台 使你在采取行动和制 定更好决策时具备更敏锐的洞察能力 3 值得信赖的平台 系统固有的数据加密 默认安全设置以及强制口令策略功能使你能够以最高的 性能 最高的可用性和最高的安全性运行任何苛刻的应用系统 3 23 2 数据库和数据库和信息系统信息系统 数据库是信息系统的核心和基础 把信息系统中大量的数据按一定的模型组织 起来 提供存储 维护 检索数据的功能 使信息系统可以方便 及时 准确地从 数据库中获得所需的信息 数据库是信息系统的各个部分能否紧密地结合在一起以及如何结合的关键所在 数据库设计是信息系统开发和建设的重要组成部分 数据库设计人员应该具备的技 术和知识 1 数据库的基本知识和数据库设计技术 2 计算机科学的基础知识和程序设计的方法和技巧 3 软件工程的原理和方法 4 应用领域的知识 3 33 3 数据库设计的特点数据库设计的特点 数据库建设是硬件 软件和干件的结合 三分技术 七分管理 十二分基础数 据 技术与管理的界面称之为 干件 数据库设计应该与应用系统设计相结合 结 构 数据 设计是设计数据库框架或数据库结构 行为 处理 设计 设计应用程序 事务处理等 结构和行为分离的设计 传统的软件工程忽视对应用中数据语义的分析和抽象 只要有可能就尽量推迟 数据结构设计的决策早期的数据库设计致力于数据模型和建模方法研究 忽视了对 行为的设计 数据库设计是项目开发中的系统设计中非常重要的一个关键环节 其设计的好 坏 直接影响到项目的进程 3 43 4 数据库表结构的详细设计数据库表结构的详细设计 根据功能需要 如学生注册 班级注册 文件上传等需要 我为该系统设计了 10 个数据表来完成对各个信息的记录 具体的表设计如下 基于 B S 模式的在线教育系统设计与实现 11 表 3 1 Message 存储用户收件箱的内容 序号字段名字段类型说明备注 1ReceiverVarchar 250 收件人 Varchar 250 2SenderVarchar 250 发件人不容许为空 3DataTimedatetime 发送时间系统自动写入 4Contenttext 发送内容不容许为空 5Totalint 记录信件总数系统自动写入 6TitleVarchar 250 主题不容许为空 7IDInt 编号自动写入 8Habitusint 状态利用此字段判断 信件是否以读 表 3 2 Application 存储学生用户申请班级的信息 序号字段名字段类型说明备注 1IDInt 编号自动写入 2AuthorVarchar 250 提问人非空 3Contenttext 提问内容非空 4TitleVarchar 250 标题非空 5DataTimedatetime 发问时间系统自动写入 6ClassVarchar 250 发问所在的班级系统自动记录 7TeacherVarchar 250 回答人非空 系统自动 写入 表 3 3 Question 存储用户的提问与回答 序号字段名字段类型说明备注 1UserNameVarchar 250 用户名不容许为空 2ClassVarchar 250 要申请的班级不容许为空 3realNameVarchar 250 真实姓名不容许为空 基于 B S 模式的在线教育系统设计与实现 12 表 3 4 Recycle 存储被用户删除信件的信息 序号字段名字段类型说明备注 1ReceiverVarchar 250 收件人系统自动写入 2SenderVarchar 250 发件人系统自动写入 3DataTimedatetime 发送时间系统自动写入 4Contenttext 发送内容系统自动写入 5TitleVarchar 250 主题系统自动写入 6IDInt 编号系统自动写入 表 3 5 Room 存储班级的信息 序号字段名字段类型说明备注 1RoomNameVarchar 250 教室名称非空 惟一 2CreaterVarchar 250 创建者非空系统自动 写入 3CreDatedatetime 创建系统自动写入 4InstituteVarchar 250 所属院系 5Populationint 班级人数系统自动记录 6Descripttext 班级说明 7RoomdirVarchar 250 班级资源文件的存 储路径 非空 表 3 6 Source 存储资源信息 序号字段名字段类型说明备注 1RoomVarchar 250 班级系统自动写入 2SourceNameVarchar 250 资源名称非空 3TypeVarchar 250 类别 作业还是教 学资源 系统判别 4DataTimedatetime 上传时间系统自动写入 5SourceOlderVarchar 250 上传人非空 6SrcVarchar 250 存储路径非空系统自动 写入 7StuIDInt 学号系统自动写入 8IDInt 编号系统自动写入 基于 B S 模式的在线教育系统设计与实现 13 表 3 7 Supper 存储超级管理员的信息 序号字段名字段类型说明备注 1IDInt 系统自动记录 2NameVarchar 250 用户名非空 3PassWordVarchar 250 密码非空 6 位 表 3 8 Student 存储学生资料 序号字段名字段类型说明备注 1StuIDint 学号非空 2UserNameVarchar 250 用户名非空 惟一 3RealNameVarchar 250 真实姓名非空 4PassWordVarchar 250 密码非空 6 位 5TelephoneVarchar 250 电话 6AddressVarchar 250 住址 7EmailVarchar 250 油箱非空 8InstituteVarchar 250 院系 9Descriptiontext 个人说明 表 3 9 StudentRoom 存储学生与班级的信息 序号字段名字段类型说明备注 1StuNameVarchar 250 学生姓名非空 系统自 动写入 2UserNameVarchar 250 学生用户名非空 系统自 动写入 3RoomNameVarchar 250 教室名非空 系统自 动写入 4UpFrequencyint 上传次数系统自动记录 5DownfrequencyInt 下载次数系统自动记录 6StuIDInt 学号系统自动记录 7EnterFrequencyInt 进入班级次数非空 系统自 动记录 8EnterDataTimeInt 加入时间非空 系统自 动写入 9CreaterVarchar 250 创建者非空 系统自 动写入 基于 B S 模式的在线教育系统设计与实现 14 表 3 10 Teacher 存储教师的信息 序号字段名字段类型说明备注 1IDint 学号系统自动记录 2NameVarchar 250 教师名非空 唯一 3zhiwuVarchar 250 职称非空 4PassWordVarchar 250 密码非空 5 位 5TelephoneVarchar 250 电话 6AddressVarchar 250 住址 7EmailVarchar 250 油箱非空 8InstituteVarchar 250 院系 9Descriptiontext 个人说明 基于 B S 模式的在线教育系统设计与实现 15 第第 4 4 章章 系统设计与实现系统设计与实现 本系统是使用三层架构的软件思想来实现 其优点是我们不必为了业务逻辑上 的微小变化而迁至整个程序的修改 只需要修改商业逻辑层中的一个函数或一个过 程 增强了代码的可重用性 便于不同层次的开发人员之间的合作 只要遵循一定 的接口标准就可以进行并行开发了 最终只要将各个部分拼接到一起构成最终的应 用程序 所采用的工具为 Visual Studio Net Visual Studio Net 是一套完整的 开发工具集 用于生成 ASP NET Web 应用程序 XML Web Services 桌面应用程序 和移动应用程序 Visual Basic Visual C Visual C 和 Visual J 全都使用 相同的集成开发环境 IDE 利用此 IDE 可以共享工具且有助于创建混合语言解决 方案 另外 这些语言利用了 NET Framework 的功能 通过此框架可使用简化 ASP Web 应用程序和 XML Web Services 开发的关键技术 4 14 1 数据访问层数据访问层 这一层负责实际的数据存储和检索 调用 C 中的数据访问类 System Data SqlClient 对数据的信息进行存储 查询及编辑操作 4 24 2 商业逻辑层商业逻辑层 这一层是上下两层的纽带 它建立实际的数据库连接 根据用户的请求生成检 索语句或更新数据库 并把结果返回给前端界面显示 这一层通常以动态链接库的 形式存在 并注册到服务器的注册表中 它与前端界面通讯的接口符合某一特定的 组件标准 如 COM 组件 可以用任何支持这种标准的工具开发 包含在一个名为 sqlData cs 的 C 类文件当中 using System using System Configuration using System Data using System Data SqlClient namespace OfficeAuto sqlData 的摘要说明 基于 B S 模式的在线教育系统设计与实现 16 public class sqlData Public static string sqlconn ConfigurationSettings AppSettings sqlConn ToString public void insertData string cmdtext SqlConnection sqlcon new SqlConnection sqlconn SqlCommand sqlcom new SqlCommand cmdtext sqlcon try sqlcon Open sqlcom ExecuteNonQuery catch Exception ex throw new Exception ex Message ex finally if sqlcon State ConnectionState Open sqlcon Close public SqlDataReader GetCount string cmdtext SqlConnection sqlcon new SqlConnection sqlconn SqlCommand sqlcom new SqlCommand cmdtext sqlcon SqlDataReader dr null try sqlcon Open dr sqlcom ExecuteReader 基于 B S 模式的在线教育系统设计与实现 17 catch Exception ex throw new Exception ex Message ex finally if sqlcon State ConnectionState Open sqlcon Close return dr 对 scalar 进行测试 public int selData string cmdtext SqlConnection sqlcon new SqlConnection sqlconn SqlCommand sqlcom new SqlCommand cmdtext sqlcon sqlcon Open int m Convert ToInt32 sqlcom ExecuteScalar sqlcon Close return m Public void ProceData string sRoom string sSourceName string sType string sSourceOlder string sSrc SqlConnection sqlcon new SqlConnection sqlconn SqlCommand sqlcom new SqlCommand Pr addFile sqlcon sqlcom CommandType CommandType StoredProcedure SqlParameter parameterFileName new SqlParameter SourceName SqlDbType VarChar 250 parameterFileName Value sSourceName sqlcom Parameters Add parameterFileName 基于 B S 模式的在线教育系统设计与实现 18 SqlParameter parameterRoom new SqlParameter Room SqlDbType VarChar 250 parameterRoom Value sRoom sqlcom Parameters Add parameterRoom SqlParameter parameterType new SqlParameter Type SqlDbType VarChar 250 parameterType Value sType sqlcom Parameters Add parameterType SqlParameter parameterOlder new SqlParameter SourceOlder SqlDbType VarChar 250 parameterOlder Value sSourceOlder sqlcom Parameters Add parameterOlder SqlParameter parameterSrc new SqlParameter Src SqlDbType VarChar 500 parameterSrc Value sSrc sqlcom Parameters Add parameterSrc try sqlcon Open sqlcom ExecuteNonQuery catch Exception ex throw new Exception ex Message ex finally if sqlcon State ConnectionState Open sqlcon Close public int selectData string cmdtext SqlConnection sqlcon new SqlConnection sqlconn 基于 B S 模式的在线教育系统设计与实现 19 SqlDataAdapter da new SqlDataAdapter cmdtext sqlcon sqlcon Open DataSet ds new DataSet da Fill ds sqlcon Close DataTable dt ds Tables 0 int m dt Rows Count return m public DataTable getData string cmdtext SqlConnection sqlcon new SqlConnection sqlconn SqlDataAdapter da new SqlDataAdapter cmdtext sqlcon sqlcon Open DataSet ds new DataSet da Fill ds DataTable dt ds Tables 0 sqlcon Close return dt 4 34 3 用户界面层与核心代码用户界面层与核心代码 4 3 14 3 1 用户登陆用户登陆 通过对单选框的选择来调用不同的数据表 进行数据判断用户的输入是否有误 从而进入相对应的操作界面进行管理 一般情况下一个学生只能注册一次 其用户 名是由其学号来确定 保证唯一 基于 B S 模式的在线教育系统设计与实现 20 图 4 1 用户登陆界面 后台核心代码为 if Student Checked true string cmdtext1 select from Student where UserName userName Text and PassWord passWord Text sqlData sqldata new sqlData int n sqldata selectData cmdtext1 if n 0 Session teaUserName userName Text Session teaPassWord passWord Text Response Redirect student main aspx else Response Write alert 你的输入有误 请重新输入 else if Teach Checked true string cmdtext2 select from Teach where Name userName Text 基于 B S 模式的在线教育系统设计与实现 21 and PassWord passWord Text sqlData sqldata new sqlData int n sqldata selectData cmdtext2 if n 0 Session teaUserName userName Text Trim Session teaPassWord passWord Text Trim Response Redirect teach main aspx else Response Write alert 你的输入有误 请重新输入 else if supper Checked true string cmdtext3 select from Supper where Name userName Text and PassWord passWord Text sqlData sqldata new sqlData int n sqldata selectData cmdtext3 if n 0 Session teaUserName userName Text Trim Session teaPassWord passWord Text Trim Response Redirect supper Main aspx else Response Write alert 你的输入有误 请重新输入 4 3 24 3 2 用户注册用户注册 在用户注册中 我使用了 3 个表来记录注册信息 其分别为表 3 7 表 3 8 表 基于 B S 模式的在线教育系统设计与实现 22 3 10 另外在实际操作中还设计到对用户数据进行判断 保证部分数据的准确性和唯 一性 同时在设计中我发现学生用户和教师用户的注册有很大的类同性 后台支持 代码基本上一致 所以 我不再为教师用户注册界面做介绍 学生用户界面如图 4 2 图 4 2 学生用户注册界面 后台核心代码为 String cmdtext1 select count from Student where UserName userName Text sqlData sqldata new sqlData if sqldata selData cmdtext1 0 Response Write alert 用户名已注册 请重新申请 else try 基于 B S 模式的在线教育系统设计与实现 23 String cmdtext insert into Student stuID UserName RealName PassWord Telephone Address Email Institute Des cri ption values stuID Text userName Text realName Text passWord Text Teleph one Text Address Text Email Text Institute Text Descripti on Text sqldata insertData cmdtext Session teaUserName userName Text Response Write alert 注册成功 Response Write document location href student main aspx catch Exception ex string sRawURL Request RawUrl Response Redirect ErrorPage aspx ErrorURL sRawURL 4 3 34 3 3 用户操作界面用户操作界面 通过不同的身份进入系统 系统将带你进入不同的操作截面 拥有不同的操作 功能和权限 例如学生身份进入 他将具有申请班级 浏览班级 进入班级等功能 以教师身份进入的话 有班级开设和班级注销的权利 对班级内的学生进行消息的 群发 超级管理员的话 就具有班级的删除 学生的管理以及对教师的管理 界面 的设计如下图 图 4 3 超级管理员操作界面 基于 B S 模式的在线教育系统设计与实现 24 图 4 4 教师管理界面 在教师界面中教师将具有对教室中的学生的信息查询的权利 其查询的依据是 学生用户名 从而了解到学生信息 如基本资料 作业上传的次数 string sear search Text string cmdtext select from Student inner join StudentRoom on Student UserName StudentRoom UserName where Student UserName like sear sqlData sqldata new sqlData DataTable da sqldata getData cmdtext if da Rows Count 0 DownList DataSource da DownList DataBind else message Visible true message Text 你的搜索不存在 基于 B S 模式的在线教育系统设计与实现 25 图 4 5 学生管理界面 4 3 44 3 4 文件上传界面文件上传界面 文件上传操作中 将根据用户所在的班级找到与班级对应的文件夹 然后在把 文件上传到文件夹中 并在数据库中做好相对应的记录 同时为了保证数据文件的 唯一 系统将自动为其生成文件名 写入数据表中 做好记录 图 4 6 文件上传与下载 string cmdtext select from Room where RoomName Session class ToString sqlData sqldata new sqlData DataTable da sqldata getData cmdtext if FileName Text if upfile PostedFile ContentLength 0 基于 B S 模式的在线教育系统设计与实现 26 dir dir FileName Text if File Exists dir false try upfile PostedFile SaveAs dir sqldata ProceData Session class ToString FileName Text upfile Po stedFi le ContentType Session teaUserName ToString dir getdata catch Exception ex throw new Exception ex Message ex else Response Write alert 你上载文件的文件名称已经存在 请 更改你的文件名称 else Response Write alert 上传的文件内容不能为空 else Response Write alert 文件名不能为空 在线答疑类似于留言版 同学可以在上面留言进行提问 老师则可以通过它来 基于 B S 模式的在线教育系统设计与实现 27 解答 图 4 7 在线答疑 private void input Click object sender System EventArgs e string cmdtext insert into Question Author Content Title DataTime Class Teacher values liuyanTB Text ContentTB Text titleTB Text GetDate Session class ToString Session teaUserName ToString sqlData sqldata new sqlData sqldata insertData cmdtext BindData private void DataGrid1 PageIndexChanged object sender System Web UI WebControls DataGridPageChangedEventArgs e DataGrid1 CurrentPageIndex e NewPageIndex BindData private void BindData string cmdtext select from Question where 基于 B S 模式的在线教育系统设计与实现 28 Class Session class ToString and Teacher Session teaUserName ToString sqlData sqldata new sqlData DataGrid1 DataSource sqldata getData cmdtext DataGrid1 DataBind private void DataGrid2 EditCommand object sender System Web UI WebControls DataGridCommandEventArgs e DataGrid2 EditItemIndex e Item ItemIndex getMesData private void DataGrid2 DeleteCommand object sender System Web UI WebControls DataGridCommandEventArgs e string cmdtext select from Room where Creater Session teaUserName ToString sqlData sqldata new sqlData DataTable dt sqldata getData cmdtext string cmdtext2 delete f

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论