一.设计目的随着Internet的迅速发展,尤其是进入二十世纪九十年代以来,以电子商务为代表的应用更是如潮水般迅速渗透到了社会经济领域的各个角落,给全球经济带来一次新的革命,有力地推动了商业、贸易、营销、金融、广告运输、教育等各领域的创新,也逐渐改变了整个商业社会的竞争格局。因此有人曾预言:网络不仅是二十一世纪整个世界经济增长的发动机,而且在今后的五到十年之间,任何一个行业如果不实施电子商务,就会由于无商可务而走向亡。学生课程和成绩管理系统的设计目的是要将学生选择的课程和学生成绩通过网络进行管理。为学生、教师和教务管理人员提供便利。系统的用户共有3种类型,分别为系统管理员、学生及教师,系统对于一个用户只允许以一种身份登录。系统管理员登录系统系统后可以对系统进行管理,其主要操作是维护学生、教师、课程和班级的基本信息。学生登录后的主要操作是选课和个人信息的维护。教师登录后的主要操作是选择学生并为学生登录成绩。将系统需求加以总结,可以得出系统需求如下:(1)系统可以运行在Windows操作系统平台上,并具有友好的用户界面。(2)系统用户类型为:管理员、教师、学生。(3)系统对于一个用户只允许以一种身份登录。(4)只有管理员可以维护学生、教师、课程、班级的基本信息。(5)学生可以选课并维护自己的个人信息。(6)教师可以选择上课的学生并为学生登录成绩。二.系统规划2.1系统功能模块划分学生课程及成绩管理系统的角色是管理员、学生和教师,管理员对学生、教师、课程和班级信息进行维护,学生选择想要上的课程,查看所选的学分以及修改个人信息,教师决定上课的学生以及给学生学分。根据以上的用户操作需求,将系统划分为如下3大功能,并对其模块的划分和功能进行描述。(1)管理员功能登录:登录学生管理:列表、增加、修改、删除。教师管理:列表、增加、修改、删除。课程管理:列表、增加、修改、删除。班级管理:列表、增加、修改、删除。(2)学生功能登录:登录。选课:选课。学分:查看。个人信息:修改。(3)教师功能登录:登录。选择学生:课程列表、学生列表、选择。公布成绩:课程列表、学生列表、成绩。整个系统的模块结构如图所示:系统模块结构图2.2系统流程分析本系统中的中心对象是学生和教师,该系统的流程主要描述的是学生选择课程后,教师根据选课的学生决定选哪些学生,最后教师给学生学分。该系统的适用对象包括学生、教师和管理员,因此包括3个基本的流程。图2.2.1描述的是管理员的操作流程:首先管理员要进行学生、教师、课程和班级数据的初始化。图2.2.1系统流程图(管理员)图2.2.2描述的是学生的操作流程图:学生根据学生号和密码登录系统。初始的密码由管理员提供。学生登录系统后,可以修改个人信息、选课和查看学管理员登录学生列表教师列表课程列表班级列表新增修改删除新增修改删除新增修改删除新增修改删除学生课程管理系统学生教师管理员选课查看学分修改信息选择学生公布成绩学生管理教师管理课程管理班级管理分。图2.2.2系统流程图(学生)图2.2.3描述的是教师的操作流程:教师根据教师号和密码登录系统,初始的密码由管理员提供。教师登录系统后,选择学习本课程的学生和给学生学分。图2.2.3系统流程图(教师)三.设计工具及主要菜单功能介绍通过前面的分析已经明确系统用户共有如下3类:管理员:管理学生、教师、课程和班级信息。学生:选课、查看成绩、修改个人信息。教师登录所教课程:列表:选择学生所教课程列表:选择学生对应学生列表:选择学生对应学生列表:选择学生选择学生打分学生登录课程列表查看学分情况更改个人信息选课教师:选择学生、登录成绩。3.1用户登录功能不同用户登录系统时首先选择对应的用户类型,然后输入用户号及密码登录系统。系统的管理员由系统内部设定,学生和教师由管理员添加。3.2管理员登录后选择功能管理员登录后,会得到欢迎信息表示登录成功,如果登录失败,则会有错误提示信息。管理员可以在页面中单击“学生”、“教师”、“课程”和“班级”这4个链接进入不同页面继续下一步的操作。3.3管理员管理学生功能(1)管理员查看学生信息(2)管理员添加学生信息(3)管理员编辑学生信息(4)管理员删除学生信息3.4管理员管理教师功能(1)管理员查看教师信息(2)管理员添加教师信息(3)管理员编辑教师信息(4)管理员删除教师信息3.5管理员管理课程功能(1)管理员查看课程信息(2)管理员添加课程信息(3)管理员编辑课程信息(4)管理员删除课程信息3.6管理呀管理班级功能(1)管理员查看班级信息(2)管理员添加班级信息(3)管理员编辑班级信息(4)管理员删除班级信息3.7学生用户登录后选择功能学生登录本系统后,会得到欢迎信息表示登录成功,如果登录失败,则会有错误提示信息。学生可以在所示的页面中单击”选修课程”、“查看学分”和“更改信息”这3个链接进入不同的页面继续下一步的操作。3.8学生选修课程功能学生登录成功后,通过单击所示页面中的“选修课程”链接可以跳转到学生所有能够选择的课程列表,并在每条课程信息之后放置了一个“注册”链接,学生可以通过单击这个链接来选修这门课程。3.9学生查看成绩功能通过单击所示页面中的“查看成绩”链接可以跳转到学生所有课程的成绩列表。3.10学生更新个人信息功能单击“更改信息”链接可以进入到学生修改自己的一些信息的页面。3.11教师用户登录后选择功能教师登录后,会得到欢迎信息表示登录成功,如果登陆失败,则会有错误提示信息。教师可以在所示的页面中单击“选择学生”和“公布成绩”这两个链接进入不同页面继续下一步的操作。3.12教师选择学生功能通过单击所示页面中的“选择学生”链接可以跳转到教师所教授的课程列表页面,并在每条课程信息之后放置了一个“选择”链接,教师可以通过单击这个链接来选择报名这门课程的学生。单击“选择”链接后,将跳转到列出了所有报名这门课程的学生信息页面,教师可以通过单击某条学生信息后的“接受”链接来选择这名学生。3.13教师登录成绩功能单击“公布成绩”链接跳转课程列表界面。这个页面显示了教师所教授的课程列表。并在每条课程信息之后放置了一个“选择”链接,教师可以通过单击这个链接转到学生列表页面,再通过单击某位学生信息后的链接,跳转到成绩录入页面,教师用这个页面给学生打分。四.设计具体步骤4.1登录界面的代码如下:%@pagelanguage=”java”contentType=”text/html;charset=gb2312”%%@tagliburi=””prefix=”bean”%%@tagliburi=””prefix=”html”%%@tagliburi=””prefix=”tiles”%!DOCTYPEHTMLPUBLIC“-//W3C//DTDHTML4.01Transitional//EN”html:htmllang=”true”headhtml:base/titlelogin/titlestyletype=”text/css”!—.style1{color:#0000FF;Font-weight:bold;Font-size:xx-large;}.style2{color:#FF0000}--/style/headbodyhtml:formaction=”/login”method=”post”tablewidth=”100%”border=”0”align=”center”tralign=”center”tdpclass=”style1”学生课程及成绩管理系统/p/trtrtdalign=”center”spanclass=”style2”html:errors//span/trtrtdalign=”center”tableborder=”1”trtdalign=”center”用户类型:tdhtml:selectproperty=”sort”mulitiple=”true”size=”i”value=”1”html:optionkey=”a”value=”1”学生/html:optionhtml:optionkey=”b”value=”2”教师/html:optionhtml:optionkey=”c”value=”3”管理员/html:option/html:select/tdtrtdwidth=”22%”align=”center”用户名:/tdtdwidth=”74”%htmlLtetproperty=”username”?html:errorsproperty=”username”//td/trtrtdalign=”center”密码:/tdtdhtml:passwordproperty=”password”/html:errorsproperty=”password”//td/trtrtdalign=”center” /tdtdhtml:submitvalue=”登录”//td/tr/table/td/tr/table/html:form/body/html:html显示效果如下图所示:4.2管理员管理学生界面的代码如下:%@pagelanguage=”java”contentType=”text/html;;charset=gb2312”%%@pageimport=”java.sql.*,com.stuman.service.*”%htmlheadtitle学生/title/headbody%Stringadmin_id=(String)session.getAttribute(“id”);if(admin_id==null){response.sendRedirect(“login.jsp”);}intmark=0;%center所有学生/centerpalign=rightahref=”addstudent.jsp”新加学生/a/pdivalign=”center”tablewidth=”75%”border=”1”trtd学生/tdtd姓名/tdtd密码/tdtd籍贯/tdtd系别/tdtd性别/tdtd学分/tdtd电话/tdtdE_mail/tdtd删除/tdtd更新/td/tr%ListStudentstulist=newListStudent();stulist.list(request,out);%/table/divpalign=”center” /pahref=”admin.jsp”<<Backa/body/html显示效果如下所示:4.3添加学生页面的代码如下:%@pagelanguage=”java”contentType=”text/html;charset=gb2312“import=”java.util.*,org.seacat.dao.*”%%@tabliburi=”/WEB-INF/c.tld”prefix=”c”%htmlheadtitle新增学生/titlestyletype=”text/css”!--.style5{font-size:large}--/stylescriptlanguage=”javascript”functioncheckCl