在线计算机等级考试报名系统.doc

上传人:laozhun 文档编号:4123310 上传时间:2023-04-06 格式:DOC 页数:16 大小:1.82MB
返回 下载 相关 举报
在线计算机等级考试报名系统.doc_第1页
第1页 / 共16页
在线计算机等级考试报名系统.doc_第2页
第2页 / 共16页
在线计算机等级考试报名系统.doc_第3页
第3页 / 共16页
在线计算机等级考试报名系统.doc_第4页
第4页 / 共16页
在线计算机等级考试报名系统.doc_第5页
第5页 / 共16页
点击查看更多>>
资源描述

《在线计算机等级考试报名系统.doc》由会员分享,可在线阅读,更多相关《在线计算机等级考试报名系统.doc(16页珍藏版)》请在三一办公上搜索。

1、在线计算机等级考试报名系统的设计与实现一、需求分析(一) 开发背景计算机等级考试在线报名系统的开发,主要是为了考查综合知识应用能力和可动手实践能力,能够得到较系统的技能训练,从而巩固和加深对Java Web编程的基础理论知识的理解,从人工操作的繁琐而转变成数据信息都由机器来操作,这样大大减少了工作量,使计算机等级考试报名工作变得轻松,而且能节省大量的时间。(二) 系统概述此系统是一个网络版计算机等级考试在线报名系统,它具有考生注册,考生登录,考生报考信息及个人信息,考生信息查询等功能;(三) 系统运行环境Windows环境下(四) 功能需求描述此系统采用了B/S模式,其主要功能模块如下:网上登

2、录模块;网上注册模块;报考信息模块;准考证号生成;信息录入模块;头像上传模块;信息查询模块;二、系统设计 (一) 总体设计1、系统功能模块详述(1) 网上登录模块:当考生输入正确的账户名和密码时,则进入该考生个人页面;(2) 网上注册模块:当考生未注册时,由网上登录模块点击“注册”则进入注册页面进行注册;(3) 报考状态模块:级别与考试语言的选择,考生生信息的录入;(4) 信息录入模块:考生录入详细的个人信息;(5) 头像上传模块:考生上传自己的个人头像;(6) 信息查询模块:考生可查看自己的报考信息及个人信息(含生成准考证号)。(二) 系统功能模块图三、详细设计总体设计阶段以比较抽象概括的方

3、式提出了解决问题的方法,现在就需要将各个比较抽象的模块具体化,包括设计网页的布局和友好的人机交互界面,确定实现每个模块功能所采用的算法,数据结构及包,底层数据库的设计等等。(一) 数据库设计数据库设计是进行详细设计的基础,只有首先确定系统所要用到的数据信息,并将他们进行汇总和筛选,才能设计出符合要求的数据库和表(这里所谓符合要求是指数据冗余小,数据可操作性强,数据库中表与表之间的关系明确)。特别是使用面向对象技术的时候,设计出了适当的数据库就相当于有了类模型,对后类的设计有很大的好处。1、系统 E-R 模型:2、系统所包含的数据库和表:一个数据库:ncre。其中,ncre数据库中有如下表:表3

4、.1 login字段名类型关键字说明idint(11)idid号accountChar(20)account用户名passwordChar(20)密码表3.2 bkxx字段名类型关键字说明zkzhbigint(20)zkzh准考证号accountChar(20)account用户名nameChar(20)姓名oldzkzhChar(20)旧准考证号bkdjChar(20)报考等级kslbChar(20)考试类别blcjlxChar(20)保留成绩类型表3.3 grxx字段名类型关键字说明accountChar(20)account用户名nameChar(20)姓名sexChar(4)性别sfz

5、hChar(20)身份证号telChar(13)联系电话emailVarchar(50)E-mailmzChar(20)民族xlChar(16)学历zyChar(30)专业addrVarchar(240)通讯地址grtxChar(20)个人头像(二) 界面设计由于整个系统用jsp来开发,所以采用图形化操作界面,主要有一个登陆界面、注册界面及一个注册用户界面等。下面分别以登录界面、注册界面及用户报名界面为参考界面展现整个系统。1、登录界面:图3.3 登录界面2、注册界面:图3.4 注册界面3、用户报名界面: 图3.5 用户报名界面另外,为了减少窗体的个数和避免用户频繁切换窗口,在设计中还在报考信

