毕业设计论文 毕业设计管理系统设计

毕业设计论文 毕业设计管理系统设计

ID:440723

大小:542.43 KB

页数:39页

时间:2017-08-02

上传者:U-720
毕业设计论文 毕业设计管理系统设计_第1页
毕业设计论文 毕业设计管理系统设计_第2页
毕业设计论文 毕业设计管理系统设计_第3页
毕业设计论文 毕业设计管理系统设计_第4页
毕业设计论文 毕业设计管理系统设计_第5页
资源描述:

《毕业设计论文 毕业设计管理系统设计》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

学号05710229毕业设计说明书毕业设计管理系统 毕业设计管理系统ThemanagementSystemforGraduationDesign 摘要毕业设计是学生在校期间的最后一个教学环节,是学习深化和提高的一个重要过程,也是综合检验所学理论知识的一个重要环节。该课题从毕业设计的申报、审核、学生选题、调剂、指导、评阅、答辩、归档等环节进行管理,实现了毕业设计的整个流程的管理工作。毕业设计管理系统的设计采用B/S(浏览器/服务器)结构,应用了开发工具Jbuilder2005、开发语言JSP,后台数据库采用了SQLServer2000及网页开发工具Dreamweaver8来实现,并且使用Photoshop美化系统。系统主要功能实现了学生自主选题和教师自主选择学生的网上双向选择,并增加了留言板、文件上传与下载、新闻发布等,能够保证毕业设计期间管理员、老师、学生之间信息的联通,对保证毕业设计的全程控制有非常重要的现实意义。该课题实现了毕业设计的自动化和网络化管理,是参加毕业设计的教师、学生通过网络及时沟通的一个重要环节,大大提高了我院教学管理质量和水平。关键词:出题;选题;评阅;答辩;JSP ABSTRACTGraduationDesignisthelastpartofteachingforagraduatestudentinthecollegeandanimportantprocessofdeepeningandimprovement,alsoanimportantpartofcomprehensivetestingtheoreticalknowledge.Thedesigndescribesaboutthemanagementofthedeclaration,thesubjectofaudit,choosingtitle,adjust,guide,apprise,replyandsoon.Itisdesignedtoachievethemanagementoftheentireprocess.And,thesystemachieveson-linetwo-wayselectionofchoosingtitleandchoosingstudentsindependently,Meanwhile,themessageboards,fileuploadsanddownloads,pressreleasesandotherfunctionsareincreased.Therefore,thesystemcanenduretheinformationconnectionamongtheadministrators,teachersandstudentsduringthegraduationdesign.ithasaveryimportantpracticalsignificancetoensurethequalityofgraduates.Withthepopularityofnetwork-based,networkofnationalcollegeincreasinglyimproves,therealizationofpaperlessofficeistobecomethefuturetrend,andwiththeteachingreformdeepeningofTianjinInstituteofUrbanConstruction,thesystemdesignedtoprovideinterfacefortheteachersandstudentsrelatedtograduationdesign.WebsiteisdesignedbyB/S(browser/server)structure,anddevelopswiththedevelopmenttoolJbuilder2005,thedevelopmentoflanguageJSP,BackgrounddatabaseusesSQLServer2000andwebsitedevelopmenttoolsDreamweaver8.AnditusesPhotoshoptobeautifysystem.keywords:settitle;choosetitle;controlcourse;JSP 目录第1章引言11.1选题背景11.2选题意义1第2章系统需求分析22.1目标22.2性能及运行需求22.3功能需求22.4系统E-R图3第3章基础知识简介43.1设计中常用的JSP内建对象43.2JSP是如何运行的43.3JSDK、Tomcat配置53.4JBuilder2005简介5第4章系统设计64.1概要设计64.1.1系统数据流程设计64.1.2数据字典74.1.3系统结构设计104.1.4表结构设计104.2详细设计134.2.1系统概述134.2.2系统流程图17第5章系统实现185.1数据库连接185.2系统各模块功能及实现效果图185.2.1出题模块及效果图185.2.2审题模块及效果图195.2.3选题模块及效果图195.2.4进程控制模块及效果图205.2.5评阅模块及效果图21 5.2.6调剂模块及效果图225.3查询及分页显示功能245.3.1查询功能245.3.2分页显示功能245.4应用中出现的问题与解决方法24第6章系统测试266.1测试方法的介绍266.2测试环境266.3测试对象266.3.1管理员模块266.3.2教师模块266.3.3学生模块266.4测试用例及结果276.4.1管理员模块276.4.2教师模块276.4.3学生模块28结论30致谢31参考文献32 第1章引言第1章引言1.1选题背景随着计算机及计算机网络的普及和全国各院校的校园网络的日益完善、健全,各种工作的计算机网络化将逐步取代繁重的传统办公模式。毕业设计作为大学生四年学习的重要环节,也有必要实行计算机网络化管理,从而减轻设计指导老师的承重负担,简化立题、选题、评分等过程,让繁冗的课题设计信息采用计算机数据库统筹管理。因此,设计一种毕业设计综合管理系统是我校教学管理发展的一项任务,也是各院校教学发展的趋势。该系统为学生、教师、管理员提供一个交互的接口,大大方便了学生、老师及管理员的管理人员。1.2选题意义毕业设计是学生在校期间的最后一个教学环节,是学习深化和提高的一个重要过程,也是综合检验所学理论知识的一个重要环节。本设计从课题的申报、课题的审核、学生选题、调剂、指导、评阅、答辩、归档等环节进行管理,实现了毕业设计的整个流程的管理工作。系统实现了学生自主选题和教师自主选择学生的网上双向选择,并增加了留言板、文件上传与下载、新闻发布等功能,能够保证毕业设计期间管理员、老师、学生之间信息的联通,对保证毕业设计的质量有非常重要的现实意义。随着网络化的普及,全国高校的校园网络日益健全,实现无纸化办公成为未来的趋势,并且随着天津城市建设学院的教学体制改革不断加深,本系统的建立为参加毕业设计的教师、学生提供接口。4第2章系统需求分析4 第2章系统需求分析第2章系统需求分析2.1系统目标1.应具有方便、强大的资料管理和良好的人机界面,使用户易于操作,便于浏览。2.系统的健壮性,扩展性良好。系统具有对数据备份和日志记录的功能。3.系统的安全性好,通过密码和权限的管理是用户的数据不受到侵害。4.系统的动态信息交互功能强,系统根据不同的用户的权限开放不同的处理权限;不同的用户可以通过留言板进行信息的沟通。5.系统尽量给用户提供一个良好的操作环境。2.2性能及运行需求对于毕业设计综合管理系统要求运行的工作环境稳定,易于操作,系统方便应用、安全可靠、便于维护以及实时性强,对于广大用户所要执行的操作简单易懂,访问速度较快,界面友好美观,有基本的错误提醒功能,远程操作数据库正确,要求和用户有很强的互动性。运行环境:本系统开发的毕业设计综合管理系统,在WindowsXP下运行,要求使用的操作系统上安装有SQLServer2000数据库、JBuilder、Dreamweaver、Tomcat服务器(已安装的JBuilder里包含Tomcat服务器)。主机要求赛扬M或相当性能以上配置。2.3功能需求根据功能分为教师、学生的前台操作和管理员的综合管理。系统有三个主要的角色组成:学生、教师、管理人员。1.教师完成的操作:个人信息的管理;课题的申报、修改、选择学生,设计期间与学生的交流与辅导、实习/指导、评阅和答辩成绩的评定。2.学生完成的操作:个人信息的管理,选择课题,设计期间利用留言板和教师进行交流,查询成绩。3.管理人员:对教师、学生的信息查询,添加和删除;系统开放管理;选课期间调剂操作;分配评阅老师和答辩老师;成绩录入;新闻发布。4 第2章系统需求分析2.4系统E-R图管理员姓名密码教师职称学历密码性别教研室姓名电话专业监督监督监督学生密码班级电话性别姓名课题专业班级评题人出题人名称管理员学生教师课题审题出题选题1n1n1nnn11n图2-1系统E-R图4 第3章基础知识简介第3章基础知识简介3.1设计中常用的JSP内建对象1、out对象out是类javax.servlet.jsp.JspWriter的一个对象,能够把信息回送给客户端的浏览器。out对象主要用在不关闭脚本小程序而发送结果时。在out对象中常用的方法就是print()和println(),两者都可以实现把信息发送给客户端的浏览器,即在浏览器上显示信息,两者的区别在于,print()方法是输出信息后不换行,println()则是输出信息后自动换行。2、request对象request是类javax.servlet.HttpServletRequest的一个对象,当客户端请求一个JSP页面时,JSP容器会将客户端的请求信息封装在request对象中,请求信息的内容包括请求的头信息(header)、系统信息(如编码方式)、请求的方式(如get或post)、请求的参数名称和参数值等。通过request对象的方法可以得到请求的相关信息。常用的方法:getParameter(Stringname),getParameterValues(Stringname),setAttribute(Stringname,java.lang.Objectobj),getAttribute(Stringname),setCharacterEncoding(),getSession()等。3、response对象response是类javax.servlet.HttpServletResponse的一个对象,它封装了JSP产生的响应,即JSP会根据客户端的请求建立一个默认的request对象,然后发送信息到客户端以响应客户端的请求。它与request对象一样,由JSP容器产生。并可以设置Http状态码和request头。常用方法:sendRedirect(Stringlocation)4、session对象session是类javax.servlet.HttpSession的一个对象。session指的是客户端与服务器端的一次会话,会话从客户连接到服务器开始,直到与服务器断开连接为止,这之间都可以访问session对象的属性和方法。session对象用来保存每个用户的信息,以便跟踪每个用户的操作状态,当用户首次登录系统时,JSP容器都会给此用户一个唯一的标识sessionID,用于区分其他的用户,当用户退出系统同时,session就会自动消失。3.2JSP是如何运行的JSP页面实际上是一个带有传统HTML和Java代码的Web页面。JSP页面的文件扩展名是.jsp而并不是.html或.htm4 第3章基础知识简介,该扩展名告诉服务器该页面需要特殊的处理,该特殊处理必须由服务器扩展或插件实现。当一个JSP页面被读取时,他首先被编译(JSP引擎来做这件事情)为一个Servlet。这时候这个Servlet就像其他Servlet一样被交给Servlet引擎来处理。然后Servlet引擎读取这个Servlet对应的类(用ClassLoader)并且执行它,产生一个动态HTML页面。这个Servlet创建一些必需的元件,然后将这些元件作为一个字符串写入输出流(OutputStream),并显示在浏览器中。3.3JSDK、Tomcat配置1、下载网址:JSDK:http://java.sun.com/j2se/1.4.2/download.htmlTomcat:http://www.apache.org2、安装及配置JSDK:按照安装向导安装Tomcat:按照安装向导安装,在Choose Components界面中选择full类型,在Configuration界面中填写一个没有被占用的端口3、环境变量的配置:安装路径:JSDK:c:JSDK1.4.2Tomcat:c:Tomcat6.0单击“我的电脑—〉属性—〉高级—〉环境变量—〉系统变量—〉新建”JAVA_HOME=c:JSDK1.4.2;CLASSPATH=.;%JAVA_HOME%libdt.jar;%JAVA_HOME%libtoos.jar;Path=%JAVA_HOME%bin;CATALINA_HOME=c:Tomcat5.0;CATALINA_BASE=c:Tomcat5.0;3.4JBuilder2005简介Jbuilder2005是功能强大的软件开发工具,通过它能很好的跟踪程序的运行情况,捕捉和定位错误,调试方便,便于修改。4第4章系统设计32 第4章系统设计第4章系统总体设计4.1概要设计4.1.1系统数据流程设计概要设计阶段的基本目标是用比较抽象的方式确定系统如何完成预定的任务,也就是说,应该确定系统的物理配置方案,并且进而确定组成系统的每个程序的结构。从数据流图出发设想完成系统功能的若干种合理的物理方案,从中选择一个最佳方案。然后进行软件结构设计,确定软件由哪些模块组成以及这些模块的动态调用关系。本设计包括出题、选题、系统维护、评阅和答辩等模块的设计。首先管理员登录系统,对系统进行初始化,并可设置系统的开放与关闭。系统初始化后教师可以出题,教师出题完毕管理员审核课题,审核通过后学生才可进行选题,学生选题完后教师可以选择符合题目要求的学生,形成双向选择。如果还有学生没选上题目,管理员可以进行调剂,使每个学生都有题目。当出题选题完毕,教师和学生建立了双向的关系后,进入到做题阶段。管理员和教师通过文件上传与下载、留言板、新闻发布和邮箱联系等方式对学生完成毕设的情况进行监督。指导教师指导学生完成设计后,进入到评阅阶段。管理员分配评阅教师后,评阅教师对所评阅课题进行评阅,给出相应成绩。评阅教师指导学生完成设计后,进入到答辩阶段。管理员分配答辩教师后,答辩教师对所答辩课题进行答辩,给出相应成绩。答辩结束后,由管理员对学生的实习/指导成绩、评阅成绩和答辩成绩进行录入,进行归档。32 第4章系统设计系统数据流图如下:图4-1系统数据流图4.1.2数据字典主要的数据字典:1.管理员信息数据字典表4-1管理员信息数据字典名字:管理员信息别名:person描述:管理员的相关信息定义:管理员信息=管理员id+管理员name+管理员password位置:存于数据库,在维护系统时应用32 第4章系统设计2.教师信息数据字典表4-2教师信息数据字典名字:教师信息别名:teacher描述:教师的相关信息定义:教师信息=教师id+教师姓名+教师职称+教师学历+教师性别+教师教研室+教师系别+教师电话+教师密码位置:存于数据库,在出题和进程控制时应用表4-3学生信息数据字典名字:学生信息别名:student描述:学生的相关信息定义:学生信息=学生id+学生姓名+学生性别+学生系别+学生专业+学生年级+学生班级+学生成绩+学生电话+学生密码位置:存于数据库,在选题和进程控制时应用表4-4课题信息数据字典名字:课题信息别名:title描述:课题的相关信息定义:课题信息=课题id+课题名+出题教师+课题类别+所属专业+需求人数+课题要求+课题内容位置:存于数据库,在出题、选题时应用表4-5管理员调剂课题数据字典名字:管理员调剂课题别名:adjust描述:管理员为没有选到题的学生调剂课题定义:管理员调剂课题=学生id+学生名字位置:存于数据库,在选题时应用32 第4章系统设计表4-6管理员分配答辩老师数据字典名字:管理员分配答辩老师别名:answer描述:管理员为每一个课题分配5位答辩老师,其中一名为答辩组长。定义:管理员分配答辩老师=答辩题目id+答辩题目+答辩组长+答辩老师1+答辩老师2+答辩老师3+答辩老师4+答辩时间+答辩教室位置:存于数据库,在答辩时应用表4-7留言板信息数据字典名字:留言板信息别名:bbs描述:留言板的相关信息定义:留言板信息=主题id+楼主+主题+回复+人气+发表时间+最后回复+内容位置:存于数据库,在留言时应用表4-8课题类别信息数据字典名字:课题类别别名:category描述:课题类别的相关信息定义:课题类别信息=课题类别id+名称+专业+系别位置:存于数据库,在出题时应用表4-9学生成绩信息数据字典名字:学生成绩信息别名:score描述:学生成绩的相关信息定义:学生成绩信息=成绩id+学生名字+实习成绩+指导成绩+评阅成绩+答辩成绩位置:存于数据库,在归档时应用表4-10上传文件信息数据字典名字:上传文件信息别名:uploadfile描述:上传文件的相关信息定义:上传文件信息=文件id+名称+大小+路径+上传人32 第4章系统设计位置:存于数据库,在上传文件时应用表4-11系统状态信息数据字典名字:系统状态信息别名:system描述:系统状态的相关信息定义:系统状态信息=系统id+名称+开关标志位置:存于数据库,在维护系统时应用4.1.3系统结构设计图4-2系统结构图4.1.4表结构设计设计的表为:管理员表(person),教师表(teacher),学生表(student),课题表(title),教师布置任务表(task),学生提交任务表(task1)32 第4章系统设计,系统状态表(system)。各个表的结构如下:表4-1管理员调剂选题表(adjust)列名数据类型长度是否可为空说明IdInt4N学生IdNameVarchar20N学生名字说明:该表存储管理员调剂相关的信息表4-2答辩老师分配表(answer)列名数据类型长度是否可为空说明answer_idInt4N答辩Id(主键)answer_titleVarchar20Y答辩题目answer_zuzhangVarchar20Y答辩组长answer_t1Varchar20Y答辩老师1answer_t2Varchar20Y答辩老师2answer_t3Varchar20Y答辩老师3answer_t4Varchar20Y答辩老师4answer_timeVarchar20Y答辩时间answer_roomVarchar20Y答辩教室说明:该表存储答辩老师相关的信息表4-3留言板信息表(bbs)列名数据类型长度是否可为空说明主题idint4N留言号楼主Varchar20N楼主主题Varchar130N主题回复Int4Y回复人气Int4Y人气发表时间Varchar50N发表时间最后回复Varchar20Y最后回复内容text20Y内容该表存储留言板相关的信息32 第4章系统设计表4-4课题类别信息表(category)列名数据类型长度是否可为空说明category_idInt4N留言号category_nameVarchar50Y楼主category_professionalVarchar50Y主题category_departmentVarchar50Y回复该表存储课题相关的信息表4-5新闻信息表(news)列名数据类型长度是否可为空说明news_idInt4N新闻号news_contentVarchar300Y新闻内容news_titleVarchar50Y新闻题目该表存储新闻相关的信息表4-6管理员表(person)列名数据类型长度是否可为空说明idVarchar20N管理员idnameVarchar20N管理员姓名passwordVarchar20Y管理员密码该表存储管理员相关的信息表4-7成绩显示表(score)列名数据类型长度是否可为空说明score_idInt4N学生idscore_nameVarchar20Y学生姓名score_sxVarchar20Y实习成绩score_zdVarchar20Y指导成绩score_pyVarchar20Y评阅成绩score_dbVarchar20Y答辩成绩score_zVarchar20Y答辩组长score_a1Varchar20Y平均成绩1score_db1Varchar20Y答辩老师132 第4章系统设计score_db2Int4N答辩老师2score_db3Varchar20Y答辩老师3score_db4Varchar20Y答辩老师4score_a2Varchar20Y平均成绩2表4-8教师表(teacher)列名数据类型长度是否可为空说明teacher_idInt4N教师Idteacher_nameVarchar50N教师姓名teacher_sexVarchar50Y教师性别teacher_recordVarchar50Y教师学历teacher_postVarchar50Y教师职称teacher_roomVarchar50Y教研室teacher_phoneVarchar50Y教师电话teacher_roleVarchar50Y角色teacher_departmentVarchar50Y系别teacher_emailVarchar50Y邮箱号teacher_passwordVarchar50Y教师密码teacher_powerInt4Y教师权限说明:该表存储教师相关的信息表4-9学生表(student)列名数据类型长度是否可为空说明stu_idInt4N学生Idstu_nameVarchar50N学生姓名stu_sexVarchar50Y学生性别stu_departmentVarchar50Y系别stu_professionalVarchar50Y专业stu_gradeVarchar50Y年级stu_classVarchar50Y班级stu_phoneVarchar50Y电话stu_emailVarchar50Y邮箱号stu_qqVarchar20YQQ号stu_passwordVarchar50N学生密码32 第4章系统设计stu_titleInt50Y所选课题stu_scoreInt4Y分数stu_lockVarchar50Y锁定标志说明:该表存储学生相关的信息表4-10课题表(title)列名数据类型长度是否可为空说明title_idInt4N课题Idtitle_nameVarchar50N课题名title_teacherVarchar50Y出题教师title_categoryVarchar50Y课题类别title_professionalVarchar50Y使用专业title_numVarchar50Y需求认识title_requireVarchar80Y课题要求title_flagVarchar50Y是否选中title_contentVarchar50Y课题内容title_checkVarchar20Y是否审核title_xnumInt4Y已选人数title_appraiseVarchar50Y评阅教师说明:该表存储课题相关的信息表4-11文件信息表(file)列名数据类型长度是否可为空说明file_idInt4Y文件idfile_nameVarchar255N文件名file_sizeInt4Y文件大小file_routeVarchar50Y文件路径file_personVarchar50N上传人说明:该表存储上传文件相关的信息表4-12系统状态表(system)列名数据类型长度是否可为空说明system_idint4N系统Idsystem_namevarchar50N系统名system_openbit1N开启状态32 第4章系统设计说明:该表存储系统状态相关的信息4.2详细设计4.2.1系统概述详细设计阶段的关键任务是确定怎样具体地实现用户需要的软件系统,也就是要设计出程序的“蓝图”。除了应该保证软件的可靠性之外,使将来编写出的程序可读性好、容易理解、容易测试和维护,是详细设计阶段最重要的目标。1.本人设计的模块有出题、选题子系统、系统维护子系统和评阅答辩管理等。最初时管理员应对系统进行初始化,初始化完后,教师拥有权限进行出题操作,教师出题完毕,管理员应对该课题进行审核,审核通过后学生这时拥有权限进行选课操作,学生选课操作完毕,这时,教师可以从选择他所出课题的学生中选择适合该课题的学生,达到一种双向的自主选择。操作完毕后,可能存在某些学生没有选上题目,这时可以通过管理员的调剂操作来处理,把没选题的学生调剂到缺少人数的课题或者重新出题来满足要求,是每个学生都有题可做。这时,指导教师应指导学生完成毕业设计,完成后应由评阅教师进行评阅。2.出题阶段参与工作的有相关的教师,他们由教师表(表4-8)确定,每一个教师在登录的时候就可以进入自己的界面。教师根据要求填写自己的课题和相关要求,可以通过多次登录就行修改、删除和提交来完成出题工作,所出课题存储于课题表(表4-10),也可以通过留言板与管理员交流。32 第4章系统设计开始是否登录成功?出题出题成功?结束YYNN图4-3出题流程图3.选题阶段首先由管理员确定发布内容。学生通过登录自己的界面,可以看到题目的全部信息并且进行选择。在达到限定时间后,由管理员通过人工干预的方式确定最终的选题结果。在确定的时间内和学生完成选题后,由管理员根据题目和学生的具体情况,通过人工干预的方式,对表4-11进行处理,确定每一个学生的题目,协调学生和题目之间的关系。32 第4章系统设计开始是否登录成功?选题选题成功?结束YYNN图4-4选题流程图4.在评题阶段,首先由管理员通过对表4-2的输入,确定每一个评题阶段的评题人;然后评题人通过登录自己的界面进行评题。开始是否登录成功?评阅评阅成功?结束YYNN图4-6评阅流程图4.32 第4章系统设计在答辩阶段,首先由管理员通过对表4-2的输入,确定每一个题目的答辩组长和其他四位答辩老师;然后答辩老师通过登录自己的界面进行答辩管理。32 第4章系统设计4.2.2系统流程图查看课题信息审核课题提交课题课题通过确定课题选择学生NYNY开始登录成功?结束成功?YNNY图4-7系统流程图32第5章系统实现32 第5章系统实现第5章系统实现5.1数据库连接<%!StringDBDRIVER="com.microsoft.jdbc.sqlserver.SQLServerDriver";StringDBURL="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=bishe";StringDBUSER="sa";StringDBPASSWORD="";Connectionconn=null;Statementpstmt=null;ResultSetrs=null;%><%Stringsql="……";try{Class.forName(DBDRIVER);conn=DriverManager.getConnection(DBURL,DBUSER,DBPASSWORD);pstmt=conn.createStatement();rs=pstmt.executeQuery(sql);}catch(Exceptione){}%>5.2系统各模块功能及实现效果图5.2.1出题模块及效果图出题模块主要主要通过在页面设置表单,出题人点击提交按钮后把相应的表单信息存入数据库bishe的表title中。实现的主要代码:Stringsql="insertintotitle(title_name,title_teacher,title_category,title_professional,title_num,title_require,title_flag,title_content)values(?,?,?,?,?,?,?,?)";效果图如下:图5-1出题效果图32 第5章系统实现5.2.2审题模块及效果图审题模块主要通过从数据表title中查询出某教师的所有课题,从中选择未审核的课题进行审核,同时更新数据表title。审核成功且通过后,学生自主选题。主要实现代码:Stringsql="updatetitlesettitle_name=?,title_teacher=?,title_category=?,title_professional=?,title_num=?,title_require=?,title_flag=?,title_content=?,title_check=?wheretitle_id=?;";实现效果图:图5-2审题5.2.3选题模块及效果图选题模块主要是先在学生主页中显示所有的已通过审核的课题,学生点击课题名查看课题详细信息后,如果对课题有兴趣就点击选题按钮,把所选课题名存入数据表student中。主要实现代码:Stringsql="updatetitlesettitle_xnum=title_xnum+1wheretitle_id=?;";Stringsql1="updatestudentsetstu_title=?wherestu_name=?andstu_lock='no'";Stringsql2="selectstu_titlefromstudentwherestu_name=?";实现效果图:32 第5章系统实现图5-3选题效果图5.2.4评阅模块及效果图评阅模块主要通过从数据表teacher中查询出所有教师,从中选择合适的教师为评阅教师,同时更新数据表title。成为评阅教师后,教师可以评阅相应课题并给出成绩。主要实现代码:Stringsql="updatetitlesettitle_appraise=?wheretitle_name='"+title+"'";Stringsql2="updateteachersetteacher_power='"+2+"'whereteacher_name=?";实现效果图:图32 第5章系统实现5.2.5答辩模块及效果图答辩模块主要通过从数据表teacher中查询出所有教师,从中选择合适的教师为答辩教师,同时更新数据表title。成为答辩教师后,教师可以答辩相应课题并给出成绩。主要实现代码:Stringsql="updatetitlesettitle_answer=?wheretitle_name='"+title+"'";Stringsql2="updateteachersetteacher_power='"+2+"'whereteacher_name=?";实现效果图:图5-7选择评阅教师5.2.6调剂模块及效果图调剂模块主要是管理员查找还未选题的学生,为其选择课题。实现时先选中某课题,再查找未选题的学生,为课题选择合适的学生点击提交后存入数据表中。主要实现代码:sortitems=1;functionmove(fbox,tbox){for(vari=0;i32 第5章系统实现no.value=fbox.options[i].value;no.text=fbox.options[i].text;tbox.options[tbox.options.length]=no;fbox.options[i].value="";fbox.options[i].text="";}}BumpUp(fbox);if(sortitems)SortD(tbox);}functionBumpUp(box){for(vari=0;iif(box.options[i].value==""){for(varj=i;jbox.options[j].value=box.options[j+1].value;box.options[j].text=box.options[j+1].text;}varln=i;break;}}if(lnbox.options.length-=1;BumpUp(box);}}functionSortD(box){vartemp_opts=newArray();vartemp=newObject();for(vari=0;itemp_opts[i]=box.options[i];}for(varx=0;xtemp_opts[y].text){temp=temp_opts[x].text;temp_opts[x].text=temp_opts[y].text;temp_opts[y].text=temp;temp=temp_opts[x].value;temp_opts[x].value=temp_opts[y].value;temp_opts[y].value=temp;}}}for(vari=0;ibox.options[i].text=temp_opts[i].text;}}32 第5章系统实现实现效果图:图5-8调剂5.3查询及分页显示功能5.3.1查询功能搜索字段:题目教师搜索条件:Stringfield=request.getParameter("field");Stringterm=request.getParameter("term");term=newString(term.trim().getBytes("ISO8859_1"),"GB2312");Stringsql="select*fromtitlewhere"+field+"='"+term+"'";5.3.2分页显示功能//countpage总页数,sqan宽度,count总纪录数,fpage现在页,fcount现纪录数Stringstrpages=(String)request.getParameter("pages");intpages=0;if(strpages==null){pages=0;}else{pages=Integer.parseInt(strpages);}rs.last();intsqan=4,j=0,fcount=0;intcount=rs.getRow();intcountpage=count/sqan;32 第5章系统实现if(count%sqan>0)countpage=countpage+1;if(pages<0)pages=0;if(pages>countpage-1)pages=countpage-1;fcount=pages*sqan+1;intfpage=(count-fcount)/sqan+1;rs.absolute(fcount);rs.previous();5.4应用中出现的问题与解决方法世界上的各地区都有本地的语言。地区差异直接导致了语言环境的差异。在开发一个国际化程序的过程中,处理语言问题就显得很重要了。这其中汉字是双字节的,所谓双字节是指一个双字要占用两个BYTE的位置(即16位),分别称为高位和低位。中国规定的汉字编码为GB2312,这是强制性的,目前几乎所有的能处理中文的应用程序都支持GB2312。另外有一种编码,叫做GBK,但这是一份规范,不是强制的。GBK提供了20902个汉字,它兼容GB2312,编码范围为0x8140到0xfefe。GBK中的所有字符都可以一一映射到Unicode2.0。当我们在处理数据库中的信息时,无论是把信息从数据库中取出来传到web页面上,还是把web页面中的信息用request对象的getParameter方法取进来插入数据库中,都会出现乱码问题。其原因就是Java语言内部是用Unicode表示字符的,采用unicode编码。Java程序无论是从/往文件系统以字符流读/写文件,还是往URL连接写HTML信息,或从URL连接读取参数值,都会有字符编码的转换。所以两个方向转换都有可能得到错误的结果。针对这个问题,我把从html取进来的所有信息,都经过编码转化了一下,一般我们最常用的编码方式就是GB2312,GBK,UTF-8和ISO8859-1。我用的是ISO8859-1编码方式,ISO8859-1是我们平时使用比较多的一个CodePage,它属于西欧语系。1、用JDBC执行SELECT语句从服务器端读取数据(中文)后,但不能正确显示在网页上,将数据按“ISO-8859-1”编码方式转化为字节数组,再按系统缺省编码方式(DefaultCharacterEncoding)转化为STRING,就可以了。但是一般情况下,在转换字符串时不采用系统默认编码方式,而直接采用“GBK”或者“GB2312”,所以从数据库取数据显示时是不会出现问题的。32 第5章系统实现2、当我们要向数据库中插入中文数据时,处理方式与“取中文”相逆,先将SQL语句按系统缺省编码方式转化为字节数组,再按“ISO-8859-1”编码方式转化为STRING,最后送去执行,则中文信息可正确写入数据库。32 结论第6章系统测试6.1测试方法的介绍黑盒测试也称功能测试或数据驱动测试,它是在已知产品所应具有的功能,通过测试来检测每个功能是否都能正常使用,在测试时,把程序看作一个不能打开的黑盒子,在完全不考虑程序内部结构和内部特性的情况下,测试者在程序接口进行测试,它只检查程序功能是否按照需求规格说明书的规定正常使用,程序是否能适当地接收输入数据而产生正确的输出信息,并且保持外部信息(如数据库或文件)的完整性。"黑盒"法着眼于程序外部结构、不考虑内部逻辑结构、针对软件界面和软件功能进行测试。"黑盒"法是穷举输入测试,只有把所有可能的输入都作为测试情况使用,才能以这种方法查出程序中所有的错误。实际上测试情况有无穷多个,人们不仅要测试所有合法的输入,而且还要对那些不合法但是可能的输入进行测试。白盒测试按照程序内部的逻辑对程序进行测试,检查程序中的每条通路是否能按预定要求正确工作。白盒测试又称为结构测试。在这里主要采用的是黑盒测试,并以白盒测试为辅助测试。6.2测试环境硬件:cup:CeleronM1.5Ghz内存:512M硬盘:40G软件:MicrosoftwindowsXPJBuilder2005SqlServer2000数据库6.3测试对象6.3.1管理员模块登录时,输入正确的和错误的用户名和密码,转向是否正确。登录成功后管理员的各项功能是否能正确实现。6.3.2教师模块登录时,输入正确的和错误的用户名和密码,转向是否正确。登录成功后教师的各项功能是否能正确实现。6.3.3学生模块32 结论登录时,输入正确的和错误的用户名和密码,转向是否正确。登录成功后学生的各项功能是否能正确实现。6.4测试用例及结果6.4.1管理员模块1.登录时,输入正确的和错误的用户ID和密码,转向是否正确1)正确的用户名和密码:输入:用户名:admin,密码:xs预期输出:跳转到管理员模块主页2)错误的用户名和密码:输入:用户名:fddgg,密码:000预期输出:跳转到管理员登陆页面以上测试用例经过验证是正确的2.管理员登录成功后,是否可以进行审题操作。图6-1审核测试3.是否可以选择评阅教师。图6-4选择评阅教师测试以上测试用例经过验证与预期结果相符6.4.2教师模块1.登录时,输入正确的和错误的用户ID和密码,转向是否正确1)正确的用户名和密码:输入:用户名:黄新枝,密码:yuanfang预期输出:登陆到教师模块主页2)错误的用户名和密码:输入:用户名:12345,密码:345预期输出:跳转到教师登陆页面以上测试用例经过验证是正确的2.教师登录成功后,是否可以进行出题管理。32 结论图6-3添加课题测试3.是否可以选择评阅教师。图6-4选择评阅教师测试以上测试用例经过验证与预期结果相符6.4.3学生模块1.登录时,输入正确的和错误的用户名和密码,转向是否正确1)正确的用户名和密码:输入:用户名:王群芳,密码:xs预期输出:跳转到学生模块主页2)错误的用户名和密码:输入:用户名:76,密码:000预期输出:跳转到学生登陆页面2.学生登录成功后,是否可以选题和自拟课题。图6-8选题测试以上测试用例经过验证与预期结果相符32 结论结论本设计从课题的申报、课题的审核、学生选题等环节进行管理,实现了学生自主选题和教师自主选择学生的网上双向选择,同时对毕业设计的各个环节进行监控。本系统实现了网上双向选择,严格了毕业设计进程控制,能够保证毕业设计高质量的完成。本系统同样也存在很多问题,比如:代码完全是嵌在页面上的,安全性不高,代码也很繁琐;注入式攻击;非正常字符的检测;数据表的设计也没有做到最优。这些都是应该加强改进的地方。32致谢32 致谢致谢在这里要感谢四年来天津城市建设学院对我的培养,感谢指导老师邢老师在这几个月来的关心和严格细致的指导;感谢电子与信息工程系老师在百忙之中为我解答疑难问题,感谢老师们对我的精心栽培;也要感谢在毕设中同学们对我的帮助;感谢所有帮助过我的人,谢谢大家!32参考文献32 参考文献参考文献[1]飞思科技产品研发中心.JSP应用开发详解(第二版)[M].北京:电子工业出版社,2004年.[2]吴以欣,陈小宁.JavaScript脚本程序设计[M].北京:人民邮电出版社,2005年5月[3]萨师煊,王珊.数据库系统概论(第三版)[M].北京:高等教育出版社,2000年2月.[4]Borland公司.Jbuilder2005编程与开发[M].北京:电子工业出版社,2005年4月.[5]孙卫琴、李洪成.Tomcat与JavaWeb开发技术详解[M].北京:电子工业出版社,2004年4月.[6]程凯.JSP中文问题及一套整体解决方案[J].许昌学院学报,2006,25(5):77-80.[7]刘长生,谢强.丁秋林.Java应用中的汉字乱码问题分析[C].计算机技术与发展,2006,16(1):158-161.[8]袁健美.基于JSP的B/S动态网站开发及数据库连接[C].计算机技术与发展.2007/17/06.[9]苏林忠,冀翼.基于JSP技术的动态WEB开发[J].河南师范大学学报(自然科学版),2003(03)[10]A.S.Shevlyakov.SomeAspectsofUsingJSPTechnologyforDistanceLearningTasks[J].JournalofMathematicalSciences,Volume107,Number6/2001/12.[11]C.S.SungandSamJoonPark.Acomponent-basedproductdatamanagementsystem[J].TheInternationalJournalofAdvancedManufacturingTechnology,Volume33,Numbers5-6/2007/6[12]MarkWutka,AlanMoffet,KunalMittal.SamsTeachYourselfJAVAServerPages2.0withApacheTomcatin24Hours[J].SamsPublishing,200332

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。
大家都在看
近期热门
关闭