智能移动方向jsp开发实训任务书及实训报告--在线考试系统的制作--大学毕业设计论文.doc
《智能移动方向jsp开发实训任务书及实训报告--在线考试系统的制作--大学毕业设计论文.doc》由会员分享,可在线阅读,更多相关《智能移动方向jsp开发实训任务书及实训报告--在线考试系统的制作--大学毕业设计论文.doc(44页珍藏版)》请在咨信网上搜索。
学校代码: 10128 学 号: 201320905047 JSP开发实训报告书 题 目:在线考试系统的制作 学生姓名:张志勇 学 院:理学院 班 级:信计13-1 指导教师:李晓瑜、宋健、赖俊峰 二〇一六年一月 一、项目名称 在线考试系统-题库子系统 二、功能要求 – a、用户管理 – b、课程管理 – c、题库管理 三、需求分析 《在线考试系统-题库子系统》的用户包括用户管理员,试题管理员和题库使用人员,旨在建立一个独立的题库系统,为在线考试生成试卷提供支持,包含用户管理,科目管理,试题管理,生成试卷,试卷分析等内容,为用户提供了一个快速、全面、准确的试题管理平台。 四、设计思想 a、使用Java Web技术实现 b、使用Mysql存储数据 c、基于MVC方式实现用例 设计思路:(如下图) 分步详解: 第一步:创建项目名(zhangzhiyong); 第二步:创建项目所需要的包; 第三步:导入需要的工具; 第四步:创建数据库的连接; 第五步:需要的准备工作做好之后,明确先做用户管理系统(登录,查看,删除,修改,增加,退出;); 第六步:做好用户管理之后进行科目管理(增加,删除,修改,查看;); 第七步:接下来进行知识点管理(增加,删除,修改,查看;); 五、具体实现 一.用户管理: 需要的servlet: (user servlet) package cn.zhangzhiyong.service; import java.io.IOException; import java.io.PrintWriter; import java.util.List; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import cn.zhangzhiyong.bean.User; import cn.zhangzhiyong.dao.UserDAO; import cn.zhangzhiyong.util.RequestUtil; @WebServlet("/UserServlet") public class UserServlet extends HttpServlet { private static final long serialVersionUID = 1L; public UserServlet() { super(); } protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { request.setCharacterEncoding("utf-8"); response.setContentType("text/html;charset=utf-8"); PrintWriter out=response.getWriter(); String type=request.getParameter("type"); String userLogname=request.getParameter("userLogname"); String userPwd=request.getParameter("userPwd"); UserDAO dao=new UserDAO(); User user=dao.login(userLogname, userPwd); if("login".equals(type)){ if(user!=null){ request.getSession().setAttribute("SESSION_USER",user); response.sendRedirect("res/index.html"); }else{ out.print("<script type='text/javascript'>"); out.print("alert('用户名或密码错误,请重新输入!');"); out.print("window.location='login.jsp';"); out.print("</script>"); } }else if("logout".equals(type)){ request.getSession().invalidate(); out.print("<script type='text/javascript'>"); out.print("window.location='login.jsp';"); out.print("</script>"); }else if("list".equals(type)){ List<User> list=dao.selectAll(); request.setAttribute("list",list); request.getRequestDispatcher("res/user.jsp").forward(request, response); } } protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { doGet(request, response); } } (user add servlet) package cn.zhangzhiyong.service; import java.io.IOException; import java.io.PrintWriter; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import cn.zhangzhiyong.bean.User; import cn.zhangzhiyong.dao.UserDAO; import cn.zhangzhiyong.util.RequestUtil; @WebServlet("/UserAddServlet") public class UserAddServlet extends HttpServlet { private static final long serialVersionUID = 1L; public UserAddServlet() { super(); } protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { request.setCharacterEncoding("utf-8"); String login=request.getParameter("login"); String name=request.getParameter("name"); int type=(request.getParameter("type")==null)? 3:Integer.parseInt(request.getParameter("type")); int status=(request.getParameter("status")==null)? 1:Integer.parseInt(request.getParameter("status")); User user=new User(login,name,type,status); UserDAO dao=new UserDAO(); int n=dao.save(user); if(n==1){ response.sendRedirect("UserServlet?type=list"); }else{ response.sendRedirect("index.jsp"); } } protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { doGet(request, response); } } (UserDeleteServlet) package cn.zhangzhiyong.service; import java.io.IOException; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import cn.zhangzhiyong.bean.User; import cn.zhangzhiyong.dao.UserDAO; import cn.zhangzhiyong.util.RequestUtil; import cn.zhangzhiyong.util.WebUtil; @WebServlet("/UserDeleteServlet") public class UserDeleteServlet extends HttpServlet { private static final long serialVersionUID = 1L; public UserDeleteServlet() { super(); } protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { request.setCharacterEncoding("UTF-8"); // System.out.println(request.getParameter("Id")); int id=RequestUtil.getInt(request,"Id"); UserDAO dao=new UserDAO(); dao.delete(id); WebUtil.forward(request, response, "UserServlet?type=list"); } protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { // TODO Auto-generated method stub doGet(request, response); } } (UserUpdate1Servlet) package cn.zhangzhiyong.service; import java.io.File; import java.io.IOException; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.servlet.http.Part; import cn.zhangzhiyong.bean.User; import cn.zhangzhiyong.dao.UserDAO; import cn.zhangzhiyong.util.RequestUtil; import cn.zhangzhiyong.util.WebUtil; @WebServlet("/UserUpdate1Servlet") public class UserUpdate1Servlet extends HttpServlet { private static final long serialVersionUID = 1L; public UserUpdate1Servlet() { super(); } protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { request.setCharacterEncoding("utf-8"); response.setContentType("text/html;charset=utf-8"); int id=RequestUtil.getInt(request,"Id"); request.setAttribute("id", id); request.getRequestDispatcher("res/user-update.jsp").forward(request, response); } protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { // TODO Auto-generated method stub doGet(request, response); } } (UserUpdateServlet) package cn.zhangzhiyong.service; import java.io.IOException; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import cn.zhangzhiyong.bean.User; import cn.zhangzhiyong.dao.UserDAO; import cn.zhangzhiyong.util.RequestUtil; @WebServlet("/UserUpdateServlet") public class UserUpdateServlet extends HttpServlet { private static final long serialVersionUID = 1L; public UserUpdateServlet() { super(); } protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { request.setCharacterEncoding("utf-8"); String login=request.getParameter("login"); String name=request.getParameter("name"); String passwd=request.getParameter("passwd"); int type=Integer.parseInt(request.getParameter("type")); int status=Integer.parseInt(request.getParameter("status")); int id=RequestUtil.getInt(request,"id"); User users=new User(login,name,type,status); UserDAO dao=new UserDAO(); int n=dao.update(users); if(n==1){ response.sendRedirect("UserServlet?type=list"); }else{ response.sendRedirect("index.jsp"); } } protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { doGet(request, response); } } (UserViewServlet) package cn.zhangzhiyong.service; import java.io.IOException; import java.io.PrintWriter; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import cn.zhangzhiyong.bean.User; import cn.zhangzhiyong.dao.UserDAO; import cn.zhangzhiyong.util.RequestUtil; @WebServlet("/UserViewServlet") public class UserViewServlet extends HttpServlet { private static final long serialVersionUID = 1L; public UserViewServlet() { super(); } protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { request.setCharacterEncoding("utf-8"); response.setContentType("text/html;charset=utf-8"); PrintWriter out=response.getWriter(); String type=request.getParameter("type"); String userLogname=request.getParameter("userLogname"); String userPwd=request.getParameter("userPwd"); UserDAO dao=new UserDAO(); int id=RequestUtil.getInt(request,"Id"); User user1=dao.selectById(id); request.setAttribute("user",user1); request.getRequestDispatcher("res/user-show.jsp").forward(request, response); } protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { doGet(request, response); } } 需要的类: package cn.zhangzhiyong.bean; import java.sql.Timestamp; public class User { public static final String passwd="123456"; private int id; private String login; private String name; private String password; private int type; private int status; private Timestamp last_login; public User(String login2, String name2, int type2, int status2) { super(); this.login=login2; this.name=name2; this.type=type2; this.status=status2; } public User() { } public User(int id2) { this.id=id2; } public int getId() { return id; } public void setId(int id) { this.id = id; } public String getLogin() { return login; } public void setLogin(String login) { this.login = login; } public String getName() { return name; } public void setName(String name) { this.name = name; } public String getPassword() { return password; } public void setPassword(String password) { this.password = password; } public int getType() { return type; } public void setType(int type) { this.type = type; } public int getStatus() { return status; } public void setStatus(int status) { this.status = status; } public Timestamp getLast_login() { return last_login; } public void setLast_login(Timestamp last_login) { this.last_login = last_login; } } 需要的dao: package cn.zhangzhiyong.dao; import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; import java.util.ArrayList; import java.util.List; import cn.zhangzhiyong.bean.User; import cn.zhangzhiyong.util.DBUtil; public class UserDAO { //userdao中的save方法 public int save(User user){ int n=-1; Connection conn=DBUtil.getConnection();//连接对象 PreparedStatement pstmt=null;//语句对象 //下边是s语句 String sql="insert into userss" +" values(DL_USERSS.NEXTVAL,?,?,'123456',?,?,sysdate)"; try{ pstmt=conn.prepareStatement(sql); pstmt.setString(1, user.getLogin()); pstmt.setString(2, user.getName()); pstmt.setInt(3, user.getType()); pstmt.setInt(4, user.getStatus()); n=pstmt.executeUpdate();//n=更新的行数 }catch(SQLException e){ e.printStackTrace(); }finally{ DBUtil.closeJDBC(null, pstmt, conn); } return n; } public User login(String userLogname, String userPwd) { Connection conn=DBUtil.getConnection(); PreparedStatement pstmt=null; ResultSet rs=null; User u=null; String sql="select id,login,name,passwd,type,status,last_login" + " from users where login=? and passwd=?"; try{ pstmt=conn.prepareStatement(sql); pstmt.setString(1, userLogname); pstmt.setString(2, userPwd); rs=pstmt.executeQuery(); if(rs.next()){ u=new User(); u.setId(rs.getInt(1)); u.setLogin(rs.getString(2)); u.setName(rs.getString(3)); u.setPassword(rs.getString(4)); u.setType(rs.getInt(5)); u.setStatus(rs.getInt(6)); u.setLast_login(rs.getTimestamp(7)); } }catch(SQLException e){ e.printStackTrace(); }finally{ DBUtil.closeJDBC(rs, pstmt, conn); } return u; } public User selectById(int Id) { User user=new User(); Connection conn=DBUtil.getConnection(); PreparedStatement pstmt=null; ResultSet rs=null; String sql="select * from userss where id=?"; try{ pstmt=conn.prepareStatement(sql); pstmt.setInt(1, Id); rs=pstmt.executeQuery(); if(rs.next()){ user.setId(rs.getInt(1)); user.setLogin(rs.getString(2)); user.setName(rs.getString(3)); user.setPassword(rs.getString(4)); user.setType(rs.getInt(5)); user.setStatus(rs.getInt(6)); } }catch(SQLException e){ e.printStackTrace(); }finally{ DBUtil.closeJDBC(rs, pstmt, conn); } return user; } public List<User> selectAll(){ List<User> list=new ArrayList<User>(); Connection conn=DBUtil.getConnection(); PreparedStatement pstmt=null; ResultSet rs=null; String sql="select * from userss order by id desc"; try{ pstmt=conn.prepareStatement(sql); rs=pstmt.executeQuery(); while(rs.next()){ User user=new User(); user.setId(rs.getInt(1)); user.setLogin(rs.getString(2)); user.setName(rs.getString(3)); user.setPassword(rs.getString(4)); user.setType(rs.getInt(5)); user.setStatus(rs.getInt(6)); list.add(user); } }catch(SQLException e){ e.printStackTrace(); }finally{ DBUtil.closeJDBC(rs, pstmt, conn); } return list; } //userdao中的update方法 public int update(User users){ int n=-1; Connection conn=DBUtil.getConnection();//连接对象 PreparedStatement pstmt=null;//语句对象 String sql="update userss" + " set login=?,name=?,passwd=123,type=?,status=? where id=?"; try{ pstmt=conn.prepareStatement(sql); pstmt.setString(1, users.getLogin()); pstmt.setString(2, users.getName()); pstmt.setInt(3, users.getType()); pstmt.setInt(4, users.getStatus()); pstmt.setInt(5,users.getId()); n=pstmt.executeUpdate();//n=更新的行数 }catch(SQLException e){ e.printStackTrace(); }finally{ DBUtil.closeJDBC(null, pstmt, conn); } re- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 智能 移动 方向 jsp 开发 任务书 报告 在线 考试 系统 制作 大学 毕业设计 论文
咨信网温馨提示:
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【精****】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【精****】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【精****】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【精****】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
关于本文