




免费预览已结束,剩余36页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
中文摘要 I 基于 WEB 的选课系统 摘要 本论文主要论述的是基于 WEB 的选课系统的系统维护模块的设计与实现 设计本系统的目的是对选课信息进行管理 学生选课系统维护模块主要完 成的是系统管理与维护功能 课题研究过程中 首先对系统管理模块进行了详 尽的需求分析 经分析得到系统管理模块主要完成如下的功能 用户基本信息 选课信息的录入 查看 修改 删除等 同时还具有查询各个模块的功能 数据 备份 数据还原 注销等功能 系统管理模块是整个系统的指挥中心 保证 整个系统在校园网上安全有效地运作 之后根据需求提出了系统管理模块的总 体设计方案 并据此进行了详细设计和编码实现 系统使用 B S 结构设计和开 发 系统的编码实现基于 VS NET 平台 使用 ASP NET 作为开发语言 SQL Server 2000 作为数据库 代码中通过使用进程中的 Session 尽量使用存储过 程和尽量减少数据库连接的打开时间等手段来提高性能 论文中对课题的设计和开发进行了完整地论述 系统开发完成后 对课题 要求的功能设计出测试用例 进行功能测试 测试结果证明学生选课系统的维 护模块实现了对该模块的功能需求 完成了课题的主要任务 关键词 选课系统 系统管理 ASP NET Abstract II Abstract The topic is mainly to comment designment and implementation of the maintenance module of the Web based Course Selection System The purpose of Course Selection System is to manage the course selection information on computer Research process the first system management module for a detailed needs analysis Upon analysis of system management module to be completed the following functions basic user information in the Course Selection logging information the following changes delete inquiry also has the function of each module backup data restore data the write off and other functions The entire system is the command module management system to ensure that the entire campus network safe and effective transport system to do After a demand management module design program and thus achieve a detailed design and coding The system use the Structure of B S using VS NET as the development language and SQL Server 2000 as database Session code through the use of the process Make full use of the process and minimize storage time open database connectivity to improve performance The design and development of a thesis topic for a complete exposition System development is completed subject to the requirements of the functional test case design and the functionality Test results show that the system to safeguard optional module of the functional requirements of this module and complete the main task Key words course selection system management modules ASP NET 目录 III 目录 摘要 I Abstract II 目录 III 第一章 绪论 1 1 1 课题背景 1 1 2 关键技术介绍 1 1 2 1 ASP NET 简介 1 1 2 2 SQL Server 3 1 2 3 ADO NET 简介 3 1 2 4 HTML 4 1 2 5 Script 5 1 3 课题主要工作 5 第二章 需求分析 7 2 1 可行性分析 7 2 1 1 网上选课系统的产生和可行性分析 7 2 2 功能分析 8 第三章 系统的设计 10 3 1 总体设计 10 3 2 功能的详细设计 10 3 3 数据库设计 11 第四章 系统实现与验证 16 4 1 系统实现 16 4 1 1 系统主界面 16 4 1 2 登录功能 17 4 1 3 学生模块功能 19 4 1 4 教师模块功能 20 4 1 5 管理员模块功能 21 4 1 6 存储过程 23 4 1 7 类的使用 25 4 2 系统验证 26 4 2 1 系统运行环境 27 目录 IV 4 2 2 系统的验证 27 结论 29 参考文献 30 致谢 31 第一章 绪论 1 第一章 绪论 1 1 课题背景 学生选课是学校教学环节开展的前提和基础 是学校工作的重要组成部分 一直以来人们使用传统人工的方式管理文件挡案 这种管理方式存在着许多缺 点 如 效率低 保密性差 另外时间一长 将产生大量的文件和数据 这对 于查找 更新和维护都带来了不少的困难 随着科学技术的不断提高 计算机科学日渐成熟 其强大的功能已为人们 深刻认识 使用计算机对选课信息进行管理 有着手工管理所无法比拟的优点 例如 检索迅速 查找方便 可靠性高 存储量大 保密性好 寿命长 成本 低等 这些优点能够极大地提高人事劳资管理的效率 也是企业的科学化 正 规化管理 与世界接轨的重要条件 因此 建立一个学生选课系统 使选课 管理工作规范化 系统化 程序化 避免选课管理的随意性 提高信息处理的 速度和准确性 能够及时 准确 有效的查询和修改选课情况 1 2 关键技术介绍 1 2 1 ASP NET 简介 ASP NET 又称 ASP 但它不是 ASP 的简单升级 而是微软提出的 NET 框 架的一部分 它是一种以 NET 框架为基础开发网上应用程序的全新模式 4 NET 的核心内容之一就是要搭建第三代互联网平台 这个网络平台将打 破不同的上网设备 不同的操作系统 不同的网站 以及各大机构和工业界的 网络障碍 将解决网站之间的协同合作 使网站之间形成自动交流 从而最大 限度的共享资源 2 NET 框架 NET Framework 主要有以下 3 部分组成 公共语言运行库 Common Language Runtime CLR 基础库类 Base Class Libarary 第一章 绪论 2 ASP NET VB NET C 等语言运行库 ASP NET 的功能和特点 ASP NET 是 NET 框架中专门用来开发网上应用程序的 它其实不是一种 语言 而更像一个框架 在这个框架下可以采用 VB NET C 等其他 NET 语言开 发网上程序 相对于他的前身 ASP 来说 ASP NET 具有如下特点 1 效率增强 ASP 才有界实质性的方式 每一次用户访问页面时 就从头到尾解释一遍 这样效率较低 而 ASP NET 采用编译后运行的方式 当用户第一次访问页面 时对页面进行编译 以后在访问时就直接运行 这样尽管第一次会稍微慢些 但以后速度就会大大提高 2 顶级开发工具支持 ASP NET 可以在 Visual Studio NET 中开发 支持所见即所得 拖防控件和 自动部署等功能 可以使开发效率大大提高 3 程序结构清晰 再 ASP 中 ASP 代码和 HTML 标记是掺杂在一起的 其实是将 ASP 代码 嵌入到了 HTML 文档中 而 ASP NET 可以将车古代马赫 HTML 标记分开 使得程 序结构更清晰 4 开发简单 ASP NET 中的很多特性使得开发更简单 如它提供的验证控件可以方便的 验证客户是否正确填写表单内容 就不需要自己编写大段验证代码 另外 提 交表单后 可以自动保留客户在表单内输入的内容 5 移植方便 在 ASP 中 如果要使用第三方组件 就需要在服务器端注册该组件 甚至 需要重新启动服务器 极不方便 而在 ASP NET 中 可以向目标服务其直接复 制组件 当需要更新时 重新复制一个即可 ASP NET 会自动逐步用新的组件 第一章 绪论 3 替换旧的组件 6 Web 服务 所谓 Web 服务 就是一种特殊的 Web 组件 该组件有一些属性和方法 其 他网上应用程序或传统应用程序可以远程调用着这属性和方法 并返回一个简 单的结果 1 2 2 SQL Server SQL Server 是一个具备完全 Web 支持的数据库产品 提供了对可扩展标 记语言 XML 的核心支持以及在 Internet 上和防火墙外进行查询的能力 提 供了以 Web 标准为基础的扩展数据库编程功能 丰富的 XML 和 Internet 标 准支持允许使用内置的存储过程以 XML 格式轻松存储和检索数据 SQL Server 提供强大的开发工具和各类开发特性 在大大提高开发效率的 同时 带来新的商业应用机遇 例如 XML 数据库与 Web Service 的支持将使 您的应用实现 Internet 数据互联 NET 集成极大的扩展了开发空间 异构数据 集成 Service Broker 使您的数据和其它应用无缝集成 各种新数据类型和 T SQL 扩展带来了诸多灵活性 C VB Net XQuery XMLA ADO Net 2 0 SMO AMO 等都将成为 SQL Server 数据平台上开发数据相关应用的有力 工具 12 1 2 3 ADO NET 简介 为了处理存储在数据库中的数据 ASP NET 是使用 ADO NET Microsoft 新的数据访问策略 ActiveX Data Objects for the NET Framework 来完成的 它是为 NET 框架而创建的 提供对 Microsoft SQL Server Oracle 的数据 源以及通过 OLEDB 和 XML 公开的数据的一致访问 数据共享使用者应用程 序可以使用 ADO NET 来连接到这些数据源 并检索 操作和更新数据 连接环境下应用程序的对象模型 如图 1 1 所示 8 第一章 绪论 4 图 1 1 连接环境下应用程序的对象模型 在连接环境下 整个数据存取的步骤如下 1 用 SqlConnection 对象和数据库开启连接 2 用 SqlCommand 对象向数据索取所要的数据 3 把取回来的数据 放在 SqlDataReader 对象中读取 或者是做其他的存取 4 在对数据库的存取 查询等操作做完后 关闭 SqlDataReader 对象 5 关闭 SqlConnection 对象 连接环境下的数据库存取作业 从开始到结束 客户端与服务器端都是保 持在联机的状态 1 2 4 HTML HTML 的英文全称是 Hypertext Markup Language 中文译为 超文本标记 语言 超文本 就是指页面内可以包含图片 联接 甚至音乐 程序等非文 字的元素 在几年前作为 SGML 的一个子集开发的 一个 HTML 文件中包含 了所有将显示在网页上的文字信息 其中也包括对浏览器的一些指示 如哪些 文字应放置在何处 显示模式是什么样的等 如果你还有一些图片 动画 声 音或是任何其它形式的资源 HTML 文件也会告诉浏览器到哪里去查找这些资 源 以及这些资源将放置在网页的什么位置 浏览的网页就是由 HTML 语言编 写出来的 虽然 HTML 是一种语言 但 HTML 不是程序语言 如 C 和 Java 之类 它只是标示语言 你只要明白了各种标记的用法便算学会了 HTML 的格式非常简单 只是由文字及标记组合而成 因此任何文本编辑器都可以制 作 HTML 页面 第一章 绪论 5 在编辑器中输入 html 代码即可完成对网页的设计 如果在其中加入 VB JAVA 等脚本文件以及数据库连接有关的语句指令 便可对已知数据进行查 询 从而生成动态网页的一部分 1 2 5 Script 脚本语言现在流行的主要是 JavaScript 和 VBScript 下面简单介绍一下这两 种语言 JavaScript 语言的前身叫作 Livescript 自从 Sun 公司推出著名的 Java 语言 之后 Netscape 公司引进了 Sun 公司有关 Java 的程序概念 将自己原有的 Livescript 重新进行设计 并改名为 JavaScript JavaScript 是一种基于对象和事件驱动并具有安全性能的脚本语言 有了 JavaScript 可使网页变得生动 使用它的目的是与 HTML 超文本标识语言 Java 脚本语言一起实现在一个网页中链接多个对象 与网络客户交互作用 从 而可以开发客户端的应用程序 它是通过嵌入或调入在标准的 HTML 语言中实 现的 VBScript 的全称是 Microsoft Visual Basic Script Editon 微软公司可视化 BASIC 脚本版 正如其字面所透露的信息 VBS VBScript 的进一步简写 是 基于 Visual Basic 的脚本语言 我进一步解释一下 Microsoft Visual Basic 是微 软公司出品的一套可视化编程工具 语法基于 Basic 脚本语言 就是不编译成 二进制文件 直接由宿主 host 解释源代码并执行 简单点说就是你写的程序 不需要编译成 exe 而是直接给用户发送 vbs 的源程序 用户就能执行了 Javascript 主要优势是适用于各个浏览器 但是在各个浏览器上的语句和实 现上又细微的差别 VBScript 的优势是他是微软的产品 因此他和微软的系统结 合的比较好 但这同样也是它的劣势平台比较单一 1 3 课题主要工作 学生选课系统是典型的信息管理系统 MIS 其开发主要包括后台数据库的 建立和维护以及前端应用程序的开发两个方面 对于前者要求建立起数据一致 第一章 绪论 6 性和完整性强 数据安全性好的库 而对于后者则要求应用程序功能完备 易使 用等特点 本模块主要包括数据库的构建 设计学生 教师 管理员的登陆情 况 根据不同的用户身份进入不同的界面管理 包括学生 教师 管理员的登 陆 修改密码 退出 系统管理包括的功能有学生资料录入 学生资料修改删 除 教师资料录入 教师资料修改删除 选修课程录入 选修课限额设置 查 询用户密码 查看注册情况 添加通知 通知管理 系统还原 系统备份等等 第二章 需求分析 第二章 需求分析 2 1 可行性分析 1 技术可行性 本系统仅需要一台装有 Office 软件的计算机即可 对 机器本身没有太高的要求 一般当前学校或个人电脑完全可满足要求 对于软 件技术要求 现在的程序设计语言已非常成熟 要运用于 HTML 样式 图形图 象制作工具来制作生动活泼的网页及美观的图形文件或动画文件 数据库使用 SQL Server 2000 提供的数据库桌面工具 ODBC 2 经济可行性 由于本系统是学生选课管理使用的系统 装上该应用软 件 即可使用系统 系统成本主要集中在系统软件的开发上 当系统投入运行 后可以为学校节约大量的人力 物力 所带来的效益远远大于系统软件的开发 成本 在经济上完全可行 3 操作可行性 界面设计时充分考虑管理人员的习惯 使得操作简单 数据录入迅速 规范 可靠 统计准确 制表灵活 适应力强 容易扩展 2 1 1 网上选课系统的产生和可行性分析 网上选课系统是针对在校学生和教师使用 从学生的角度来说 由于学校 教学制度的改革 现在大部分高等院校开始实行的是学生的自主选课模式 传 统的教学模式 学生按照学校安排好的课程上课 已经不能适应新型的教 学手段 如果仍然通过纸上的方式选课 一方面浪费的大量的人力 物力资源 另一方面浪费时间以及在人为的统计过程中不可避免出现的差错等情况 随着 高校人数的增多 这种弊端会越来越多的暴露出来 因此 利用网络 使学生 只要在计算机前输入自己的个人选课信息即可完成原来几倍的作业量 从教师 的角度来说 同样是节省了大量的工作量 由于教师提出代课申请完成课程发 布的工作较学生选课而言更加的复杂 因此通过网上进行课程发布能大幅度的 减少教师的工作量 减少错误的发生几率 作为教师 也只要通过自己的电脑 来操作即可 不用再奔波于教务处和办公室之间 以 MIS 系统的构建思想来实 第二章 需求分析 8 现网上选课系统可以最大程度的做到实用性 可扩展性和可维护性相结合 安 全性以及规范化原则 技术可行性 以 MIS 技术为开发基础 2 2 功能分析 我国不少高校都实行了学分制 它的核心是允许学生自由选课 即把学习 的自主权交给学生 在这里 学生选课时的制约因素比较复杂 工作量也很大 而且往往需要在较短的时间内完成 运用计算机辅助选课 既能实时地对大量 选课数据进行检验和统计 十分方便地输出结果 同时也避免了人工处理时容 易产生的错误 从系统开发的复杂程度来看 计算机辅助排课与选课是高校教务系统中的 两个关键子系统 目前不少教务系统尚未很好地解决排课与选课问题 本文主 要是对高校教务管理系统中计算机课表编排与选课子系统的基本功能 设计思 想 需求分析以及实现技术进行探讨 在大学中 学生选课存在这样的特点 公选课较多 学生人数众多 学生可根据自己的专业及兴趣选择公选课程进行 学习 而且学生对课程的要求有较大差异 本系统将从教学部门的要求出发 实现公选课的选择 查询与统计 使用该系统有三个角色 即管理员 学生和教师用户 管理员的权限最高 包括设置系统登陆信息 用户基本信息 选课信息的录入 查看 修改 删除等 同时还具有查询各个模块的功能 老师和学生可以实现基本信息查询和进行选 课的相关操作 如添加选课信息 退选等 一共分五个功能模块 系统管理 实现管理员对系统的管理 包括添加删除用户 更改密码 数 据备份 数据还原 注销等功能 基本信息 实现显示学生和老师的基本信息 包括学生基本信息 教师基 本信息 课程基本信息 选课 实现学生选择课程 选择老师 老师选择自己所能教的课程 查询 包括实现学生查询 老师查询 学生查询包括自己的基本信息 自 第二章 需求分析 9 己的课程 课表 成绩 同班同学等 老师查询包括查询自己的信息 自己所 带班的学生 自己的课程表等 帮助系统 帮助系统为用户指明方向 系统维护模块的总体框架图如图 2 1 所示 选课系统管理与维护 登录 修 改 密 码 课 程 信 息 的 维 护 学 生 信 息 的 维 护 教 师 信 息 的 维 护 系 统 备 份 与 还 原 图 2 1 选课系统管理与维护模块总体框架图 第三章 系统的设计 10 第三章 系统的设计 3 1 总体设计 本系统共分三大模块 分学生 教师 管理员模块 登录 修改密码 退 出系统功能是学生 教师 管理员所共有的功能 学生登录模块中 当学生成 功登录后 将学生的姓名 学号 密码作为共用信息保存下来 作为密码修改 模块 查询选课信息模块 修改选课信息模块使用时的参数 查询选课信息模 块中的课程号 学期 教师姓名信息作为传递参数用于查询教师信息模块 查 询选课名单模块 查询课程信息模块 修改选课信息 同样 教师登录模块中 成功登录后将教工号 教师姓名作为参数保存下来 传递到密码修改模块 查 询已发布课程信息模块 删除课程发布信息模块 修改课程发布信息模块 管 理员登录后的修改教师信息 删除教师信息模块中传递的是教工号信息 参数 由用户输入的信息得来 修改学生信息 删除学生信息模块中传递的是学生的 学号信息 同样传递的参数由用户输入得来 管理员还有系统还原 备份 有登录界面 根据不同的用户进入不同的界面 修改密码界面 完成用户 对密码的修改 课程信息的添加 修改 删除界面 完成对课程的录入 修改 删除 学生信息的添加 修改 删除界面 教师信息的添加 修改 删除界面 完成对用户的操作 需要学生 教师 管理员 课程 班级 专业 系 学院基本信息 学生 选课 专业开课情况 教师授课信息 建立了 11 个相关的表 3 2 功能的详细设计 为了使界面统一 使用了表格 在其中加入 Panel 控件 以便不用跳转到 不同的页面 在同一页面通过 Click 事件调用不同的用户控件 从而达到预期 效果 1 登录 第三章 系统的设计 11 在登录页面对应的地方输入用户名 密码 确认后登录 提交后首先通过 用户名和密码和 type 值运行存储过程 login 对数据库中的学生 教师 管理员 信息表进行检索 若检索到的记录集为空 从而转到登陆错误页面 提示 你 输入的用户名或密码有误 请重新输入 若记录集不为空 再进行姓名密码 判断 若相等则转入学生 教师 管理员登录成功的操作页面 并将编号 密码 和 type 值以 session 对象保存起来 2 修改密码 学生登陆成功后 通过 session 传递学号 找到相应的个人信息显示出登陆 成功 可以重新登陆 修改密码 退出系统 选课 查询成绩 查看帮助 重 新登陆通过传递 reboot 值 调用 login ascx 用户控件 修改密码调用存储过程 changepwd 退出系统注销 session 值 查看帮助调转到 help aspx 页面 登陆错 误跳转到错误界面 教师登陆成功后 通过 session 传递教工号 找到相应的个人信息显示出登 陆成功 可以重新登陆 修改密码 退出系统 选定课程 查看课表安排等 3 信息维护 管理员包括的功能有学生资料录入 学生资料修改删除 教师资料录入 教师资料修改删除 选修课程录入 选修课限额设置 系统还原 系统备份等 等 将各模块做成用户控件 根据不同的标识跳转到相应的界面 在各自的 LinkButton Click 跳转到相应的界面下调用存储过程实现各功能 3 3 数据库设计 在 login 模块 根据身份的不同 需要学生 教师 管理员的信息表 关 联学生的有班级 专业 系 学院信息 关联教师的有教师授课表和学院信息 表 对课程的管理需要课程信息表 表之间关系如图 3 1 所示 第三章 系统的设计 12 图 3 1 数据库间表的关系图 下面列出选课系统所有表的结构和索引 1 学生信息表 学号为主索引 为班级号建立索引 通过该索引和班级信息表建立关联 表 3 1 学生信息表 字段名 类型 宽度 是否允许空 约束 学号 char 10 F 主键 姓名 char 10 F 密码 char 10 F 性别 char 2 F 联系电话 varchar 20 T 班级号 char 10 F 外键 2 教师信息表 第三章 系统的设计 13 教工号为主索引 为所在院号建立索引 通过该索引和学院信息表建立关 联 表 3 2 教师信息表 字段名 类型 宽度 是否允许空 索引 教工号 char 10 F 主键 姓名 char 10 F 性别 char 2 F 职称 varchar 20 F 密码 char 10 F 所在院号 char10F 外键 电话 varchar20T 学历 char10 F 3 课程信息表 课程编号为主索引 表 3 3 课程信息表 字段名 类型 宽度 是否允许空 索引 课程号 char 10 F 主键 课程名称 varchar 20 F 4 学生选课表 学号 课程号共同做主索引 通过学号和学生信息表建立关联 通过课程 号和课程基本表建立关联 表 3 4 学生选课表 字段名 类型 宽度 是否允许空 索引 学号 char 10 F 主键 课程号 char10 F 主键 成绩 smallint 2 T 5 班级信息表 班级号做主索引 为所属专业号建立索引 通过该索引和专业信息表建立 关 联 第三章 系统的设计 14 表 3 5 班级信息表 字段名 类型 宽度 是否允许空 索引 班级号 char 10 F 主键 班级名 varchar 20 F 所属专业号 char10F 外键 人数 int 4 T 6 教师授课表 分别为教工号和课程号建立索引 通过教工号和教师信息表建立关联 通 过课程号和课程信息表建立关联 表 3 6 教师授课表 字段名 类型 宽度 是否允许空 索引 教工号 char 10 F 主键 课程号 char 10 F 主键 指导人数 int 4 T 7 专业信息表 为所在系号建立索引 通过所在系号和系信息表建立关联 表 3 7 专业信息表 字段名 类型 宽度 是否允许空 索引 专业号 char 10 F 主键 专业名称 varchar20 F 所在系号 char 10F 外键 8 系信息表 为所在院号建立索引 通过所在院号和院信息表建立关联 表 3 8 系信息表 字段名 类型 宽度 是否允许空 索引 系号 char 10 F 主键 系名 varchar20 F 所在院号 char 10 F 外键 9 专业开课信息表 第三章 系统的设计 15 学年设置 check 约束只能输入 1 4 学期设置 check 约束只能输入上或下 分别为专业号和课程号建立索引 通过专业号和专业信息表建立关联 通过课 程号和课程信息表建立关联 表 3 9 专业开课信息表 字段名 类型 宽度 是否允许空 索引 专业号 char 10 F 主键 课程号 char 10 F 主键 学时 int 4 T 学分 int 4 T 是否必修 bit 1 T 上课地点 varchar20T 己选人数 int4T 总人数 int4T 学年 int4T 学期 char6 T 10 学院信息表 为学院号建立索引 表 3 10 学院信息表 字段名 类型 宽度 是否允许空 索引 学院号 char 10 F 主键 学院名 varchar20 F 所在学校 varchar20 F 11 管理员信息表 为账号建立索引 表 3 11 管理员信息表 字段名 类型 宽度 是否允许空 索引 账号 char 10 F 主键 密码 char10 F 第四章 系统实现与验证 16 第四章 系统实现与验证 4 1 系统实现 4 1 1 系统主界面 登录界面如图 4 1 所示 图 4 1 主界面 主界面 main aspx 的主要设计如下 插入两行两列的表 将第一行单元格合并 分别在上 左 右单元格中加 入 Panel 控件 分别设置 ID 为 p3 pl pr 在 page load 中添加代码 P3 Controls Add Page LoadControl header ascx 加载图片控件 Pl Controls Add Page LoadControl menu1 ascx 加载左侧菜单 Pr Controls Add Page LoadControl js ascx 初始时加载简介信息 If Request QueryString type 0 Then 学生登录 Pr Controls Clear Pr Controls Add Page LoadControl login ascx 第四章 系统实现与验证 17 Exit Sub End If If Request QueryString type 1 Then 教师登录 Pr Controls Clear Pr Controls Add Page LoadControl login ascx Exit Sub End If If Request QueryString type 2 Then 管理登录 Pr Controls Clear Pr Controls Add Page LoadControl login ascx Exit Sub End If header ascx 为一图片控件 menu1 ascx 为用户登录菜单 添加 3 个 LinkButton 控件 分学生 教师 管理员身份 js ascx 为登录介绍 在 menu1 ascx 中学生的 LinkButton Click 中添加代码 Response Redirect main aspx type 0 在 menu1 ascx 中教师的 LinkButton Click 中添加代码 Response Redirect main aspx type 1 在 menu1 ascx 中管理员的 LinkButton Click 中添加代码 Response Redirect main aspx type 2 4 1 2 登录功能 当点击不同的用户后 进入同一登录界面 通过识别不同的标识 即 type 值的不同而进入不同的用户界面 在登录页面对应的地方输入用户名 密码 确认后登录 调用存储过程 login 根据编号 密码 type 值的不同来判断用户 身份 登录界面如图 4 2 所示 第四章 系统实现与验证 18 图 4 2 登录界面 Login ascx 中的设计如下 确定按扭中添加代码 Dim s As String If Request QueryString reboot 1 Then s Session type Else s Request QueryString type End If Dim db As New dbaccess db para Add user bianhao Text Trim db para Add pwd pwd Text Trim db para Add type s db runproc login If db retok Then Session user bianhao Text Trim Session type s Select Case s Case 0 第四章 系统实现与验证 19 Response Redirect student aspx Case 1 Response Redirect teacher aspx Case 2 Response Redirect admin aspx End Select Else Response Redirect 登陆错误 aspx End If 重置按扭中添加代码 bianhao Text pwd Text 4 1 3 学生模块功能 当点击学生后 通过输入学号和密码进入学生登录界面 右边的表格中列 出登录者的相关信息 如输入错误跳转到登陆错误界面 教师 管理员的也相 同 学生 教师登录成功后都可重新登陆 修改密码 查询相关内容和退出系 统等功能 登录界面如图 4 3 所示 第四章 系统实现与验证 20 图 4 3 学生登录成功界面 1 重新登陆会跳转到 Login ascx 的界面 2 退出系统中代码如下 Session Abandon 清空会话信息 Response Redirect main aspx 为了安全 退出后注销用户的 Session 信息 跳转到主界面 3 修改密码中代码如下 If pwd2 Text Trim pwd3 Text Trim Then Response Write alert 两次输入的密码不一致 Else Dim db As New dbaccess Response Write Session type db para Add id Session user db para Add oldpwd pwd1 Text Trim db para Add pwd pwd2 Text Trim Dim temp As String temp Session type db para Add type temp Trim db runproc changepwd If db retok Then Response Write alert 修改成功 Else Response Write alert 原始密码错误 End If End If 4 1 4 教师模块功能 教师登陆也同样传递 session 值 将教工号和 type 值保留以备调用不同的 用户控件 其它功能同学生模块相同 登录界面如图 4 4 所示 第四章 系统实现与验证 21 图 4 4 教师登录成功界面 4 1 5 管理员模块功能 管理员登陆成功后 界面如图 4 4 所示 重新登陆 修改密码 退出系统 同上 系统还原调用存储过程 hy 备份调用存储过程 bf 添加 修改 删除课 程信息分别调用存储过程 ins c del c course update 添加 修改 删除学生 信息分别调用存储过程 ins s del s student update 添加 修改 删除课程 信息分别调用存储过程 ins t del t teacher update 第四章 系统实现与验证 22 图 4 5 管理员登录成功界面 1 还原的 LinkButton Click 中添加代码 db runproc hy True If db retok Then Response Write alert 还原成功 Else Response Write alert 还原失败 End If 2 addstudent ascx 中的代码如下 page load 中的代码 db runproc grade If db retok Then g DataSource db ds Tables 0 绑定班级信息 g DataTextField db ds Tables 0 Columns 1 ToString 显示班级名 g DataValueField db ds Tables 0 Columns 0 ToString 值为班级号 g DataBind 第四章 系统实现与验证 23 End If submit Click 中的代码 If studentid Text Trim And pwd Text Trim Then Dim db As New dbaccess db para Add sid studentid Text Trim db para Add pwd pwd Text Trim db para Add sname studentname Text Trim db para Add sex sex Text Trim db para Add gradeid g SelectedValue db para Add telep telep Text Trim db runproc ins s If db retok Then msg Text insert success Else msg Text insert failure record may exists studentid Text pwd Text studentname Text sex Text telep Text End If Else msg Text 学号或密码不能为空 End If 4 1 6 存储过程 为了提高效率 使代码简单 大量使用了存储过程 下面是登陆时调用的存储过程 CREATE proc login 第四章 系统实现与验证 24 user char 10 pwd char 10 type int 0 as if type 0 begin select from 学生信息 as b where b 学号 user and b 密码 pwd end if type 1 begin select from 教师信息 as b where b 教工号 user and b 密码 pwd end if type 2 begin select from 管理员信息 as b where b 账号 user and b 密码 pwd end 下面是还原时调用的存储过程 CREATE PROCEDURE hy AS DECLARE spid smallint DECLARE sql char 10 DECLARE deluser CURSOR FAST FORWARD FOR SELECT spid FROM sysprocesses as p where dbid in select s dbid from sysdatabases as s where s name cc OPEN deluser FETCH NEXT FROM deluser INTO spid WHILE FETCH STATUS 1 begin 第四章 系统实现与验证 25 SET sql KILL CAST spid AS char 10 EXEC sql FETCH NEXT FROM deluser INTO spid end CLOSE deluser DEALLOCATE deluser restore database cc from bf if error 0 select ok 4 1 7 类的使用 在 OOP 面向对象的编程 中 类定义一类对象 通过将大量逻辑添加到 自定义类中 不仅能使代码更易于重复使用 还可以扩展现有的类 添加新的 功能或修改现有的功能 本程序中编写了一个类 供各摸块使用 代码如下 Imports System Data Imports System Data SqlClient Imports System Collections Specialized Public Class dbaccess 使用 sql 访问数据库的对象 Public Shared ds As New Data DataSet Public retok As Boolean 如果返回的第一个表不为空 则为 1 反之为 0 Public para As New ListDictionary 出错返回 Nothing Public Sub runproc ByVal procNAME As String Optional ByVal master As Boolean False Dim db As String If master Then db master Else db cc End If Dim conn As New SqlConnection server database db uid csf pwd csf Dim comm As New SqlCommand 第四章 系统实现与验证 26 Dim adp As New SqlDataAdapter comm comm Connection conn comm CommandType CommandType StoredProcedure comm CommandText procNAME comm Parameters Clear Dim myDE As DictionaryEntry 加入参数 For Each myDE In para comm Parameters Add myDE Key myDE Value Next myDE para Clear 参数已无用 回收空间 If Not ds Is Nothing Then 清空已有表 ds Reset End If retok 0 conn Open adp Fill ds conn Close If ds Tables Count 0 Then If ds Tables 0 Rows Count 0 Then retok 1 如果有结果返回 则为真 End If Else retok 0 反之 返回零 End If End Sub End Class 4 2 系统验证 第四章 系统实现与验证 27 4 2 1 系统运行环境 1 硬件环境 PC 机一台 2 软件环境 1 以 Windows NT 2000 Server XP 作为学生选课管理系统的后台操作系统 2 前台开发软件为 VB NET ASP NET ADO NET SQL Server 2000 3 后台数据库系统采用 SQL Server 2000 4 2 2 系统的验证 1 学生登录 表 4 1 学生登录验证 测试用例用例描述预期结果实际结果 1 0001 0001存在登陆成功成功 2 0001 0005不存在不成功不成功 2 删除课程信息 表 4 2 删除课程信息验证 测试用例用例描述预期结果实际结果 10001 存在删除成功成功 2005 不存在不成功不成功 3 添加教师信息 表 4 3 添加教师信息验证 测试用例用例描述预期结果实际结果 1 0006 0006 子哈 女 不存在添加成功成功 第四章 系统实现与验证 28 0001 教授 研究生 2 0001 0001 含笑 女 0001 教授 研究生 存在不成功不成功 4 修改课程信息 表 4 4 修改课程信息验证 测试用例用例描述预期结果实际结果 1 0001 英语存在修改成功成功 2003 不存在不成功不成功 在模块的建立时 很多时候发现功能不能正常运行 在检查完程序语句的 结构之后 发现并没有错误 于是在检查页面与页面交互时发现了问题 很多 地方传递的参数并没有真正的执行 还有些地方没有进行参数的设置 才导致 了程序的错误 由于本身能力的局限性 所以所编写的代码 即使经过反复检查也难免出 错 所以在本阶段力求使用有限的时间找出尽可能多的错误 力求系统尽量正 确 我们在本系统的测试中使用了黑盒法 即不关心程序内部的逻辑结构 而 是根据程序的功能来设计检测 请一位不熟悉本系统的人来进行随意性的操作 打破习惯的操作顺序 从中发现错误 在此阶段系统的大量错误得到了改正 列举出几个验证过程如表 4 1 4 2 4 3 4 4 所示 系统所涉及的数据库设计的重要步骤加载测试 加载测试工作贯穿于程序 测试工作的全过程 整个录入 修改 删除 查询 处理工作均可视为对数据 库的加载测试工作 要设计出一个好的管理系统数据库 除满足系统所要求的 功能外 还必须遵守下列原则 1 基本表的个数越少越好 2 主键的个数越 少越好 键是表间连接的工具 主键越少 表间的连接就越简单 3 字段的 个数越少越好 4 所有基本表的设计均应尽量符合第三范式 数据库的设计 中 如何处理多对多的关系和如何设计主键 是两个有着较大难度 需要重点 考虑的问题 结论 29 结论 通过最后两个多月的毕业设计 我对使用 ASP NET 开
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年慈善总会会计考试题库
- 2025年婚姻家庭咨询师初级笔试题库
- 2025年工业安全工程师面试题
- 2025年安全生产安全生产考试题库
- 2025年宁夏安全员考试重点题库及答案
- 2025年树葬行业应用与生态礼仪师考试预测题
- 2025年托育保健医生考试重点题解析
- 2025年山西C类安全员考试答案解析
- 2025年食堂安全管理员笔试冲刺题
- 2025年人力资源管理师综合素质评定考试试题及答案解析
- 图书管理员考试复习全书:试题及答案
- T-CECC 029.1-2024 数据分类分级指南 第1部分:医疗健康
- 污泥运输合同范本
- DBJ04T 289-2020 建筑工程施工安全资料管理标准
- 运输车辆司机安全培训考试专项测试题及答案
- 视频制作及推广合同
- 《神经网络与深度学习课程设计》课程教学大纲
- 焊工技师考试题(职业技能鉴定国家题库)
- 【零碳园区】绿色低碳工业园区自评价及第三方评价报告
- 手术室工作流程的优化和改进
- 大讲堂实施方案
评论
0/150
提交评论