《2022年JSP课程设计报告-学生成绩管理系统 .pdf》由会员分享,可在线阅读,更多相关《2022年JSP课程设计报告-学生成绩管理系统 .pdf(21页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、沈航北方科技学院JSP程序设计报告程序名称学生成绩管理系统教 学 系专业班级学号学生姓名指导教师2014 年 12 月名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 21 页 - - - - - - - - - 2 目录一、设计目的 . 3二、设计思路 . 3三、具体实现 . 41.功能介绍: . 42.数据库构成 . 53.程序构成 . 7四、设计体会与小结 . 10附录 1用户手册 . 错误!未定义书签。附录 2源程序 . 12名师资料总结 - - -精品资料欢迎下载
2、 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 21 页 - - - - - - - - - 3 一、设计目的1. 通过开发具体系统,了解并熟悉jsp 2. 掌握网络编程的一般模式, 使用 jsp+javabean+servlet编写具体可用的系统3. 通过开发学生成绩管理系统,充分体会MVC 模式的优点及在网络开发的流行性,培养运用此模式解决实际问题的能力4. 通过设计系统,在开发过程中碰到问题解决问题的过程中,逐渐提高自己的开发能力二、设计思路本系统采用传统的MVC 开发模式,即 Jsp+Javabean+
3、Servlet ,使用 mysql 数据库。其中 Jsp 实现视图端, Javabean 是模型端, Servlet是控制端。 Servlet担当主要逻辑控制,通过接受Jsp 传来的用户请求,调用以及初始化JavaBean,再通过 Jsp 传到客户端,本系统中SqlBean 担当主要的与数据库的连接与通信,JavaBean在本系统中主要担当配合Jsp 以及 Servlet来完成用户的请求, 而 Jsp主要担当接受与响应客户端。体系结构图如图 1 所示:图 1 体系结构图浏览器servlet jsp Javabean Database 请求响 应名师资料总结 - - -精品资料欢迎下载 - -
4、- - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 21 页 - - - - - - - - - 4 三、具体实现1.功能介绍 :管理员端管理员可以进行的操作如下: 1 、对学生信息进行增加、删除、修改、查询2、对教师信息进行增加、删除、修改、查询3、对课程信息进行增加、删除、修改、查询4、查看个人信息并进行性修改5、 查看学生的选课信息、 学生的成绩以及排名情况, 其中在查看学生排名时,可以根据学生的所学课程和所在专业进行排名查询6、 对学生的选课信息进行添加、删除等操作教师端教师可以进行的操作如下:1、查看个人信息并修改
5、登录密码2、查看学生信息,其中包括对学生成绩进行查询与修改,在本系统中,将教师 的成绩录入功能与成绩修改功能合并3、查看学生的排名情况,包括学生的课程排名与专业排名学生端学生可以进行的操作如下:1、修改个人登录系统的密码2、查看自己的课表3、进行选课4、查询自己成绩以及成绩排名情况,同时拥有通过学号查询其他人成绩的权利名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 21 页 - - - - - - - - - 5 框图结构程序的框图结构如图2 所示:图 2 框架结构2.数
6、据库构成数据库作为后台数据存储空间,由7 张表组成,设计遵循数据库设计要求,力求规范,各表的结构如下:manager 管理员信息表teacher 教师信息表student 学生信息表名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 5 页,共 21 页 - - - - - - - - - 6 course 课程信息表studentcourse 学生选课信息表score 学生成绩表rank 学生平均学分积点表名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - -
7、 - - - - - - - - 名师精心整理 - - - - - - - 第 6 页,共 21 页 - - - - - - - - - 7 3.程序构成Jsp各个输入界面,显示界面,用于信息的输入输出以及显示Errorpage.jsp 错误信息显示界面Exist.jsp 退出系统Login.jsp 登录界面Manager:addcourse.jsp 添加课程界面addstucourse.jsp 为学生选课界面addstudent.jsp 添加学生界面addteacher.jsp 添加教师操作m1.jsp 显示页面的上栏信息m2.jsp 显示页面左栏信息m3.jsp 显示页面右栏信息manag
8、er.jsp 划分分配页面比例Searchonescore.jsp 查看某个学生成绩界面Showcourse.jsp 显示课程信息界面Showstucou.jsp 显示学生选课信息界面Showstudent.jsp 显示学生信息Showteacher.jsp 显示教师信息Updatecourse.jsp 更改课程信息updateMpassword.jsp 更改密码界面Updatescore.jsp 更改成绩界面Updatestudent.jsp 更改学生信息界面Updateteacher.jsp 更改教师信息界面Teacher: Rankcourse.jsp 输入课程号进行排名界面名师资料总结
9、 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 7 页,共 21 页 - - - - - - - - - 8 Rankcourse2.jsp 显示按课程排名信息Rankmajor.jsp 输入专业名进行排名界面Rankmajor2.jsp 显示按专业排名信息Searchonescore.jsp 查看某个学生成绩界面Showstudent.jsp 显示学生信息showTinfo.jsp 显示个人信息T1.jsp 显示页面的上栏信息T2.jsp 显示页面左栏信息T3.jsp 显示页面右栏信息Teac
10、her.jsp 划分分配页面比例Updatescore.jsp 更改成绩界面updateTpassword 更改密码界面Student S1.jsp 显示页面的上栏信息S2.jsp 显示页面左栏信息S3.jsp 显示页面右栏信息Searchmyself.jsp 查看个人成绩Searchoneself1.jsp 显示其他人成绩Searchothers.jsp 输入要查询其他人的学号界面Selectcourse.jsp 选课界面Showstucou.jsp 显示个人选课信息Student.jsp 划分分配页面比例updateSpassword.jsp 修改密码JavaBean JavaBean定义
11、各种功能类sqlBean 对数据库的各种操作coursescore 课程成绩信息名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 8 页,共 21 页 - - - - - - - - - 9 student 学生类teacher 教师类course 课程studentcourse 学生选课信息Servelet 作为整个系统的控制者, Servlet接受 Jsp 的请求与数据,调用JavaBean完成程序功能,并将结果转交给Jsp 显示各 Servlet如下:Addcourse 添加课程
12、Addstudent 添加学生Addteacher 添加教师Check 验证登录信息Delcourse 删除课程Delstucou 删除学生选课信息Delstudent 删除学生信息Delteacher 删除教师M_selectcourse 管理员为学生选课M_updatescore 管理员更改成绩Selectcourse 学生选课Updatecourse 更改课程信息updateMpassword 更改教师密码Updatescore 更改成绩updateSpassword 更改学生密码Updatestudent 更改学生信息Updateteacher 更改教师信息updateTpasswor
13、d 更改教师密码名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 9 页,共 21 页 - - - - - - - - - 10 四、设计体会与小结通过学生成绩管理系统的设计,我对软件开发又有了更深一些的认识,对MVC 模式的特点有了一定的看法。在软件设计中,再碰到问题及解决问题的过程中有了一定的提高。做程序一定要提前做好规划,这样会避免在系统开发过程中出现混乱,并且在对程序进行修改时也能减少附带的错误。系统是不可能完美的, 我们要做的就是要在现实需求的基础上尽量减少用户操作的繁琐,为
14、用户提供便利,尽量使系统人性化。要解决问题拖沓, 要及时有效地处理问题及及时完成任务,编程是个慢活细活,要有耐性。要充分利用网络的便利, 遇到一些想不通的地方可以上网查询,对平时没有及时对所学的东西进行扩展和提高。同时周围的同学也是很好的老师,有些问题自己想可能想不通,但是让别人帮自己看看就能很轻易解决问题。不要局限在课本内容, 也不要只看课本, 最好的方法就是编程, 在实践中学习。当碰到问题时就去查资料,去学习,然后把学到的知识运用到程序中,这样对知识的掌握就更加彻底。一开始我采取的办法就是看课本,但是课本看完了,自己还是很头晕, 知识点太琐碎, 看一遍根本记不住多少东西,后来就采取上面的办
15、法,这样对 JSP程序设计理解的越来越清楚。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 10 页,共 21 页 - - - - - - - - - 11 附录 1用户手册运行程序,程序显示登录界面如图1 所示图 1 登录界面输入用户名和密码后,选择相应的身份,点击登录系统。出现如图2 所示的程序界面。图 2 程序运行界面名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1
16、1 页,共 21 页 - - - - - - - - - 12 附录 2源程序package servlet; import java.io.IOException; import java.io.PrintWriter; import java.sql.ResultSet; import java.sql.SQLException; import javax.servlet.RequestDispatcher; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.
17、servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpSession; import bean.sqlBean; public class check extends HttpServlet /* * Constructor of the object. */ public check() super(); /* * Destruction of the servlet. 名师资料总结 - - -精品资料欢迎下载 - - - -
18、- - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 12 页,共 21 页 - - - - - - - - - 13 */ public void destroy() super.destroy(); / Just puts destroy string in log / Put your code here /* * The doGet method of the servlet. * * This method is called when a form has its tag value method equals to get. * *
19、 param request the request send by the client to the server * param response the response send by the server to the client * throws ServletException if an error occurred * throws IOException if an error occurred */ public void doGet(HttpServletRequest request, HttpServletResponse response) throws Se
20、rvletException, IOException response.setContentType(text/html;charset=utf-8); PrintWriter out = response.getWriter(); String id=null; String password=null; String kind=null; id=request.getParameter(id); HttpSession session=request.getSession(true); session.setAttribute(id, String.valueOf(id); passwo
21、rd=request.getParameter(password); kind=request.getParameter(kind); 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 13 页,共 21 页 - - - - - - - - - 14 sqlBean db=new sqlBean(); String pw=; String sql=select password from +kind+ where id=+id+; ResultSet rs=db.executeQuer
22、y(sql); try if(rs.next() pw=rs.getString(password); if(password.equals(pw) goo(request,response,kind); else System.err.println(用户名或密码错误!); doError(request,response,用户名或密码错误!); catch(SQLException e) System.err.println(用户名或密码错误!+e.getMessage(); System.out.print(用户名或密码错误!+e.getMessage(); catch(ServletE
23、xception f) System.err.println(用户名或密码错误!+f.getMessage(); catch(IOException g) System.err.println(用户名或密码错误!+g.getMessage(); /* * The doPost method of the servlet. * * This method is called when a form has its tag value method equals to post. 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师
24、精心整理 - - - - - - - 第 14 页,共 21 页 - - - - - - - - - 15 * * param request the request send by the client to the server * param response the response send by the server to the client * throws ServletException if an error occurred * throws IOException if an error occurred */ public void goo(HttpServletR
25、equest request,HttpServletResponse response,String kind) throws ServletException,IOException if(kind.equals(student) / 控制页面跳转RequestDispatcher rd=getServletContext().getRequestDispatcher(/student/student.jsp); rd.forward(request, response); if(kind.equals(teacher) RequestDispatcher rd=getServletCont
26、ext().getRequestDispatcher(/teacher/teacher.jsp); rd.forward(request, response); if(kind.equals(manager) RequestDispatcher rd=getServletContext().getRequestDispatcher(/manager/manager.jsp); rd.forward(request, response); public void doError(HttpServletRequest request,HttpServletResponse response,Str
27、ing str) throws ServletException,IOException request.setAttribute(problem, str); 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 15 页,共 21 页 - - - - - - - - - 16 getServletConfig().getServletContext().getRequestDispatcher(/errorpage.jsp); public void doPost(HttpServle
28、tRequest request, HttpServletResponse response) throws ServletException, IOException doGet(request,response); /* * Initialization of the servlet. * * throws ServletException if an error occurs */ public void init() throws ServletException / Put your code here package servlet; import java.io.IOExcept
29、ion; import java.io.PrintWriter; import java.sql.*; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpSession; import bean.studentcourse; 名师资料总结 - -
30、-精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 16 页,共 21 页 - - - - - - - - - 17 import bean.course; import bean.coursescore; public class selectcourse extends HttpServlet /* * Constructor of the object. */ public selectcourse() super(); /* * Destruction of the servlet. */ publi
31、c void destroy() super.destroy(); / Just puts destroy string in log / Put your code here /* * The doGet method of the servlet. * * This method is called when a form has its tag value method equals to get. * * param request the request send by the client to the server * param response the response se
32、nd by the server to the client * throws ServletException if an error occurred * throws IOException if an error occurred */ 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 17 页,共 21 页 - - - - - - - - - 18 public void doGet(HttpServletRequest request, HttpServletRespons
33、e response) throws ServletException, IOException request.setCharacterEncoding(utf-8); response.setContentType(text/html;charset=utf-8); PrintWriter out = response.getWriter(); String sid,cid,clsid; HttpSession session=request.getSession(); sid=(String)session.getAttribute(id); cid=request.getParamet
34、er(cid); course cou=new course(); studentcourse selcou=new studentcourse(); coursescore sc=new coursescore(); sc.addsid(sid); if(selcou.isValid(sid,cid)=false) ResultSet rs=cou.getCinfo(cid); try while(rs.next() selcou.setSid(sid); selcou.setCid(cid); selcou.setClnum(rs.getString(clnum); selcou.setC
35、name(rs.getString(cname); selcou.setCredit(rs.getDouble(credit); selcou.setCapacity(rs.getInt(capacity); selcou.addstucourse(); out.print(选课成功!正在返回,请稍候); response.setHeader(refresh, 2;url=/stu_score_ms/student/showstucou.jsp); catch (NumberFormatException e) 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - -
36、- - - - - - - - 名师精心整理 - - - - - - - 第 18 页,共 21 页 - - - - - - - - - 19 e.printStackTrace(); catch (SQLException e) e.printStackTrace(); else out.print(对不起,您已经选过该课程了!); response.setHeader(refresh, 2;url=/stu_score_ms/student/selectcourse.jsp); /* * The doPost method of the servlet. * * This method i
37、s called when a form has its tag value method equals to post. * * param request the request send by the client to the server * param response the response send by the server to the client * throws ServletException if an error occurred * throws IOException if an error occurred */ public void doPost(H
38、ttpServletRequest request, HttpServletResponse response) throws ServletException, IOException response.setContentType(text/html); PrintWriter out = response.getWriter(); out .println(); out.println(); out.println( A Servlet); out.println( ); out.print( This is ); out.print(this.getClass(); out.print
39、ln(, using the POST method); out.println( ); out.println(); out.flush(); out.close(); public void doError(HttpServletRequest request,HttpServletResponse response,String str) throws ServletException, IOException request.setAttribute(problem, str); request.getRequestDispatcher(/errorpage.jsp).forward(
40、request, response); /* * Initialization of the servlet. * * throws ServletException if an error occurs */ public void init() throws ServletException / Put your code here 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 20 页,共 21 页 - - - - - - - - - 21 完成日期: 2014年 12 月 31日名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 21 页,共 21 页 - - - - - - - - -