6、息模块、信息录入模块、头像上传模块、信息查询模块中使用了框架技术,由于信息查询窗口和信息修改窗口类似且窗口数量过多,所以这里只显示信息查询窗口、个人报考信息窗口、上传个人照片窗口。(由于窗口过大显示不完全,则全屏显示(按F11)4、显示信息查询窗口:图3.6 信息查询窗口5、个人报考信息窗口:图3.7 个人报考信息窗口6、上传个人照片窗口:图3.8 上传个人照片窗口(三) 系统部分功能流程图 本设计有很多功能模块,这里只给出一些特定模块的流程图,下面就是登录功能模块的流程图和上传照片模块功能模块的流程图:1、 登录功能模块的流程图:2、 上传照片功能模块的流程图:(四) 系统类和网页代码1、本

7、课程设计仅提供部分类以做演示:(1)、DataBaseDAO的功能是:建立与数据库的连接、关闭与数据库的连接、建立执行sql语句的对象并返回影响的行数、将数据插入到数据库、创建返回结果集的对象;代码如下:package com.dao;import java.sql.Connection;import java.sql.DriverManager;import java.sql.PreparedStatement;import java.sql.ResultSet;import java.sql.SQLException;import java.sql.Statement;public cla

8、ss DataBaseDAO private String driver=com.mysql.jdbc.Driver;private String url=jdbc:mysql:/localhost:3306/ncre;private String name = root;private String pwd=Demon1202;Connection conn=null;/建立与数据库的连接public DataBaseDAO()try Class.forName(driver);conn = DriverManager.getConnection(url, name,pwd); catch

9、(ClassNotFoundException e) e.printStackTrace(); catch (SQLException e) e.printStackTrace();/关闭与数据库的连接public void CloseConn()try if(conn!=null)conn.close(); catch (SQLException e) e.printStackTrace();/建立执行sql语句的对象并返回影响的行数public int executeUpdate(String sql)Statement stmt;try stmt = this.conn.createSt

10、atement();int rows = stmt.executeUpdate(sql);return rows; catch (SQLException e) e.printStackTrace();return 0;/创建返回结果集的对象public ResultSet executeQuery(String sql)ResultSet rs;Statement stmt;try stmt = this.conn.createStatement();rs = stmt.executeQuery(sql);return rs; catch (SQLException e) e.printSt

11、ackTrace();return null;/将数据插入到数据库public int executeUpdate(String sql,Object p)PreparedStatement pstmt;try pstmt = this.conn.prepareStatement(sql);int i=1;for(Object o:p)pstmt.setObject(i, o);i+;int rows = pstmt.executeUpdate();return rows; catch (SQLException e) e.printStackTrace();return 0;(2)、User

12、DAO类的功能是:判断用户是否存在、查询用户信息、修改用户信息、修改密码、添加照片等;代码如下:package com.dao;import java.sql.ResultSet;import java.sql.SQLException;import com.pojo.User;public class UserDAO public boolean checkuser(String name,String pwd)String sql=select * from login where account=+name+and password=+pwd+;DataBaseDAO db = new

13、DataBaseDAO();ResultSet rs;rs = db.executeQuery(sql);try while(rs.next()return true; catch (SQLException e) e.printStackTrace(); finallydb.CloseConn();return false;/判断用户是存在,用户登录模块方法public User getUser(String name,String pwd)String sql=select * from login where account=+name+and password=+pwd+;DataBa

14、seDAO db = new DataBaseDAO();ResultSet rs=null;User user=null;rs = db.executeQuery(sql);try while(rs.next()int id =rs.getInt(1);String uname = rs.getString(2);String upwd = rs.getString(3);user = new User(id,uname,upwd); catch (SQLException e) e.printStackTrace(); finallydb.CloseConn();return user;/

15、用户注册信息方法public boolean addUser(String name,String pwd,String uname,String usex,String usfzh,String utel,String uemail)String sql1=insert into login(account,password) values(?,?);String sql2=insert into grxx(account,name,sex,sfzh,tel,email) values(?,?,?,?,?,?);String sql3=insert into bkxx(account,nam

16、e) values(?,?);DataBaseDAO db = new DataBaseDAO();Object pram1=name,pwd;Object pram2=name,uname,usex,usfzh,utel,uemail;Object pram3=name,uname;int rows1 = db.executeUpdate(sql1,pram1);int rows2 = db.executeUpdate(sql2,pram2);int rows3 = db.executeUpdate(sql3,pram3);if(rows10)&(rows20)&(rows30)return

17、 true;elsereturn false;/修改用户基本信息public boolean addUser(String username,String uname,String usex,String usfzh,String utel,String uemail)String sql1=update grxx set name=+uname+,sex=+usex+,sfzh=+usfzh+,tel=+utel+,email=+uemail+ where account=+username+;String sql2=update bkxx set name=+uname+ where ac

18、count=+username+;DataBaseDAO db = new DataBaseDAO();int rows1 = db.executeUpdate(sql1);int rows2 = db.executeUpdate(sql2);if(rows10)&(rows20)return true;elsereturn false;public boolean addUser(String username,String uname,String usex,String usfzh,String utel,String uemail,String umz,String uxl,Strin

19、g uzy,String uaddr)String sql2=update grxx set name=+uname+,sex=+usex+,sfzh=+usfzh+,tel=+utel+,email=+uemail+,mz=+umz+,xl=+uxl+,zy=+uzy+,addr=+uaddr+ where account=+username+;String sql1=update bkxx set name=+uname+ where account=+username+;DataBaseDAO db = new DataBaseDAO();int rows2 = db.executeUp

20、date(sql2);int rows1 = db.executeUpdate(sql1);if(rows10)&(rows20)return true;elsereturn false;public boolean addUser(String username,String uname,String usex,String usfzh,String utel,String uemail,String uxl,String uzy,String uaddr,String ubkdj,String ukslb,String ublcjlx,String uoldzkzh)String sql1

21、=update grxx set name=+uname+,sex=+usex+,sfzh=+usfzh+,tel=+utel+,email=+uemail+,xl=+uxl+,zy=+uzy+,addr=+uaddr+ where account=+username+;String sql2=update bkxx set bkdj=+ubkdj+,kslb=+ukslb+,blcjlx=+ublcjlx+,oldzkzh=+uoldzkzh+ where account=+username+;DataBaseDAO db = new DataBaseDAO();int rows1 = db

22、.executeUpdate(sql1);int rows2 = db.executeUpdate(sql2);if(rows10)&(rows20)return true;elsereturn false;/修改密码public boolean addUser(String username,String pwd)String sql1=update login set password=+pwd+ where account=+username+;DataBaseDAO db = new DataBaseDAO();int rows1 = db.executeUpdate(sql1);if

23、(rows10)return true;elsereturn false;/添加照片public boolean updateUser(String username,String ugrtx)String sql1=update grxx set grtx=+ugrtx+ where account=+username+;DataBaseDAO db = new DataBaseDAO();int rows1 = db.executeUpdate(sql1);if(rows10)return true;elsereturn false;2、本课程设计仅提供登陆页面代码以做演示:index.j

24、sp网页代码: 计算机等级考试在线报名系统 计算机等级考试在线报名系统已开通,请广大考生前来报名! 登 录 平 台 登录账号: 登录密码:      注册新帐号 版权所有 违者必究/javascriptfunction validatename() var text=document.getElementById(account1).value; if(text=null|text.replace(/s+,/).replace(/s+$/,)=)alert(用户名不能为空!);document.getElement

25、ById(account1).focus();return false;return true;function validatepwd() var pwd=document.getElementById(password1).value;if(pwd=|pwd.replace(/s+,/).replace(/s+$/,)=)alert(密码不能为空!);document.getElementById(password1).focus();return false;return true;function validate()var flag=validatename();if(flag=fa

26、lse)return false;var flag=validatepwd();if(flag=false)return false;return true; 四、总结:此系统的优点是用了java语言中的面向对象思想,各个模块可以单独编写单独方法,最后只要同过一个类来调用即可,在后期增加系统功能时非常方便。此系统基本上实现了在线计算机等级考试的功能。其缺点很多,首先界面不太友好;其次没有采用加密算法,安全性能也不好。此系统的优化方向是界面优化,加强安全管理,完善各种功能!参考文献:1 李振捷 ,陈雄,王军.JSP网站开发典型模块与实例精讲(附光盘),电子工业出版社。2 程伟等编著。开发者突击:JSP网络开发经典模块实现全集。 3 郑阿奇,Java EE基础实用教程,电子工业出版社。4 张银鹤,唐有明,王俊伟.JSP+Ajax网站开发实例,电子工业出版社。5 李兆锋等Java Web项目开发案例精粹(含DVD光盘1张) ,电子工业出版社。6 明日科技,JSP项目开发案例全程实录(第2版),清华大学出版社。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 办公文档 > 其他范文


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号