版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
...wd......wd......wd...一、实验题目基于JSP/Servlet设计、实现一个课程管理Web应用程序,该程序实现如下功能。有登录页面,登录用帐号密码保存在数据库中,合法登录后进入学习成绩管理页面。否则给出错误提示。在学习成绩管理页面可添加一门课程的成绩,添加内容包括:课程编号、课程名称、学生姓名、课程成绩等内容。添加后信息保存在数据库中。可根据课程名称和学生姓名进展查询。可删除和修改课程信息的内容。〔即删除一条课程记录或修改课程记录中的某一字段〕。二、程序设计1.数据库设计:经过分析可知,改程序主要有如下的实体对象,用户、课程、学生三个实体对象。因此该数据库主要有四张表,分别如下:连接数据库的类设计如下:packagedatabase;importjava.sql.Connection;importjava.sql.DriverManager;publicclassDataBaseConnection{ publicstaticConnectioncreateDBConn(){ try{ Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver"); Connectionconn=DriverManager.getConnection("jdbc:sqlserver://localhost:1433;DatabaseName=Student_system","supiyun","supiyun1989828"); returnconn; }catch(Exceptione){ e.printStackTrace(); returnnull; } } }2.程序界面设计:通过程序的要求可知该程序有jsp页面或Html页面以及servlet组成。Jsp主要负责与用户的交互实现视图页面的功能,而servlet主要负责页面跳转控制以及数据处理的功能。由实验的要求具体的实验设计如下:A、用户通过一个登陆页面,输入用户名、密码,然后该jsp页面将请求发送给处理用户身份验证的servlet,该servlet获取数据库的信息进展校验,如果用户的身份合法则跳转到应用程序的主界面,否则给出错误的提示信息,并且要求用户重新输入用户名和密码重新登陆。登陆页面的设计图如下所示:B、对于程序的主界面主要实现对于用户需要的导航功能以及实现具体的操作功能。该程序的主界面主要有三个Html的Framset构成,分别为topFrame,leftFrame,mainFrame组成,leftFrame主要实现程序的导航,而mainFrame具体的实现程序的功能。主界面设计界面如下:C、具体的功能设计如下<1>学生个人成绩查询:学生通过输入学号可以查询学生所学科目的所以成绩。<2>课程管理:该模块主要实现对课程的新增、已有课程的查询以及对每门课程成绩的录入功能的导航。课程的新增:如有新的课程需要新增,则用户通过提示输入课程编号、课程名称、授课教师名字实现课程的新增。科目成绩管理:通过该功能,用户可以实现对指定的科目的成绩管理,修改或者新增功能。用户可以查询对应的科目增加或修改成绩。查看已有课程:通过查看已有的科目可以实现对已有科目的信息的修改、删除以及学生成绩添加、修改的功能。<3>学生信息管理:通过该模块可以实现对学生个人信息的查询、新增、修改的功能。学生个人信息查询:输入学号或姓名可以查看学生的根本信息。学生个人信息添加:根据提示输入学生的各项根本,提交添加学生信息。学生信息修改:输入学生学号或姓名查找到学生信息,对学生信息进展修改提交。<4>退出登录:完毕会话,返回至登录页面。3.servlet设计:Servlet主要负责对页面请求的跳转和对数据库的操作功能。该程序主要有如下的servlet,分别为:1.AddCourse_Serverlet:添加课程packageservlet;importjava.io.IOException;importjava.io.PrintWriter;importjavax.servlet.ServletException;importjavax.servlet..Servlet;importjavax.servlet..ServletRequest;importjavax.servlet..ServletResponse;importdatabase.DataBaseConnection;importjava.sql.*;publicclassAddCourse_ServerletextendsServlet{ publicAddCourse_Serverlet(){ super(); } publicvoiddestroy(){ super.destroy();//Justputs"destroy"stringinlog //Putyourcodehere } publicvoiddoGet(ServletRequestrequest,ServletResponseresponse) throwsServletException,IOException{ this.doPost(request,response); } publicvoiddoPost(ServletRequestrequest,ServletResponseresponse) throwsServletException,IOException{ Connectionconn=DataBaseConnection.createDBConn(); PrintWriterout=response.getWriter(); Statementst=null; try{st=conn.createStatement(); }catch(SQLExceptione){ e.printStackTrace(); } Stringnumber; Stringname; Stringteacher; number=request.getParameter("number"); name=request.getParameter("name"); teacher=request.getParameter("teacher_name"); if(number!=null&&number.length()!=0){ number=newString(number.trim().getBytes("ISO-8859-1"),"utf-8"); } if(name!=null&&name.length()!=0){ name=newString(name.trim().getBytes("ISO-8859-1"),"utf-8"); } if(teacher!=null&&teacher.length()!=0){ teacher=newString(teacher.trim().getBytes("ISO-8859-1"),"utf-8"); } try{ st.executeUpdate("insertintoCourse(Course_NO,Course_Name,Teacher_Name)values('"+number+"','"+name+"','"+teacher+"')"); }catch(SQLExceptione){ e.printStackTrace(); } out.println("success!"); } publicvoidinit()throwsServletException{ //Putyourcodehere }}2.addStudentInformation:添加课程信息packageservlet;importjava.io.IOException;importjava.io.PrintWriter;importjavax.servlet.ServletException;importjavax.servlet..Servlet;importjavax.servlet..ServletRequest;importjavax.servlet..ServletResponse;importjava.sql.*;importdatabase.DataBaseConnection;publicclassaddStudentInformationextendsServlet{ publicaddStudentInformation(){ super(); } /** *Destructionoftheservlet.<br> */ publicvoiddestroy(){ super.destroy();//Justputs"destroy"stringinlog //Putyourcodehere } publicvoiddoGet(ServletRequestrequest,ServletResponseresponse) throwsServletException,IOException{ this.doPost(request,response); } publicvoiddoPost(ServletRequestrequest,ServletResponseresponse) throwsServletException,IOException{ Connectionconn=DataBaseConnection.createDBConn(); PrintWriterout=response.getWriter(); Statementst=null; try{st=conn.createStatement(); }catch(SQLExceptione){ e.printStackTrace(); } Stringnumber=null; Stringname=null; Stringsclass=null; Stringsex=null; Stringacademy=null; Stringprofessional=null; Stringtime=null; number=request.getParameter("number"); name=request.getParameter("name"); sclass=request.getParameter("sclass"); sex=request.getParameter("sex"); academy=request.getParameter("academy"); professional=request.getParameter("professional"); time=request.getParameter("time"); if(number!=null&&number.length()!=0){ number=newString(number.trim().getBytes("ISO-8859-1"),"utf-8"); } if(name!=null&&name.length()!=0){ name=newString(name.trim().getBytes("ISO-8859-1"),"utf-8"); } if(sclass!=null&&sclass.length()!=0){ sclass=newString(sclass.trim().getBytes("ISO-8859-1"),"utf-8"); } if(sex!=null&&sex.length()!=0){ sex=newString(sex.trim().getBytes("ISO-8859-1"),"utf-8"); } if(academy!=null&&academy.length()!=0){ academy=newString(academy.trim().getBytes("ISO-8859-1"),"utf-8"); } if(professional!=null&&professional.length()!=0){ professional=newString(professional.trim().getBytes("ISO-8859-1"),"utf-8"); } if(time!=null&&time.length()!=0){ time=newString(time.trim().getBytes("ISO-8859-1"),"utf-8"); } try{ st.executeUpdate("insertintoStudentvalues('"+number+"','"+name+"','"+sclass+"','"+sex+"','"+academy+"','"+professional+"','"+time+"')"); }catch(SQLExceptione){ e.printStackTrace(); } out.println("success!"); } publicvoidinit()throwsServletException{ //Putyourcodehere }}3.CourseManagement:课程操作控制packageservlet;importjava.io.IOException;importjava.io.PrintWriter;importjava.sql.Connection;importjava.sql.SQLException;importjava.sql.Statement;importjavax.servlet.ServletException;importjavax.servlet..Servlet;importjavax.servlet..ServletRequest;importjavax.servlet..ServletResponse;importdatabase.DataBaseConnection;publicclassCourseManagementextendsServlet{ publicCourseManagement(){ super(); } publicvoiddestroy(){ super.destroy();//Justputs"destroy"stringinlog //Putyourcodehere } publicvoiddoGet(ServletRequestrequest,ServletResponseresponse) throwsServletException,IOException{ this.doPost(request,response); } publicvoiddoPost(ServletRequestrequest,ServletResponseresponse) throwsServletException,IOException{ Stringoperation; StringID; Stringnumber; Stringname; Stringteacher_name; response.setContentType("text/html"); Connectionconn=DataBaseConnection.createDBConn(); PrintWriterout=response.getWriter(); Statementst=null; try{st=conn.createStatement(); }catch(SQLExceptione){ e.printStackTrace(); } operation=request.getParameter("operation"); ID=request.getParameter("id"); number=request.getParameter("number"); name=request.getParameter("name"); teacher_name=request.getParameter("teacher_name"); if(ID!=null&&ID.length()!=0){ ID=newString(ID.getBytes("ISO-8859-1"),"utf-8"); } if(number!=null&&number.length()!=0){ number=newString(number.getBytes("ISO-8859-1"),"utf-8"); } if(name!=null&&name.length()!=0){ name=newString(name.getBytes("ISO-8859-1"),"utf-8"); } if(teacher_name!=null&&teacher_name.length()!=0){ teacher_name=newString(teacher_name.getBytes("ISO-8859-1"),"utf-8"); } if(operation.equals("delete")){ try{ st.execute("deletefromCoursewhereCourse_NO='"+ID+"'"); }catch(SQLExceptione){ e.printStackTrace(); out.print("deletefail!"); } } if(operation.equals("edit")){ response.sendRedirect("CourseEdit.jsp?id="+ID+""); } if(operation.equals("update")){ try{st.executeUpdate("updateCoursesetCourse_Name='"+name+"',Teacher_Name='"+teacher_name+"'whereCourse_No='"+number+"'"); }catch(Exceptione){ e.printStackTrace(); } } } publicvoidinit()throwsServletException{ //Putyourcodehere }}4.Login_control:登录控制packageservlet;importjava.io.IOException;importjava.io.PrintWriter;importjava.sql.Connection;importjava.sql.ResultSet;importjava.sql.SQLException;importjava.sql.Statement;importjavax.servlet.ServletException;importjavax.servlet..Servlet;importjavax.servlet..ServletRequest;importjavax.servlet..ServletResponse;importjavax.servlet..Session;importdatabase.DataBaseConnection;publicclassLogin_controlextendsServlet{ publicLogin_control(){ super(); } publicvoiddestroy(){ super.destroy();//Justputs"destroy"stringinlog //Putyourcodehere } publicvoiddoGet(ServletRequestrequest,ServletResponseresponse) throwsServletException,IOException{this.doPost(request,response); } publicvoiddoPost(ServletRequestrequest,ServletResponseresponse) throwsServletException,IOException{ response.setContentType("text/html;charset=utf-8"); inttimes=0; Stringtemp=null; finalPrintWriterout=response.getWriter(); finalConnectionconn=DataBaseConnection.createDBConn();Sessionsession=request.getSession(); Statementselect; ResultSetrs=null; Stringname=request.getParameter("Name"); if(name!=null&&name.length()!=0){ name=newString(name.getBytes("ISO-8859-1"),"utf-8"); } Stringpassword=request.getParameter("Password"); if(password!=null&&password.length()!=0){ password=newString(password.getBytes("ISO-8859-1"),"utf-8"); } try{ select=conn.createStatement(); rs=select.executeQuery("selectPasswordfromUserswhereU_Name='"+name+"'"); }catch(finalExceptione){ e.printStac
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 沪教版九年级上册《课时3化学研究些什么》2023年同步练习卷
- 北京新房购房合同模板
- 品牌货品采购合同模板
- 农村承包浴池合同模板
- 售房物资清单合同范本
- 修路石料施工合同模板
- 公司不执行合同模板
- 宜宾劳动合同协议书
- 家政阿姨服务合同模板
- 宾馆分红合同协议书
- GA 1800.5-2021电力系统治安反恐防范要求第5部分:太阳能发电企业
- 鼻中隔偏曲年培训课件
- 【上课精品】高考专题复习:小说环境描写的作用 课件41张
- 主题班会《诚信伴我行》课件
- 门诊质量考核标准
- 放射科危急值登记表
- 个人车位租赁合同电子版
- 人力资源管理《社会保险》知识点总结
- 危大工程管理监理实施细则
- 小学数学 五年级上 第一单元第11课时《练习二》教案
- 骨折的固定课件
评论
0/150
提交评论