版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
某大学毕业论文选题系统的设计摘要随着全球信息化技术的兴起,特别是Internet的日益普及,我国各大中专院校都建立了自己的校园网。毕业生以班级为单位的原始手工报送的选题方式已经不能适应时代开展的需求,所以基与互联网的毕业设计选题系统也就孕育而生了。毕业设计选题系统就是能够使学生通过互联网完成毕业设计课题的选定,它采用Web方式,同时适用于局域网和Internet,它要实现审核,权限管理,邮件通知等功能,并能提供题目保存、题目查询等功能,该系统同时拥有最开放的题库管理系统和最灵活的选题系统,能够自动进行权限的判断,对用户进行冻结。我们采用了JSP技术为主要手段,本系统采用了多级角色管理:包括系统管理员、系主任,学生和老师几种权限.本文主要介绍了用户权限的划分,并详细地论述了系统设计的思想和实现的方法步骤从而为以后的研究打下了根底。关键词:审核;权限;多级角色管理TheDesignandImplementationofSubjectSelectionSystemforGraduationBasedonJSPAbstractWiththerisingofglobalinformationtechnology,especiallythegrowingprevalenceofInternet,thetechnicalinstitutecollegesanduniversitiesinourcountryhavesetuptheirownCampusNet.Forthetraditionalwayofmanualsubmissionofselectedsubjectcannotadapttocurrentdemands,theInternet-basedgraduationsubjectselectionsystemborn.SuchsystemenablesstudentstochoosesubjectforgraduationdesignthroughInternet.ItadoptsB/Spattern,andissuitabletoboththelocalareanetworkandInternet.Itmustimplementfunctionssuchastheverificationofthesubject,thejurisdictionmanagement,mailnotification,aswellassubjectstorageandsearching.Withtheopensubjectmanagementsystemandtheflexiblesystem,itcanautomaticallyverifythejurisdictionofauserandfreezetheuser.ThesystemadoptedtheJSPasitsmaintechnology,andimplementedthemultistagerolemanagement.Thesystemalsoimplementedthemanagementoftheprivilegeofsystemmanagers,deans,studentsandteachers.Keywords:Verification;Jurisdiction;Multistagerolemanagement.目录论文总页数:23页1引言 1选题系统出现的趋势 1选题系统常用的实现技术 12根本技术简介 1本系统拟采用的解决方法〔技术〕 2主要技术简介 23需求分析与方案设计 3功能需求分析 3数据库需求 3系统支撑环境 44系统设计 44.1功能设计 44.2数据库设计 44.2.1系统登陆,用户会话表(bsm_session_info) 44.2.2系统用户信息管理表〔bsm_sys_user〕 54.2.3毕业论文题库信息表(subject) 54.2.4毕业论文选题信息管理表(select_sub) 65系统功能实现 7系统组成和业务流程图 7系统用户权限管理 85.2.1系统登陆 9系统用户管理 115.2.3历届信息查看 135.2.4个人信息维护 13系统选题权限管理 14教师题库管理 15教师出题 15教师审核题目 16学生在线选题 16系统登出 18系统根本控件使用 18数据库连接池实现 18邮件系统实现 196技术难点分析 20结论 20参考文献 20致谢 21附录 22Tomcat简介 22声明 231引言选题系统出现的趋势在网络飞速开展的今天,互联网成为人们快速获取,发布和传递信息的重要渠道,在人们政治,经济,生活等各方面发挥着重要的作用。因此网站建设在Internet应用上地位显而易见,它已成为政府,企事业单位信息化建设中的重要组成局部,从而倍受人们的重视。从20世纪90年代初期随着www的开展,Internet逐渐普及化由于www通过良好的界面大大简化了Internet操作难度使得用户数量急剧增加,许多人开始重视Internet,发现到Internet具有巨大得潜力。于是纷纷大量参加Internet。这样Internet上得站点大大增加,网络信息五花八门,十分丰富。如今Internet已经深入到人们生活得各个局部。Internet大大方便了信息的传播,给人们带来了全新得生活方式。这次我们所设计的课题正是互联网与大学生学习生活紧密相关的,现今的社会人们已经离不开网络,传统的选题方式也面临着变革,而网络选题那么是一个很重要的方向。基于Web技术的网络选题系统可以借助于遍布全球的Internet进行,因此选题既可以在本地进行,也可以在异地进行,大大拓展了选题的灵活性。题目可以根据题库中的内容生成,从而使用计算机选题大大的提高了选题效率;还可以直接把题目送到数据库中保存,作为老师以后出题的参考。现在较好的选题方式为网络选题,题目内容放在效劳器上,学生通过帐号和口令进行登陆,学生也可以第一时间得到选题信息。因此,采用网络选题方式将是以后的大趋势。1.2选题系统常用的实现技术网络选题系统的实现技术有多种,可以采用传统的客户机/效劳器〔C/S〕型的MIS型架构,即论文题目内容放在远程的效劳器上,在选题机上安装考试应用程序和数据库客户机配置,因此每次选题时要对机器进行安装、配置,这样一来选题工作比拟烦琐;而且选题程序放在客户机上,平安性也受到一定影响。另外一种考试系统采用Web技术实现。Web技术超越了传统的“客户机/效劳器〞两层结构,采用了三层体系结构:用户界面层/事务层/数据库层。因此Web结构有着更好的平安性。在用户机上不需要安装任何应用程序,应用程序可以安装在作为效劳器的计算机上,题目存放在数据库效劳器上〔事务层和数据库可以是同一台机器〕。2根本技术简介本系统全称为毕业设计选题系统,开发的目的是为学生提供通过学校的网络进行毕业设计题目的选择。本系统拟采用的解决方法〔技术〕本系统要求实现网络选题系统的各项根本功能,从平安性和易维护性考虑,选择了Web实现技术。简单的说就是将系统做成一种B/S模式,可以让用户通过浏览器直接访问位于效劳器上的试题以及对系统进行远程维护。效劳器端程序的实现技术也很多,本人选用了当前比拟流行的网络编程技术——JSP作为主要实现手段〔配合JavaServlet,HTML等〕。JSP作为一种Web实现技术,它的效率是很高的。这一点正好符合了选题系统所要求的实时性。JSP自身的平安性,再加上实现模式的特点,完全能够到达选题的要求。除此之外,作为Java平台的一局部,JSP拥有Java语言“一次编写,各处运行〞的特点。又随着越来越多的效劳器供给商将JSP支持添加到他们的产品中,这样一来用JSP做成的这套系统可以轻松移植到其它平台来运行。种种优点使得这套系统不但为目前校内的网络教学以至于今后远程教育的实现都打下了良好的根底。所以JSP是实现本系统的最正确技术,它是完全可行的。JSP是JavaServerPages的简称,它是由SunMicrosystem公司于1999年6月推出,是基于JavaServlet以及整个Java体系的Web开发技术。作为J2EE体系中的重要一环,JSP为创立高度动态的Web应用提供了一个独特的开发环境。JSP能够适应市场上包括ApacheWebServer、IIS4.0在内的85%的效劳器产品,这足以胜任绝大多数的商业事务处理。同时JSP代码经过效劳器的解释执行后会直接嵌入到HTML语言中,这样就简化了页面的输出,也保存了脚本语言易于使用的优点。SUN公司开发出这个标准来整合和平衡已经存在的标准,对JAVA编程环境进行支持的技术和工具。其结果是产生了一种新的,开发基于WEB应用程序的方法,给予使用基于组件应用逻辑的页面设计者以强大的功能支持。JSP设计目标是为了使动态页面编写更容易,更简单。JSP特点主要有以下几点:到处可执行,JSP技术完全与平台无关的设计,包含它的动态网页和底层Server元件设计,加强元件功能,更容易建立动态网页。JDBC是JavaDataBaseConnectivity的简称,也就是java数据库连接。它是一种用于执行SQL语句的JavaAPI,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。JDBC提供了一种基准,据此可以构建更高级的工具和接口,使数据库开发人员能够编写数据库应用程序。将Java语言和JDBC结合起来使程序员只须写一遍程序就可以让它在任何平台上运行,这也是Java语言“编写一次,各处运行“的特点。同时JDBC扩展了Java的功能。例如,用Java和JDBCAPI可以发布含有applet的网页,而该applet使用的信息可能来自远程数据库企业也可以用JDBC通过Intranet将所有职员连到一个或多个内部数据库中。3需求分析与方案设计分析作为高校毕业生的一个毕业设计选题系统,它就面对着许多用户的操作,而这些用户对系统的操作应该有所不同,所以我们在设计时必须要对不同的用户设立不同的的权限。在本系统中,我考虑了4种权限〔管理员,系主任,指导教师,学生〕。管理员可以添加的用户系主任,而系主任能添加的用户为指导教师和学生。同时,我们为了使本系统更加的符合我们的实际,教师能在线出题,但是所出的题目必须经过系主任的审核后学生才能进行选择。在学生的选题中,在实现选题的根底上,也要考虑学生选择志愿的顺序,所以在学生的选择过程中,要设立多个志愿,但是在教师的审核过程中,我们必须根据学生的志愿依次进行审核。也就是说在学生的第一志愿未被审核的时候,第二志愿的老师不能对该生的第二志愿进行审核。在信息世界中,信息从客观事物出发流经数据库,通过决策机构最后又回到客观世界,信息的这一循环经历了三个领域:信息世界,数据世界,现实世界。现实世界的事物反映到人的头脑中,人的大脑对它有个认识过程,经过分析〔选择、命名、分类等〕进入信息世界。这些信息再进一步加工、编码,然后进入数据世界,而软件系统的开发工作需要考虑这两个方面的问题,也就是要考虑系统开发所需要的数据,以及如何对这些数据进行操作。这两个问题贯穿了整个软件系统的开发过程,这也就是数据库的设计问题,软件设计的一个核心。作为一个具有一定应用价值的教学管理系统,从本质上说其操作的对象为数据库中存储的具体记录。因此,不仅要求所使用的数据库系统具有比拟高的稳定性、平安性及高负载下保持足够相应的能力,还要求设计者清楚需求,做出科学的数据库逻辑结构设计,以提高数据库的利用效率和减少数据冗余。用户的需求具体表达在各种信息的提供、保存、更新和查询,这就要求数据库结构能充分满足各种信息的输入和输出。收集根本数据、数据结构及数据处理的流程,组成一份详尽的数据字典,为后面的具体设计打下根底。数据库的概念结构设计完毕以后,现在可以将上面的数据库概念结构转化为某种数据库系统所支持的实际数据模型,也就是数据库的逻辑结构。数据库系统的选用需要根据系统的需求而定。该系统主要涉及到几种信息的存储,首先是毕业班学生的信息,论文的题目信息,学校指导教师和系主任的信息,所以每个信息保存在一张表中,在对表的操作中可以对任意一个表独立操作,也可以对几个表关联操作。1)操作系统:WINDOWS20002)应用效劳器:TOMCAT3)数据库:SQL20004)JAVAVM:JDK1._075)硬件:建议内存在512M以上4系统设计4.1功能设计在线选题系统的功能主要包括三局部:用户管理、教师题库信息管理、学生在线选题信息管理。其软件设计结构图结构如图1:毕业设计选题系统毕业设计选题系统管理员系主任老师学生增加系主任信息系统维护增加老师,学生信息审核老师的出题录入毕业设计题审核学生选题网上选题查看历年的选题图1:系统总结构设计图4.2数据库设计5系统功能实现系统组成和业务流程图〔一〕系统组成本系统由四个子模块组成:系主任管理,教师出题,学生在线选题和系统的维护。它们各自功能如下表达:(1)学生在线选题学生通过系主任录入的学生信息,姓名,学号和密码登陆系统进行查询题目并且进行选题并且可以修改自己的登陆密码。系统分配给学生4个选题项,学生可以根据自己的实际情况做出几个选择,当第一志愿未被审核,其他的就不能审核,第一志愿审核未通过自动指向第二志愿,依次类推,如果全部都没有通过学生将重新选择过程同上。学生还可以查看历届的毕业设计题目以做参考。(2)教师出题此局部主要由教师使用,教师信息由系主任录入,教师必须通过系住任给其分配的帐号,密码登陆次系统。当教师进入次系统后便由教师负责出题,并且对学生选题进行审核,并且可以查看历届题目作为参考。(3)系主任管理系主任由此批量录入学生以及教师信息并负责进行对教师所出的题目进行审核,只有审核通过的题目学生才可以进行选题,同时系主任还拥有对教师和学生帐号进行冻结的权限。(4)管理员系统管理员主要负责进行对系主任的资料录入并可以冻结。〔二〕业务流程图:图2:业务流程图5.2系统用户权限管理本系统分为4个模块,系主任管理,教师出题,学生在线选题和管理员模块。系统用户管理的根本处理流程是:1管理员权限在建立数据库时初始化数据库脚本创立,管理员登陆后可以对自身的信息进行维护,同时还可以为不同系的系主任分配帐号,以及对系主任信息进行维护。2各系主任登陆系统后可以对自身的信息进行维护,以及为本系的教师和学生创立系统用户,各系只能查看本系的相关信息。系统用户管理结构如图3:管理员管理员系主任指导老师学生分配任务认证选题管理用户信息1N1N1N图3:用户管理表由上图分析,本系统共有四种角色,所以系统在实现过程中根据用户角色判断其所拥有的权限,〔根据SQL判断〕。1)系统管理(bsm_sys_user.user_type=0)2)系主任(bsm_sys_user.user_type=1)3)指导教师(bsm_sys_user.user_type=2)4)学生(bsm_sys_user.user_type=3)5.2.1系统登陆为了保证用户信息的一致性、用户操作的方便性以及方便系统的平安模块升级和维护,该系统采用单点登陆的模式。系统主页:://:8080〔效劳器在1上〕如图4:图4:系统主页页面功能:1通知信息点击页面下方的“关于网上报毕业设计题目的通知〞可以查看网上毕业论文选题信息的相关信息。2系统用户登陆a).正确的选择用户类型、输入用户名和密码就可以进入系统用户管理信息界面。b).当输入系统不存在的帐号进行登陆时,系统将提示拒绝登陆并提示用户登陆帐号不存在。c).如果用户为学生类别,当他选择用户类型为非学生类型的其他类型时系统拒绝其登陆并显示登陆帐号和用户类型不匹配。d).当用户选择的类型正确,帐号也正确但密码错误系统将提示用户使用帐号密码错误,请核对信息后重新登陆。1注册会话信息SessioncurrentSession=request.getSession(false);currentSession=request.getSession(true);currentSession.setAttribute("userNo",userNo);//保存用户编号Attribute("userName",userName);//保存用户姓名currentSession.setAttribute("userCode",userCode);//保存用户帐号tAttribute("userType",userType);//保存用户类型currentSession.setMaxInactiveInterval(-1);//设定页面会话永不失效,直到关闭StringsessionId=currentSession.getId();currentSession.setAttribute("session_id",sessionId);StringremoteIp=request.getRemoteAddr();currentSession.setAttribute("login_ip",remoteIp);//增加用户会话LoginHome.addUserSession(userNo,sessionId,remoteIp);同时将信息增加到用户会话信息表bsm_session_info中5.2.2系统用户管理a).系统用户信息管理1.权限控制〔如图5〕只有系统管理员和系主任具有对用户信息的操作权限,其他人员没有操作权限,代码在jsp中实现:if(!(userType.equals("0")||userType.equals("1"))){thrownewDataException("对不起没有查看权限!");}系统管理员和系主任同时公用同一组界面,但在界面上对操作权限也进行了控制。实现代码:<%if(userType.equals("1")){%><inputtype="button"name="add2"value="导入"onClick="window.location.href='op_user_import.jsp'"><%}%>该功能只有系主任才能使用该功能只有系主任才能使用图5:系统用户管理界面查询——选择不同条件进行组合查询,就可以查询出相关的用户信息。增加——点击“增加〞按钮进入“增加用户〞信息界面,见图6:该功能只会在主任操作时出现,同时只有用户类型为指导教师时使用该功能只会在主任操作时出现,同时只有用户类型为指导教师时使用图6:增加用户界面增加用户操作只有两种权限拥有,一个为系统管理员,一个为系主任。管理员负责添加系主任的信息而系主任负责添加指导教师和学生的信息,当系主任添加用户时会多出一个指导学生人数选项,它是限定老师所带的学生的人数。添加成功后信息通过电子邮件的形式发送给用户,并且由系统随机生成密码。实现代码:if(myForm.user_type.value=="2") {="<inputname=\"stu_num\"type=\"text\"desType=\"NUMBER\"value=\"\"maxlength=\"2\"isNeed=\"1\"des=\"指导学生人数\"size=\"10\">人"; }if(myForm.user_type.value=="3") {="<inputname=\"stu_num\"type=\"text\"value=\"\"maxlength=\"2\"isNeed=\"\"des=\"指导学生人数\"size=\"10\"readonly>人"; }修改——管理员和系主任还拥有修改用户信息的功能,但系主任与管理员相比增加了修改老师能够指导的学生的人数的选项。邮件——可以单独给某一用户发送邮件。冻结——当系统用户的帐号到期,管理员和系主任就要对用户信息冻结。当用户进入系统时系统将提示该帐号被冻结。我们设计这系统是考虑的是冻结用户帐号而不是删除它冻结后系统将防止不必要的信息丧失。导入——当系主任输入教师学生信息时由于输入信息量太多一个一个的输入不太现实在这里我们添加了文件导入的功能。如图7:图7:导入用户信息界面5.2.3历届信息查看历届信息查看功能是对历年作过的毕业设计做的统计进行备份记载,它是为了方便教师和学生查询以做出题和选题参考,还为系主任对题目的审核提供参考。5.2.4个人信息维护当用户进入系统后可以通过点击“个人信息维护〞对自己的个人信息进行修改,可以修改密码,邮箱联系方式等个人资料,见图8:图8:个人信息维护5.3系统选题权限管理拟定——教师拟订毕业设计题目,并提交系主任审核。审核——系主任审核题目并对题目进行评定,供学生选择。选定——学生选择系主任审核过后的题目,学生可以根据个人爱好与实际情况选择第一,第二,第三和其他四个志愿等待老师审核。审批——老师根据对学生选择的题目进行审核决定学生最后的毕业论文课题。详细的设计流程图见下列图9:。〔指导教师〕〔指导教师〕(指导教师)2.审核〔系主任〕〔学生〕图9:选题权限管理图审核功能实现:系主任通过点击“审核〞对教师出的题目进行审核〔见图10〕:图10:论文题目审核管理界面进入审核页面〔见图11〕:图11:审核界面5.4教师题库管理教师作为系统的一个用户,进入系统后能进行题目的录入及修改,能对学生的选题进行审核,以及修改自己的个人信息等功能。5.4.1教师出题 教师作为系统的一个用户,他可以录入论文题目的信息。录入的题目必须经过系主任的审核后学生才能进行选择。录入如图12:图12:教师录入题目界面5.4.2教师审核题目教师审核题目是学生选择了老师的题目后,老师根据学生所选择的志愿的先后顺序来进行审核的,也就是说学生的第一志愿在未经审核或审核通过后,第二志愿的老师不能进行审核操作。如图13:图13:教师审核管理界面进入审核界面:如图14:图14:教师审核界面5.5学生在线选题学生在本系统中,可以对毕业设计题目进行增加,修改以及查看历史信息和修改个人信息等操作。如图15:可以可以增加自己的论文题目图15:毕业论文选题信息管理界面页面功能:=1\*GB2⑴查询:可以查看学生自己已经选择的论文题目。=2\*GB2⑵增加:可以增加自己的论文题目,但必须是在自己所选的题目未被老师审核的情况下。=3\*GB2⑶删除:可以删除未被老师审核的论文题目。=4\*GB2⑷修改:可以修改自己的论文题目以及志愿信息。进入增加页面:图16:毕业论文选择界面论文选择后,等待老师的审核。5.6系统登出当用户进行完他的系统操作后他就要通过点击“退出系统〞退出系统当他将退出系统后系统将自动注销session。5.7系统根本控件使用系统的数据库连接池、邮件系统和数据导入功能的实现主要是使用第三方组件进行开发,例如数据库连接池主要使用,,,邮件系统主要使用,,数据导入时,使用的文件上传的组件。5.7.1数据库连接池实现//新建连接池dataSource=newBasicDataSource();dataSource.setDriverClassName("com.microsoft.jdbc.sqlserver.SQLServerDriver");dataSource.setUrl("jdbc:microsoft:sqlserver://localhost"+":"+this.dbport+";DatabaseName="+this.dbname);dataSource.setMaxActive(200);dataSource.setMaxIdle(150);dataSource.setMaxWait(-1);dataSource.setRemoveAbandoned(true);dataSource.setRemoveAbandonedTimeout(60);dataSource.setLogAbandoned(true);dataSource.setUsername(this.username);dataSource.setPassword(this.password);/***释放数据库连接*@paramconn欲释放回连接池的连接*/PublicvoidfreeConnection(Connectionconn,StringclsName){try{if(conn!=null){conn.close();conn=null;}Stringnum=(String)connOutMap.get(clsName);if(num==null)num=String.valueOf(0);elsenum=String.valueOf(Integer.parseInt(num)+1);connOutMap.put(clsName,num);}catch(Exceptionex){ex.printStackTrace();}}5.7.2邮件系统实现核心代码:privateMimeMessagemimeMsg=null;//MIME邮件对象privateSessionsession=null;//邮件会话对象privateMultipartmp=null;//Multipart对象,邮件内容,标题,附件等内容均添加到其中后,再生成MimeMessage对象mimeMsg.setContent(mp);mimeMsg.saveChanges(
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 碳排放减少-洞察分析
- 现代医疗卫生体系的建立
- 碳酸钙材料性能优化-洞察分析
- 药物基因组学应用-第4篇-洞察分析
- 精神病焦虑症
- 新疆维吾尔自治区、生产建设兵团2019年中考生物真题试题(含解析)
- 线缆故障诊断系统开发-洞察分析
- 医疗机构管理人才梯队建设-洞察分析
- 质量管理基础知识培训课件
- 采购合同的履行与监督经验3篇
- 小学副校长教学工作总结
- 贵州省情知识考试总题库(含答案)
- 双方之间的合同约束
- GB/T 19923-2024城市污水再生利用工业用水水质
- 地球科学概论(长安大学)智慧树知到期末考试答案2024年
- 期末(试题)-2023-2024学年剑桥少儿英语一级上册
- 人教版三年级数学下册除数是一位数的除法竖式计算500道题
- 2024年其他招录考试-大学毕业生士兵提干笔试历年真题荟萃含答案
- 总裁办公室运营管理手册
- 人流手术报告单
- 推进新型工业化思考
评论
0/150
提交评论