ImageVerifierCode 换一换
格式:DOCX , 页数:17 ,大小:1.31MB ,
资源ID:4021781      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/4021781.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(基于JSP 网上报名系统的设计与实现.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

基于JSP 网上报名系统的设计与实现.docx

1、基于JSP 网上报名系统的设计与实现企 业 级 应 用 软 件 课 程 设 计职称外语考试网上报名及成绩管理系统开发第一章 系统分析1.1需求分析为了开发一个完美的、功能强大、满足用户的需求的职称外语考试网上报名及成绩管理系统开发系统,我们进行研究调查,进行需求分析,得出如下功能:考生要想网上报名考试要先填写个人信息存储到数据库中,考生注册以后可以进行个人信息查看、修改、网上交费。考完试后可以进行网上成绩查询,如果有什么问题可以通过在线问答来解决,同时嗨可以看到其它考生的问题和解决办法。系统管理员可以对考生进行操作:考生信息查询、修改,网上成绩录入,按照各种组合进行成绩查询,生成成绩报表,以及

2、对考生在线问答的问题进行回答。1.2系统功能分析为了建立一个一个稳定、安全的、兼容的职称外语考试网上报名及成绩管理系统开发,我对系统进行了如下的设计。1.2.1系统安全性系统安全性:本系统将采用B/S结构,数据库将采用安全机制级别高的数据库管理平台,整个系统安全稳定;系统成员登录以及进行其它操作都要通过系统验证,防止成员从非正常入口进入系统,系统软件将采用通过身份证和准考证号的双重验证,管理员也要通过用户名,密码的方式验证身份。数据安全性:系统数据库将采用ORACLE ,ORACLE是一个完整的关系数据库管理系统,它还包括用于 OLAP 和数据挖掘的集成分析功能。ORACLE 满足最大的数据处

3、理系统和商业 Web 站点对资料及分析的存储要求,同时可以为个人和小企业提供易用的资料存储服务。ORACLE 的结构支持高级的服务器功能,比如行一级的锁定、高级查询优化、数据复制、分布式数据库管理以及分析服务。系统稳定性:系统将采用JSP中的错误异常处理功能,在发生错误操作时,系统将会给予用户全面的提示,以避免系统的不正常退出。系统兼容性:系统将采用技术先进的开发语言JSP,具有良好的兼容性,可应用于WINDOWS98/2000/ME/NT等操作系统之上,且对其他任何软件均无影响。1.2.2系统功能为了保障系统的安全,要经过有效的身份验证才可以登录。为了方便用户管理,系统提供考生注册、登录接口

4、,通过数据库提供的信息以进行验证。考生可添加详细个人信息,可查看、修改个人信息。在系统里,考生可以通过身份证号和准考证号查询自己的成绩,可以进行在线问答。为了方便系统管理员对考生个人信息的管理,在系统里系统管理员可以对考生进行操作:考生信息查询,修改,删除功能。为了方便系统管理员对考生成绩的管理,在系统里系统管理员可以对考生成绩进行操作:网上成绩录入,按照各种组合方式查询成绩,修改成绩,产生成绩报表。在系统里,系统也提供给考生管理功能,考生可以在线提问问题,管理员可以通过后台对考生所提出的问题进行解答。 为了解决考生交费问题,系统采用网上交费模式,考生通过网上银行进行交费,即方便了考生,也有助

5、于管理与查收。第二章 系统设计该系统是集职称外语考试网上报名和成绩管理与一体的网上报名系统。将网上报名与成绩管理于一体,不仅便于数据库的管理,而且对用户的管理也很方便。2.1系统总体结构设计 平台以Web服务器Tomcat和数据库软件为支撑,为在平台之上建立的站点提供考生信息管理,成绩管理以及在线问答等功能,各级站点为考生和管理者员供信息浏览和管理服务。如图系统结构示意图3-1所示:图2-1 系统总体结构示意图22系统模块结构设计该系统的功能,可以基本被分解为以下几个方面:考生要想进行网上报名,首先要进行注册,填写个人信息,存放到数据库中,方便以后登录。考生可以随时更改用户名和密码,可以进行网

6、上报名,网上交费,查看自己的考试成绩,有问题可以进行在线提问。在系统里系统管理员可以对考生进行操作:考生的添加、删除。为了方便系统管理员对考生信息的管理,在系统里系统管理员可以对考生信息进行操作:查看信息,修改信息,删除考生信息。在系统里,系统也提供对成绩管理功能,管理员可以网上录入成绩,按照任何组合查询考生成绩,修改成绩,生成成绩报表,在线回答问题等功能。据分析,系统可以分为客户端和管理员端,客户端分为。如图3-3系统总体模块图所示:图2-2系统总体模块图2.3数据库设计数据库技术是信息资源管理最有效的手段。数据库设计是指对于一个给定的应用环境,构造最优的数据库模式,建立数据库及应用系统,有

7、效存储数据,满足用户的信息要求和处理要求。数据库结构设计的好坏将直接对应系统的效率及实现的效果产生影响。合理的数据库结构设计可以提高数据库存储的效率,保证数据的完整性和一致性。设计数据库系统时应该首先充分了解用户各个方面的需求,包括现在和将来的可能增加的需求。2.3.1数据库概念结构设计根据前面章节对需求的分析,可以设计出能够满足用户需求的各种实体,以及它们之间的关系,为后面的逻辑设计打下基础。这些实体包含各种具体信息,通过相互之间的作用形成数据的流动。根据上面的分析可以规划出的实体有:准考证,考生,成绩,考场,银行,问答。实体之间关系的E-R图,如图实体之间关系图所示: 图2-3考生准考证E

8、-R图 图2-4考生成绩E-R图 2.3.2数据库逻辑结构设计数据库的概念设计完毕后,现在可以将上面的数据库概念结构转化为某种数据库系统所支持的实际数据库模型,也就是数据库的逻辑结构。职称外语考试网上报名及成绩管理系统开发系统的数据库中的主要表的设计结果如下面的表格所示。每个表格在数据库中的一个表。(1)考生表:姓名、性别、年龄、照片、学历、单位、身份证号、报考类别 报考地区。表2-1考生表名称说明属性Id唯一的编号,主键Varchar2Name 考生姓名Varchar2Password 密码Varchar2Sex性别Varchar2Age年龄Varchar2Image考生照片Varchar2

9、Degree考生学历Varchar2Enterprise考生的单位或学校Varchar2 Language报考的语种Varchar2 City报考的城市Varchar2(2)准考证:考号、身份证号,考场号表2-2准考证表名称含义属性Sid唯一编号,主键Varchar2Id考生身份证号Varchar2Numbers 考场号Varchar2(3)成绩表:考号、姓名、外语语种、成绩表2-3 成绩表名称含义属性Sid考号,唯一编号,主键Varchar2Name考生姓名Varchar2Language报考语种Varchar2Score考生成绩Varchar2 (4)考场:考场号 考场地址 考试时间表2-

10、4考场表名称含义类型Numbers 考场号,唯一编号,主键Varchar2Address考场地址Varchar2Time考试时间Varchar2(5)银行表:银行名,账号,密码表2-5银行表名称含义类型Bname银行名Varchar2Account账号,唯一编号,主键Varchar2Password文章讨论区Varchar2(6)问答表:问答号、问题、回答 表2-6问答表名称含义类型Id账号,唯一编号,主键Varchar2Question问题Varchar2Answer答案Varchar2第三章 系统的实现本人的主要工作是建立职称外语考试网上报名及成绩管理系统,实现考生注册和网上报名,将数据上

11、传到数据库,也可以从数据库中查询考生成绩,进行在线问答。管理员可以从数据库中读取考生信息进行添加,修改,删除。可以在线录取考生成绩,修改成绩,以各种组合查询成绩,同时对考生提出的问题进行回答等功能。本章主要讲述该系统模块的实现的功能以及实现的方法。3.1登录模块以下均使用MVC模式在职称外语考试网上报名及成绩管理系统中,有两类用户:考生和管理员,如图32是考生登录流程图:输入用户名和密码,单击登录按钮后,系统要对输入的内容进行验证。通过UserLogin.jsp调用UserLoginServlet.java,UserLoginServlet.java在调用UserLogin.java实现登录。

12、语句如下:UserLogin.jsp中:跳转: UserLoginServlet.java中:调用JavaBean: String result = new Bean.UserLogin().select(user);UserLogin.java中:查询并比较是否匹配:String sql=select * from users where username =+name+;if(name.equals(rs.getString(1)&pass.equals(rs.getString(2)return true;else return false;3.2网上报名模块 网上报名当学生成功登录到本

13、系统后可以进行网上报名,点击网上报名,进入网上报名,学生填写自己的信息,如姓名,性别,年龄,语种,学历等信息,点击提交就可以将自己的信息提交到数据库中。如图33是考生网上报名流程图: 学生信息 重新填写 学生 否 信息 学生信息 图33考生报名流程 图 34考生报名接口图 在这个模块中学生填写自己的信息,在EnterOnline.java这个JavaBean中有成员变量存放学生信息,当考生输入自己的信息时就会将参数传给UserEnterOnline.java这个Servlet,UserEnterOnline.java这个Servlet调用EnterOnline.java里面的insert方法将

14、信息插入到数据库中,如果插入成功返回true如果插入失败返回false,然后UserEnterOnline.java这个Servlet中判断如果返回true就跳到UserRegisterSuccess.jsp成功页面,如果返回false跳到UserLoginError.jsp失败页面。主要代码为: EnterOnline.jsp中:跳转到Servlet中:UserEnterOnline.java中:取数据:String name=new String (request.getParameter(username). getBytes (ISO8859 -1) ,GB2312);String p

15、assword=request.getParameter(password);String sex=new String (request.getParamete r(sex) . getBytes (ISO8859-1 ) , GB2312);存到JavaBean中:Bean.EnterOnline enter = new Bean.EnterOnline();enter.setUsername(name);enter.setPassword(password);调用insert(enter)方法:String result = new Bean.EnterOnline().insert(e

16、nter);返回值判断: if(result.equals(true)response.sendRedirect(UserRegisterSuccess.jsp);else response.sendRedirect(UserLoginError.jsp); EnterOnline.java中:插入数据:String sql = INSERT INTO student VALUES (?,?,?,?,?,?,?,?,?,?);Statement st = conn.createStatement(); PreparedStatement ps=conn.prepareStatement(sql

17、); ps.setString(1, enter.getUsername(); ps.setString(2, enter.getPassword(); 33网上交费模块考生报考完毕后考生要在指定日期进行网上交费,交完费后会返回给学生准考证信息。如果填写信息不正确,会提示考生。如图35是考生网上交费的接口图: 如图35考生网上交费的接口图 如图36返回考生准考证如图37是考生网上交费的流程图:37考生网上交费的流程图UserFeeOnline.jsp将考生交费是提交上来的数据提交给UserFeeOnline.java的Servlet,在UserFeeOnline.java中先调用String

18、result=new Bean.FeeOnline().feein(fee);通过JavaBean中的feein(fee)函数来判断交费是否成功,如果交费成功再调用Bean.UserMessage message=new Bean.UserMessage();message.message1(userid);调用UserMessage()中的.message1(userid)将考生信息会回到页面上,主要代码:UserFeeOnline.java中:取数据:String userid=request.getParameter(userid);String money=request.getPar

19、ameter(money);存到fee这个对象中:fee.setUserid(userid);fee.setMoney(money);调用:Bean.FeeOnline fee=new Bean.FeeOnline();String result=new Bean.FeeOnline().feein(fee);返回值为true时:Bean.UserMessage message=new Bean.UserMessage();message.message1(userid);并将值存到request中并调用UserMessage.jsp:request.setAttribute(sex,mess

20、age.getSex();request.setAttribute(age,message.getAge();request.getRequestDispatcher(UserMessage.jsp).forward(request, response);FeeOnline.java中:略3.4信息修改模块如果学生信息有错误管理员可以在后台修改学生信息,点击修改信息就返回了所有学生信息返回,想修改哪个学生的信息,就点击那个学生后面的修改,就可以进行修改了,修改完毕提交完了显示学生信息,如下图3-8为修改信息接口图:图3-8修改信息接口图当管理员要修改学生信息时会调用AdminAlterMess

21、age.jsp,它中的ArrayList al = new ArrayList(); al = new EnterOnline().showStudent();这两句话会直接调用EnterOnline.java这个Javabean中的showStudent()方法,并且在这个页面上返回查询的值并输出,当管理员点击修改时就会以doget的形势调用AdminUpdateMessage.java,他会通过Bean.EnterOnline student=new Bean.EnterOnline().showStudent(id);调用showStudent(id)方法将要修改的学生信息返回到Admi

22、nUpdateMessage.jsp中,然后管理员进行修改,当修改完毕在提交AdminUpdate.java中,在AdminUpdate.java中调用EnterOnline.java中修改学生信息的函数student.updateStudent(request, id);修改信息,将修改后的信息返回到AdminAlterMessage.jsp中,修改工作就完成了。主要代码:AdminAlterMessage.jsp中: 返回所有学生信息:ArrayList al = new ArrayList(); al = new EnterOnline().showStudent();调用AdminUp

23、dateMessage:ahref=AdminUpdateMessage?id=修改AdminUpdateMessage.java中:调用showStudent(id),将返回值放到session中:Bean.EnterOnline student=new Bean.EnterOnline().showStudent(id);session.setAttribute(student, student);request.getRequestDispatcher(AdminUpdateMessage.jsp).forward(request, response);AdminUpdate.java中

24、:调用updateStudent(request,id)方法将值返回到AdminAlterMessage.jsp:Bean.EnterOnline student = new Bean.EnterOnline();student.updateStudent(request, id);response.sendRedirect(AdminAlterMessage.jsp);EnterOnline.java中:包含以下方法public String insert(EnterOnline enter)public ArrayList showStudent()public EnterOnline s

25、howStudent(String id)public void updateStudent(HttpServletRequest request,String id)第四章 结论4.1课程设计工作总结 半个月的企业级应用软件课程设计课程设计结束了,在这半个月的时间里从盲目到有了目标,从感觉时间很多到忙得不可开交,经历了很多转折点。第一天选择题目,开始觉得所有的题目觉得都挺简单的,但是后来仔细研究了每个题目觉得每个题目都有他深刻的含义,和难点,听着老师在前面讲述做课程设计的整体思路,当时头都大了,可能是以前从来都没接触过这样的题目,再加上老师说的那么严肃,好象很不容易做,当时就想这可怎么办呀,

26、自己平时上课也很认真听呀,怎么跟上课不一样呢?后来知道一些同学也选了研究生这道题就决定和他们一起讨论,人多力量大嘛,接下来的几天还算顺利,需求分析,ER图和表很快就制定好了。当时觉得原来也不难也很好做。接下来就开始了编程阶段,觉得自己JAVA图形界面学的好不错,决定做个漂亮的界面,但是当我看到别人漂亮的界面时觉得原来还自以为是其实已经背别人落在后面了。但是还安慰自己这是数据库课程设计不是JAVA课程设计,只要我把数据库后台做的好一样能行。时间过得真快2周时间快过去了,我也开始了连数据库的过程,可是机房这些机器好象在跟我作对,怎么也连不上,后来在同学的帮助下终于连上了,当时我真是开心死了。有一种

27、很大的成就感。两周过去了,我还有很多功能没有实现,于是决定要全天在机房奋斗,跟同学说好以后一个星期每天都去机房知道完成为止。接下来这个星期才是最考验我的时候,也是这次作课程设计最有意义的一个星期,最磨练意志的一个星期。在这一个星期里,曾经绝望过,想过要放弃,也曾开心过,决定一定要坚持下去。前两次做课程设计也遇到过各种困难,但是都没有这次难。直到周四我还没有完成所有的功能,还好老师很宽容,决定周六验收,在这里我真的要好好感谢王老师。正是您和其他老师放弃休息时间换来我宝贵的一天,也让我重新找回了信心,周五下午终于完成了所有工作,当时真实高兴的要跳起来了,看见自己做的到目前为止最大的一项工程,真是无

28、比开心。程序设计结束了,在这次程序设计中学到了太多太多的东西,有些是在课本中学到的,有些是在课本中学不到了,比如说信心,耐心,决心。宋老师曾经跟我们说过学软件一定要有耐心,要坐的住冷板凳,现在终于体会到了。以后无论是做一个小的实验还是一个大的工程都要认真用心去做,还要有耐心,这次我就是因为缺乏信心和耐心差点放弃,还好最后坚持下来了。这也是一项不小的收获呀。作课程设计也是一个学习的过程,结果重要,但是过程更重要,因为我们不是只做这一次,我们要学会这个过程,体会其中的深刻内涵。在作课程设计的过程中知道自己还有那些不足,哪方面需要重点学习。通过这次课程设计,不仅巩固了以前学的JAVA和数据库知识还学会了用存储过程,我由不了解存储过程,到会使用存储过程,我觉得这就是一次成长,自己研究过的东西记忆会更深刻,可以永远都不会忘记。对大三学数据库理论更有信心啦。4.2进一步的工作由于时间关系,开发工作以发布新闻信息为主,因此系统还存在不足,需要进一步改进和完善。本系统存在不足和改进方向:对系统的搜索功能实现的不是很完美,上传功能不是很强,对于javaBean的使用不是很熟练,某些采取的方法不是很科学。在以后的编程日子,会进行改进。

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1