已阅读5页,还剩46页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
三 江 学 院课程设计报告(论文)题目 基于.NET的学生选课系统设计与实现课 程 名 称 .NET WEB开发 专 业 计算机科学与技术 班 级 314051A 小 组 名 称 学 号 设 计 地 点 S510 指 导 教 师 起 止 时 间 6.13-6.20 三江学院 计算机科学与工程学院小组成员分工序号学号姓名任务分工01登录模块 整理文档 页面美化02数据库设计,管理员模块03母版设计,教师模块04学生模块第1页 共24页目 录第一章 引言01.1 编写目的01.2 术语01.3参考文献0第二章 需求分析22.1 .系统说明22.1.1 .系统目标22.1.2 .运行环境32.3 需求规定32.3.1功能需求42.3.2性能需求4第三章 总体设计53.1系统流程图53.2软件结构图53.2.1模块结构图63.2.2模块清单63.3 数据库设计73.3.1 整个E-R73.3.2 详细表结构8第四章 系统实现方式114.1 登陆的实现114.2 教师管理的实现134.3学生管理的实现214.2.1学生登录界面:214.3.2课程信息页面244.2.3查看选课信息页面284.4管理员的实现304.4.1登陆后跳转页面304.4.2学生信息修改界面314.4.3教师信息查看界面354.4.4审核选课信息界面39第五章 运行测试41结束语43 46第一章 引言1.1 编写目的编写本文档,主要是确定本项目的需求,明确学生选课系统的主要实现功能。例如学生选课,成绩录入,成绩查询,课程信息管理,用户信息管理,成绩信息管理。使用户的需求能够清晰的呈现出来。1.2 术语jQuery:是一个优秀的Javascrpt框架。jQuery是一个快速的,简洁的javaScript库,使用户能更方便地处理HTML documents、events、实现动画效果,并且方便地为网站提供AJAX交互。jQuery能够使用户的html页保持代码和html内容分离,也就是说,不用再在html里面插入一堆js来调用命令了,只需定义id即可。目前最新版本为JQuery1.42。SQL:(Structured Query Language)结构化查询语言,是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统。B/S:(Browser/Server结构)结构即浏览器和服务器结构。1.3参考文献1 刘太安数据库技术及应用M东营,中国石油大学出版社,2009.52 陶宏才数据库原理及设计M北京,清华大学出版社,2005.4 3 黄保翕ASP.NET MVC4开发指南M北京,清华大学出版社,2013.4 4 房大伟ASP.NET开发实战1200例M北京,清华大学出版社,2011.65 布洛克ASP.NET WEB API设计M北京,人民邮电出版社,2015.16 施瓦茨高性能MySQLM北京,电子工业出版社,2013.5 7 高宏ASP典型模块项目实战大全M北京,清华大学出版社,2013.5 8 崔杨MySQL数据库应用从入门到精通M北京,电子工业出版社,2013.5 9 臧爱军ASP.NET 4.0与Dreamweaver CS6经典网站开发从入门M北京,机械工业出版社,2013.9 10 米里特ASP.NET设计模式M北京,电子工业出版社,2011.11 11 王祥仲,朱艳丽ASP.NET 4.0基础教程(C# 2010篇)M北京,电子工业出版社,2012.612 韩颖ASP.NET 3.5动态网站开发基础教程M北京,清华大学出版社,2013.5 13 闫继涛ASP.NET网络编程技术详解M北京,清华大学出版社,2013.12 14 孙士保,张瑾,张鸣ASP.NET数据库网站设计教程M北京,电子工业出版社,2012.815 陈益才PHP+MySQL+Dreamweaver动态网站建设从入门到精通M北京:机械工业出版社,2012.10第二章 需求分析2.1 .系统说明 学生选课系统是一个学校不可缺少的部分,它的内容对于学校的决策者和管理者来说都至关重要,所以学生选课系统应该能够为用户提供充足的信息和快捷的查询手段。但一直以来人们使用传统人工的方式管理文件档案,这种管理方式存在着许多缺点,如:效率低、保密性差,另外时间一长,将产生大量的文件和数据,这对于查找、更新和维护都带来了不少的困难。 随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。 作为计算机应用的一部分,使用计算机对选课信息进行管理,有着手工管理所无法比拟的优点.例如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高人事劳资管理的效率,也是企业的科学化、正规化管理,与世界接轨的重要条件。 因此,开发这样一套软件成为很有必要的事情,在下面的各章中我们将以开发一套学生选课系统为例,谈谈其开发过程和所涉及到的问题及解决方法。2.1.1 .系统目标利用学校现有的软硬件设施,并根据学生选课的规则,开发出有本校特色的、适合于本校教务处进行学生选课工作的系统,本系统应该严格根据本学校学生选课规则进行设计,并且应该达到以下几个要求:必须能够满足管理员、教师和学生模块的不同功能需求。(1) 权限管理,为不同的操作用户分配不同的操作权限。(2) 管理员能够管理所有系统数据库的信息,并且能够对教师和学生模块进行管理。(3) 教师能够查询自己所担任的课程,并且可以向管理员提出课程申请。(4) 学生可以修改自己的基本信息,在模块开放的时间内,进行基本的选课和查看、删除自己的已选选课信息。2. 操作应该尽可能的简单。(1) 在界面设计上应该力求简洁明了,能够让用户很容易地看懂该如何操作。(2) 功能集成上应该尽可能地方便用户的操作,尽可能实现一个功能或几个功能能在一个界面上操作完成。3. 界面力求友好。(1) 界面设计上应该美观大方,控件的分布应该合理。(2) 界面上应该具有适量的提示性文字,提示用户应该怎样操作来完成相应的功能。2.1.2 .运行环境 软件配置操作系统: Win XP中文版或更高。数据库选择:SQLServer 2008。开发工具:。2.3 需求规定随着网络技术和信息技术的发展, 高校学生人数的增加和高校实行学分制,使学生选课的自由度越来越大,教务管理人员的工作量越来越大,而且还容易出现人为的错误,为了减轻教务人员的工作量,增强学生选课时的主动性和积极性,提高选课效率,为此设计基于.NET平台BS模式的学生选课系统。确定本系统中,有三类用户:系统管理员,教师和学生,三种不同的用户所具有的操作权限以及操作内容均不一样。本选课系统给予管理员很大的自主权,系统管理员负责管理系统中的学生、教师、课程、成绩等模块信息,可以维护系统中的这些信息如添加、修改、查询、和删除。系统管理员不能参与选修课程等,而这一切均由学生登录网站自行完成。系统管理员设置一个选课时间段,在这段时间内,学生可以登录网站选择课程。教师用户登陆网站后可以提交学生成绩,检索自己的信息及课程上课时间和地点,当系统中出现时间地点冲突的时候,系统向教师用户报告并推荐一个时间地点。每门课程可以是必修或则选修,并可以在课程结束后给予分数,如果学生及格,学生将获得该课程的学分。对于学生用户,每个学生除了必须选择必修课程外,至少还要选择两门选修课程,学生可以对自己选课信息锁定,以免不小心被修改。当时候超过选课时段后,系统自动锁定学生的选课课程。课程结束后学生可登录网站检索自己的信息、选课的信息和成绩。根据上面的要求,从操作功能上可以分为两个类:一个是共有操作,主要实现用户的登录、注销和修改密码等;另一种是为不同用户定制不同操作。2.3.1功能需求1系统管理员系统管理员登录系统之后,管理员可以对学生、教师、课程、成绩进行相应的管理以及设置选课时间段。学生管理,检索、修改、删除、录入学生的基本信息并且也可以按条件对检索学生的信息、录入学生班级信息;教师管理,检索、修改、删除、录入教师的信息,以及教师所属那个部门;课程管理,检索、修改、删除、录入课程的信息,检索到教师所授课程的地点、上课时间等信息;成绩管理,成绩是学生选修课程的结果,又因为参数完整性可知,没有课程名称和教师的学生的成绩是不存在的,但是也可以对成绩的录入、删除、修改、检索操作;设置选课时间段:系统管理员通过此项功能设置选课时段,只有在选课时间段里,学生才可以选择课程,超过次时间段,学生选课信息被自动所定,不得修改。2教师用户教师用户登录系统后可以检索个人信息,如姓名,电话等;检索所授课的信息,如所授课那些课程、在哪专业、班级上课等信息;还可以检索所授教的学生的信息,如学号、姓名、专业、班级等信息;提交学生成绩,课程结束后,教师用户登录系统,可以为学过课程的学生给予相应的成绩。3学生用户学生登录系统后,检索个人信息,可以查看学生的个人信息,如学号、姓名,性别,电话、专业、院系等;查看必修课程,可以查看所有的必修课程,查看该课程的信息,上课时间地点,开课教师信息等;选择选修课程,在所有选修课程中可以选择至少两门选修课程,同时可以查看相关信息。2.3.2性能需求精度:在进行输入输出时必须清晰的列出所有输入状况及数据,不能马马虎虎,要考虑到尽可能达到的范围,以使输入输出完整准确。时间特性要求: 查询服务部分:用户通过电脑提交命令到返回结果不超过5秒钟。 数据管理部分:提交某一数据录入到结果返回不超过5秒钟。第三章 总体设计3.1系统流程图登录验证管理员学生教师课程管理管理员教师管理管理员学生管理管理员提交成绩教师审核信息教师选课学生成绩管理教师修改密码学生管理员管理员教师DBDBDBDBDBDBDB退出、 注销图3-1系统流程图3.2软件结构图3.2.1模块结构图图3-2模块结构图3.2.2模块清单Course.aspxCoursedlg.aspxCoursedlg1.aspxLogin.aspxSelect_Course.aspxStudent_Login.aspxStudent_Logindlg.aspxTeacher_0peration.aspxTeacher_Course.aspxTeacher_Login.aspxTeacher_score.aspxCkCourse.aspxTeacher.aspxStudent.aspxTeacherDlg.aspxStudentDlg.aspx3.3 数据库设计数据库是数据管理的最新技术,是计算机科学的重要分支。今天,信息资源已成为各个部门的重要财富和资源。建立一个满足学校信息处理要求的行之有效的信息系统也成为一个高校生存和发展的重要条件。因此,作为信息系统核心基础的数据库技术得到越来越多的应用。从小型单项事务处理系统到大型信息系统,从联机事务处理到联机分析处理,从一般企业管理到计算机辅助设计与制造(CAD/CAM)、计算机集成制造系统(CIMS)、办公信息系统(OIS)等,越来越多新的应用领域采用数据库存储和处理他们的信息资源6。学生选课系统数据库的设计分为E-R概念设计、逻辑设计、物理设计等。3.3.1 整个E-R 用户名密码管理员教师IDnn编号电话管理管理密码密码姓名mm教师姓名学生性别性别电话编辑选课邮箱上课地点考核方式nn课程授课学时总学时数剩余数课程ID授课教师课程名上机学时审核情况最少开课人数计划人数图3-5 E-R图3.3.2 详细表结构表3-1 Admin表字段类型长度描述AdminIDint10管理员账号AdminPwdvarchar20管理员密码表3-2 score表字段类型长度描述studentIDchar10学生编号courseIDchar10班级编号scorefloat10学分sumPeriodint10总学时 表3-3 Course表字段类型长度描述courseIDchar10课程编号(主键)courseNamevarchar20课程名称teacherIDchar10教师编号sumPeriodint10总学时classPeriodint10上课学时comPeriodInt10上机Auditvarchar20课程星期localint10课程地点timeint10上课时间planNumint10计划人数restNumint10剩余人数lessNumint10最少人数表3-4 Student表字段类型长度描述StudentIDchar10学生用户名StudentNamevarchar20学生姓名StudentPwdvarchar20学生密码Sexvarchar20性别PhonevarChar11电话号码表3-5 Teacher表字段类型长度描述TeacherIDchar10教师用户名TeacherNamevarchar20教师姓名teacherPwdVarchar20教师密码sexVarchar20性别PhoneVarchar20电话号码TeacherNoVarchar20教师编号EmailVarchar20电子邮件第四章 系统实现方式系统设计是系统过程中重要的一个环节,它是对系统分析的具体描述,设计的如何,也关乎到系统的实用性,它的具体任务是依据系统分析工作得到的系统功能和信息需求设计系统的处理流程,确定系统的应用软件结构,并对系统应用软件结构的每一功能模块给出其实现的输入、输出及处理的设计5。 界面设计就是对系统功能模块的具体实现,它的设计关乎系统应用软件结构的每一功能模块的输入、输出及处理的过程。4.1 登陆的实现 所用到的页面:Login.aspx所用到的数据库:dbo.Student , dbo.Course ,dbo.Teacher图4-1 登录重要代码:protected void btnLogin_Click(object sender, EventArgs e) string connstr = server=.;user id=sa;password=123456;database=selecting; SqlConnection sconn = new SqlConnection(connstr); sconn.Open(); string UserName = Text_name.Text.ToString(); string Password = Text_psw.Text.ToString(); string str = ; if (RadioButtonList1.SelectedIndex = 0) str += select AdminID,AdminPwd from dbo.Admin where AdminID= + UserName + and AdminPwd= + Password + ; SqlCommand cmd = new SqlCommand(str, sconn); SqlDataReader dr = cmd.ExecuteReader(); if (dr.Read() SessionUserName = drAdminID.ToString().Trim(); SessionPassword = drAdminPwd.ToString().Trim(); Response.Redirect(login.aspx);/登陆成功跳转页面 else lbluser.Text = 用户名和密码无效,请重试!; lbluser.Visible = true; else if (RadioButtonList1.SelectedIndex = 1) str += select studentID,studentPwd from dbo.Student where studentID= + UserName + and studentPwd= + Password + ; SqlCommand cmd = new SqlCommand(str, sconn); SqlDataReader dr = cmd.ExecuteReader(); if (dr.Read() SessionUserName = drstudentID.ToString().Trim(); SessionPassword = drstudentPwd.ToString().Trim(); Response.Redirect(login.aspx);/登陆成功跳转页面 else lbluser.Text = 用户名和密码无效,请重试!; lbluser.Visible = true; else str += select teacherID,teacherPwd from dbo.Teacher where teacherID= + UserName + and teacherPwd= + Password + ; SqlCommand cmd = new SqlCommand(str, sconn); SqlDataReader dr = cmd.ExecuteReader(); if (dr.Read() SessionUserName = drteacherID.ToString().Trim(); SessionPassword = drteacherPwd.ToString().Trim(); Response.Redirect(Teacher_Login.aspx);/登陆成功跳转页面 else lbluser.Text = 用户名和密码无效,请重试!; lbluser.Visible = true; 4.2 教师管理的实现 Teacher_Login.aspx根据前台登录页面获取session“TeacherID”用以区分登录的教师信息。此页面查看教师的基本信息,但不可修改信息,修改信息需要找管理员。图4-2 学生选课系统重要代码:(1).对教师基本信息的查看。SqlConnection conn = new SqlConnection(); conn.ConnectionString = Data Source=.;Initial Catalog=selecting;User ID=sa;Password=123456; string id = c001; string sql = SELECT teacherID, teacherName, sex, Phone, EmailFROM Teacher where teacherID = +sessionTeacherID+; SqlDataAdapter sqlda = new SqlDataAdapter(sql, conn); DataSet ds = new DataSet(); sqlda.Fill(ds,教师信息表); lblTeacherID.Text = id; lblTeacherName.Text = ds.Tables教师信息表.Rows01.ToString(); lblTeacherSex.Text = ds.Tables教师信息表.Rows02.ToString(); lblTeacherPhone.Text = ds.Tables教师信息表.Rows03.ToString(); lblTeacherEmail.Text = ds.Tables教师信息表.Rows04.ToString();Teacher_Course.aspx此页面对课程进行管理,对课程新增、修改、详情以及删除课程。以及使用审核进行搜索。图4-3 学生选课系统搜索按钮代码conn = new SqlConnection(); conn.ConnectionString = Data Source=.;Initial Catalog=selecting;User ID=sa;Password=123456; string sql = SELECT courseID, courseName, sumPeriod, classPeriod, comPeriod, timeFROM CourseWHERE 1=1 and teacherID = c001; if (ddlAudit.SelectedIndex != 0) sql += and Audit = + ddlAudit.SelectedValue + ; SqlDataAdapter sqlda = new SqlDataAdapter(sql, conn); DataTable table = new DataTable(); sqlda.Fill(table); this.SqlDataSource1.SelectCommand = sql; this.GridView1.DataBind(); conn.Close();删除按钮代码conn = new SqlConnection(); conn.ConnectionString = Data Source=.;Initial Catalog=selecting;User ID=sa;Password=123456; conn.Open(); DataSet ds = new DataSet(); string sql = select * from Course; SqlDataAdapter adapter = new SqlDataAdapter(sql, conn); adapter.Fill(ds, table1); adapter.DeleteCommand = new SqlCommand(DELETE FROM Course WHERE (courseID = +e.CommandArgument.ToString()+), conn); ds.Tablestable1.Rowsds.Tablestable1.Rows.Count - 1.Delete(); adapter.Update(ds, table1); sql = SELECT courseID, courseName, sumPeriod, classPeriod, comPeriod, timeFROM CourseWHERE 1=1 and teacherID = +sessionTeacherID+; SqlDataAdapter sqlda = new SqlDataAdapter(sql, conn); DataTable table = new DataTable(); sqlda.Fill(table); this.SqlDataSource1.SelectCommand = sql; this.GridView1.DataBind(); conn.Close();Teacher_score.aspx批量录入数据进行对学生成绩的管理。图4-4 学生选课系统批量录入成绩代码:conn = new SqlConnection(); conn.ConnectionString = Data Source=.;Initial Catalog=selecting;User ID=sa;Password=123456; conn.Open(); SqlCommand sqlcom = null; for (int i = 0; i = 90 & score = 70 & score = 60 & score 70) xuefen = 6; else xuefen = 4; string sqlstr = UPDATE Score SET score = + (TextBox)GridView1.Rowsi.Cells4.FindControl(tbxScore).Text + ,sumPeriod = + xuefen + WHERE (studentID = + GridView1.Rowsi.Cells0.Text + ) AND (courseID = + GridView1.Rowsi.Cells2.Text + ) ; sqlcom = new SqlCommand(sqlstr, conn); sqlcom.ExecuteNonQuery(); string ssqqll=SELECT Student.studentName, Course.courseName, Score.score, Score.studentID, Score.courseID, Score.sumPeriod FROM Score INNER JOIN Course ON Score.courseID = Course.courseID INNER JOIN Student ON Score.studentID = Student.studentID WHERE (Course.teacherID = +sessionTeacherID+); this.SqlDataSource1.SelectCommand = ssqqll; this.GridView1.DataBind(); conn.Close();Teacher_Operation.aspx此页面主要使用FormView控件进行对前台要求的增加、删除和修改。Teacher_Course.asp页面添加按钮后页面图4-5 学生选课系统Teacher_Course.asp页面修改按钮后页面图4-6 学生选课系统Teacher_Course.asp详情按钮后页面图4-7 学生选课系统重要代码: if (Request.QueryStringop.ToString() != null) string op = Request.QueryStringop.ToString(); if (op = insert) this.FormView1.ChangeMode(FormViewMode.Insert); if (op = details) this.FormView1.ChangeMode(FormViewMode.ReadOnly); if (op = update) this.FormView1.ChangeMode(FormViewMode.Edit); TextBox TeacherID = FormView1.FindControl(teacherIDTextBox) as TextBox; TeacherID.Text = SessionUserName.ToString(); TextBox CourseID = FormView1.FindControl(courseIDTextBox11) as TextBox; SqlConnection sqlconn = new SqlConnection(); sqlconn.ConnectionString = Data Source=.;Initial Catalog=selecting;User ID=sa;Password=123456; sqlconn.Open(); string sql = select count(*) from Course; SqlCommand comm = new SqlCommand(sql, sqlconn); int result = Convert.ToInt32(comm.ExecuteScalar(); result = result + 1; CourseID.Text = c+result.ToString(); else Response.Redirect(Login.aspx); 4.3学生管理的实现 4.2.1学生登录界面:所用到的页面:Student_Login.aspx、Student_Logindlg.aspx数据库所用到的表:dbo.Student功能:学生登录成功后只看到自己的个人信息,可以查看个人信息详情,修改功能按键只可以修改自己的密码。点击重新登录返回登录界面。(图下三张图)图4-8 学生选课系统图4-9 学生选课系统图4-10 学生选课系统主要代码实现:protected void Page_Load(object sender, EventArgs e) if (Request.QueryStringop != null) string op = Request.QueryStringop.ToString(); if (op = update) /修改密码 this.FormView1.ChangeMode(FormViewMode.Edit); if (op = detail) /查看详情 this.FormView1.ChangeMode(FormViewMode.ReadOnly); protected void FormView1_ItemUpdated(object sender, FormViewUpdatedEventArgs e) if (e.Exception = null) e.KeepInEditMode = true; Response.Write(alert(修改成功); else e.KeepInEditMode = true; Response.Write(alert(+e.Exception.Message+); 4.3.2课程信息页面所用到的页面:Course.aspx、Coursedlg.aspx 、Coursedlg1.aspx数据库相关表:dbo.Course、dbo.Teacher、dbo.Score功能:查看课程信息,从而进行选课,可以查看每个课程的详情,点击选择按钮进行选课操作,选课成功自动增加到自己的选课信息中,在查看选课信息选择框可以查看自己的选课情况以及个人已修课程的成绩,下拉框进行课程的查找,点击搜索即可。图4-11 学生选课系统图4-12 学生选课系统图4-13 学生选课系统主要代码:搜索按钮: protected void Button1_Click(object sender, EventArgs e) string sql = SELECT DISTINCT Course.courseID, Course.courseName, Teacher.teacherName, Course.credit, Course.time, Course.local FROM Course INNER JOIN Teacher ON Course.teacherID = Teacher.teacherID where 1=1; if (this.dplcourse.SelectedIndex != 0) sql += and Course.courseName=+this.dplcourse.SelectedValue+ ; this.SqlDataSource1.SelectCommand = sql; this.GridView1.DataBind();详情按钮: protected void Page_Load(object sender, EventArgs e) if (Request.QueryStringop != null) string op = Request.QueryStringop.ToString(); if (op = detail) this.FormView1.ChangeMode(FormViewMode.ReadOnly); 选择按钮:protect
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 地勘现场工作制度
- 化验科工作制度
- 公开工作制度
- 儿童工作制度
- 一窗通工作制度
- 厨师安全培训内容
- 煤矿安全意识培训课件
- 金属冶炼安全培训
- 真空熔炼安全培训
- 危险化学品安全知识培训-现代卡通插画风格
- 2026年浙江机电职业技术学院单招职业技能考试备考试题带答案解析
- 义务教育道德与法治课程标准日常修订版(2022年版2025年修订)
- 2026年商丘学院单招(计算机)测试备考题库必考题
- 2025年卫生管理初级师考试真题及答案
- 企业信息系统维护手册与模板
- (2025年)政工师职称考试题库及答案
- 残疾人证核发与管理
- 安全员题库宝破解版及答案解析
- 《政务信息系统运行维护费用定额测算方法》
- 2025-2030胎教音乐对婴儿脑波影响的医学测量技术发展
- 5年(2021-2025)北京高考数学真题分类汇编:专题03 三角函数与解三角形(解析版)
评论
0/150
提交评论