毕业论文选题系统设计与实现-毕业论文_第1页
毕业论文选题系统设计与实现-毕业论文_第2页
毕业论文选题系统设计与实现-毕业论文_第3页
毕业论文选题系统设计与实现-毕业论文_第4页
毕业论文选题系统设计与实现-毕业论文_第5页
免费预览已结束,剩余43页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

毕业论文选题系统设计与实现摘 要 毕业设计 (论文)是教学计划的重要组成部分,是实现培养目标要求的重要阶段,也是进行人才培养教育的最后一个重要的综合性实践教学环节。因此,做好毕业设计(论文)工作,对于全面提高教学质量具有重要的意义。而其中的一个环节就是毕业生选题的问题,这个环节也是毕业设计中最开始和最关键的,传统的方式:指导教师以书面形式向院系提交毕业设计题目及其要求,然后院系将做毕业设计的学生分配给指导老师。这种方式基本上符合流程,但这样的做法一方面限制了学生的兴趣和特长的发挥,另一方面导师和学生之间的沟通也是比较麻烦的。因此提供一个毕业生选题系统是十分必要的。针对目前本科毕业论文参与人数多、协作性强等特点,构建了一个基于Web的毕业论文选题系统。本系统采用SQL Server 2005+ASP.NET+Javascript进行开发,实现了选题信息的发布、学生对选题的预选、老师进行正选等功能,解决毕业生选题困难,管理选题困难等等问题,同时方便老师与学生进行选题管理。关键词 毕业选题系统 教学管理 信息系统Theme Management System Design And ImplementAbstractThesis management system is an important component of the plan is to achieve training objectives and requirements of the important stage, but also for personnel training and education of a final comprehensive practice of teaching. Therefore, to graduate design (Thesis), to comprehensively improve the quality of teaching is of great significance. Which is a part of the problem of graduates of theme, this session is also graduating from the start and the design of the most critical, the traditional way: the instructor in writing to the faculty and subject to the graduation requirements of the design, and then the Department will do Design graduate students allocated to the instructor. This is basically the process, but such an approach on the one hand limits the students interest and expertise to play, on the other instructors and students is communication between the relatively trouble. For more graduates to provide a thesis system is very necessary. View of the current participation in the number of undergraduate theses, collaborative, and other characteristics, building a Web based system dissertation topics. The system uses SQL Server 2005 , ASP.NET, javascript to develop and achieve the release of the information topics, topics of the pre-selection of students, teachers and other election functions are carried out to address difficult topics graduates, management difficulties topics Problems and facilitate teachers and students in management topics.Keywords Thesis System Teaching Management Information System目 录第一章 绪论11.1课题背景及建设意义11.2主要研究内容21.3本文结构3第二章 毕业论文选题系统的设计42.1 需求分析42.2总体设计42.2.1系统架构42.2.2用例图62.2.3数据库设计82.3 模块设计102.3.1预选及退选模块102.3.2定选流程模块132.3.3发布选题模块152.3.4学生与老师互动模块162.3.5管理选题模块162.3.6搜索模块182.3.7用户相关模块192.3.8文档相关模块192.3.9选题统计模块212.3.10系统主页面模块212.4 关键应用技术222.4.1会话信息传递222.4.2 事务处理232.4.3 异步模式 XMLHttpRequest对象232.4.4DIV+CSS web标准24第三章 毕业论文选题系统的实现263.1 系统建设及运行环境263.2 系统实现界面展示283.2.1 登录页面293.2.2 系统主页面293.2.3 指导老师列表303.2.4 指导老师详细表303.2.5 个人选题情况页面313.2.6 学生个人信息页面333.2.7 指导老师个人信息页面333.2.8发布选题353.2.9 管理选题353.2.10 添加用户363.2.11 管理用户373.2.12 上传文档38第四章 总结与展望39致谢语40参考文献4142 ContentsChapter 1 Introduction11.1System Background And Significance11.2Papers Main Content21.3Papers Main Chapters Arrangements3Chapter 2 Theme Management System Design42.1 Requirements Analysis42.2 Theme Management Sytem Overall Design42.2.1System Architecture Structure42.2.2Use Case Figure62.2.3Database Design82.3 Module Design102.3.1Choose And Unchoose Module102.3.2Make Sure Choose Module132.3.3Published Theme Module152.3.4Student And Teacher Module162.3.5Manage Theme Module162.3.6Search Module182.3.7About User Module192.3.8About User Module192.3.9Statistics Module212.3.10HomePage Module212.4 Key Issues Discuss222.4.1 Session222.4.2 Transaction232.4.3 XMLHttpRequest Object232.4.4DIV+CSS Web Standard24Chapter 3 Theme Mangagement System Implement263.1 System Design And Run Eviroment263.2 System Implement Interface Show283.2.1 Log-In Page293.2.2 System Homepage293.2.3 Teacher List303.2.4 Teacher Details List303.2.5 Personal Theme Page313.2.6 Student Profile Page333.2.7 Teacher Profile Page333.2.8 Release Theme353.2.9 Manage Theme353.2.10 Add User363.2.11 Manage User373.2.12 Upload Document38Chapter 4 Conclusions and Future Work39Acknowledgements40References41厦门大学本科毕业论文第一章 绪论1.1 课题背景及建设意义大学毕业生选题系统是一个学校,尤其是大学校园里不可缺少的部分。它能够满足不同特点的学生对课题的不同要求,有利于发挥学生的特点,让学生根据自己的实际爱好,按要求自由选择论文课题,让水平比较高的学生选择难度大一些的课题,水平较高的学生有充分发挥才能的空间,让水平不是特别高的学生选择适合自己的难度适当的题目。通过选择课题,使各类学生的知识水平、实践潜力都得到充分调动,解决问题的潜力得到充分发挥。而且能够充分利用各种教育资源,建立,优化课题组织结构,调动教师与学生教和学的积极性,进一步提高毕业生的质量,提高办学水平,具有十分重要的作用。但一直以来,人们使用传统人工的方式进行管理论文选题,这种管理方式存在着许多缺点,如:效率低、容易出错,实时性和互动性不强,这对于提高办公效率以及指导教师和学生的便捷性都有很大的帮助。另一方面给指导老师也带来了诸多的麻烦:由于其学生对该领域并不熟悉或者毫无兴趣,给指导工作必然增加了较大的阻力和额外的劳动,其辛辛苦苦准备的课题也将无法开展。为此,改变传统的分配毕业设计任务模式,变“学生被动去做”为“主动去做”,双向选择已是迫在眉睫。而基于WEB的毕业设计选题系统则无疑为开展毕业设计工作提供了极大的方便。随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能己为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。作为计算机应用的一部分,使用计算机对课题信息进行管理,具有人工管理所无法比拟的优点例如:操作方便,使用简单,自主性强等。这些优点能够极大地提高学校毕业论文课题管理的质量,进一步提高办学水平和办学效率,有利于贯彻“以人为本”的教育原则,适应当今时代对高等教育的客观要求,培养出更多一专多能的毕业生。目前国内很多高校都纷纷建立了毕业设计选题系统,很多学校开始投入使用,并且都取得了不错的效果。但基本上都是静态的页面添加,一旦毕业设计课题增多,给管理人员的维护工作来了极大的不便因此需要建立一个动态增加,删除选题的管理系统,可以为教学工作节省很多资源,也方便了毕业生工作的开展,把毕业生毕业设计的工作搞得更有条理,有效率。1.2 主要研究内容毕业论文选题过程一般分为几轮,每轮包括3步:首先老师将整理的论文题目及任务书发布给学生;然后学生从中预选自己感兴趣的论文题目;进而老师对预选了本人发布选题的学生进行正选。如果一轮选题过后仍有学生未被正选,则将进入下一轮。随着近年来本科毕业论文参与人数的增多以及分工协作的加强,如何通过学生与老师之间的双向选择合理高效地进行选题,成为毕业论文工作面临的一个难题。一个可行的解决思路就是依托校园网,构建基于Web的毕业论文选题系统。与其他教务管理软件相比,本文所介绍的毕业论文选题系统更注重对信息的并发控制和实时处理。一方面,选题信息发布(或修改、删除)、学生预选(或退选)以及老师正选等更新操作能够同时进行、相互制约。另一方面,更新后的信息能及时反馈给所有的登录用户,为其进一步操作提供参考。此外,管理员能够及时获取最新的选题统计信息,以便对各个选题环节进行监控。该系统主要针对三类角色一种是学生,能够通过这个系统来选择自己感兴趣的毕业课题,了解各名导师的擅长,并管理个人的信息,提交各类文档(开题报告,任务制作及毕业论文);一种是老师,能够通过这个系统来添加选题,管理各选题,定选自己所属课题下的学生,指导学生做毕业设计,浏览学生提交的各种文档,打印文档。;一种是管理员,能够通过该系统管理选题(添加,删除选题),上传文档,打印文档。总体上看,本系统基本上实现毕业生选题系统的基本功能。如:1. 实现网上选题(多选)2. 选题信息查询3. 指导老师的介绍4. 课题具体信息的展示5. 网上提交开题报告,任务书6. 提交毕业论文7. 教师网上审核开题报告和任务书8. 教师管理题目9. 查看学生选题情况1.3 本文结构第一章为绪论。描述了系统的建设目的和意义及系统的基本简介。第二章为毕业论文选题系统设计。分为三个模块进行分析,其中需求分析具体分析了开发本系统的具体需求,也就是为什么开发本系统。总体设计则从系统基本节构,用例图等方面具体分析了一翻。详细设计从系统的具体模块出发,详细分析了系统各主要功能模块。最后还介绍了本系统的关键应用技术的研究。第三章为毕业论文选题系统的实现。系统的运行结果,抓图并简要介绍相关功能。第四章为总结与展望。总结了开发本系统的技术与心得集以及展望未来。第二章 毕业论文选题系统的设计2.1 需求分析本节从可行性分析和功能需求分析以及性能需求三方面详细分析了毕业论文选题系统的主要需求。(一)可行性分析经济可行性分析:每年学校在毕业生选题花费了大量了人力与物力,不仅没有取得特别显著的成效,管理选题也是比较麻烦。对毕业生的选题进行装订的人工存储,不但费时费力,同时也给查询带来不便,管理起来也是十分麻烦。而本系统采用B/S架构,能十分方便让老师与学生在网上选题和管理选题,达到了事半功倍的效果。技术可行性分析:在本系统中,我采用了ASP.NET+JavaScript+SQL Server 2005 作为开发工具,并采用了B/S模式。同时使用AJAX异步传输方式来减少页面的刷新次数。(二)功能需求分析系统的功能主要分为前台与后台:前台主要划分为:预选与退选模块,定选模块,用户登录模块,指导老师介绍模块,下载文档模块,选题统计模块。后台主要划分为:发布选题模块,管理选题模块,用户信息管理模块,上传文档模块等。(三)性能需求分析由于是基于web系统对硬件没有特别要求,系统的适应性比较好。2.2总体设计本节从系统架构和用例图及数据库设计等方面来分析毕业论文选题系统人总体设计。2.2.1 系统架构本系统采用了web常用的三层结构,使项目结构更清楚,分工更明确,有利于后期的维护和升级三层结构包含:表示层(USL),业务逻辑层(BLL),数据访问层(DAL)。1. 数据访问层:主要是对原始数据(数据库或者文本文件等存放数据的形式)的操作层,而不是指原始数据,也就是说,是对数据的操作,而不是数据库,具体为业务逻辑层或表示层提供数据服务,如增加、删除、修改、查询选题。2. 业务逻辑层:主要是针对具体的问题的操作,也可以理解成对数据层的操作,对数据业务逻辑处理,如果说数据层是积木,那逻辑层就是对这些积木的搭建,如选题定选,选题管理等。3. 页面表示层:主要表示WEB方式,也可以表示成WINFORM方式,WEB方式也可以表现成 .aspx, 如果逻辑层相当强大和完善,无论表现层如何定义和更改,逻辑层都能完善地 提供服务,如显示选题查询信息等。除此之外,还可能具有其他的层次。特别是在业务逻辑层,常常需要根据实际情况增加层次,但总的原则是:每一层次都完成相对独立的系统功能,在开发过程中,需要在逻辑上清晰这三层分别实现的功能,并以此设计整个系统的实现,以及管理整个系统的代码文件。不能把处于不同层次的文件混为一起,否则会造成系统逻辑上的混乱,使庞大的系统难于管理和维护,容易导致系统的失败。采用三层架构有许多好处,首先,最重要的是应该有多个视图对应一个模型的能力。在目前用户需求的快速变化下,可能有多种方式访问应用的要求。采用MVC的设计模式可以减少了代码的复制,即减少了代码的维护量,一旦模型发生改变,也易于维护。 其次,由于模型返回的数据不带任何显示格式,因而这些模型也可直接应用于接口的使用。再次,由于一个应用被分离为三层,因此有时改变其中的一层就能满足应用的改变。一个应用的业务流程或者业务规则的改变只需改动MVC的模型层。 控制层的概念也很有效,由于它把不同的模型和不同的视图组合在一起完成不同的请求,因此,控制层可以说是包含了用户请求权限的概念。 最后,它还有利于软件工程化管理。由于不同的层各司其职,每一层不同的应用具有某些相同的特征,有利于通过工程化、工具化产生管理程序代码。图3-1 Web设计三层结构2.2.2 用例图该的系统的总体的功能由管理员,指导老师,学生三个角色的功能组成。每个角色都有自己的侧重点,管理员侧重于管理用户及选题,指导老师侧重于定选及审核报告,学生侧重于选题及提交报告。通以下三张用例图就可以大概了解本系统所具有的主要功能。下面从这三种角色出发分析各自的用例图。图32 主要描述了管理员相关的操作,管理员可以管理用户,录入选题,管理选题,添加用户,但这些都建立在登录的基础上。图3-2 管理员相关的用例图 图33主要描述了指导老师相关的操作,指导老师在登录之后可以进行管理选题,定选自己指导的选题并留下指导记录,同时可以查询选题情况和审核报告。图3-3 指导老师相关的用例图图34主要描述了学生相关的操作,学生再登录之后可以进行选题,选题查询以及提交文档,如:开提报告,毕业论文等。还可以管理个人信息。图3-4 学生相关的用例图2.2.3 数据库设计系统的功能结构主要针对系统的重要功能,围绕着选题和三个角色展开,主要包括以下5个部分:1. 老师登录后,能够发布新的选题;2. 学生登录后,能够对已发布的选题进行预选,也能退选已预选的选题;3. 老师登录后,还能对已预选本人发布选题的学生进行正选;4. 管理员登录后,能够对被正选的学生进行退选;5. 管理员登录后,还能获取最新的选题统计报表。上述功能的实现分别需要访问数据库中不同的数据表,主要包括选题信息表、用户信息表(学生,老师,管理员)、预选信息表、定选信息表等。同时也通过相应数据表实现各种操作之间的协调与制约,主要体现在以下几方面:1. 每个老师可发布多个选题,不能删除已被预选的选题; 2. 每个选题可同时被多个学生预选,每个学生可同时预选多个选题; 3. 每个选题的正选人数不能超过限选人数;4. 学生被正选之后,已预选的其他选题将被自动退选;5. 只能由管理员退选已被正选的学生。表3-1 选题表(Itheme)数据表字段名字段类型描述IThemeIIDbigint选题IDSThemeNameNvarchar(50)选题名称IAllowint额定人数IOwnedint实报人数ITeacherIDNvarchar(50)指导老师的IDSTeacherNameNvarchar(50)指导老师的名字SdirectionNvarchar(50)选题方向STypeNvarchar(50)院系ItypeNvarchar(50)选题的类型IpropertyNvarchar(50)选题性质SoriginNvarchar(30)选题来源Iselectedint是否已经定选了DCreateTimedatetime建立选题的时间表3-2 预选表(Theme_Now)数据表字段名字段类型描述Theme_Now(预选)IstudentIDbigint学生IDIThemeIDbigint选题ID表3-3 定选表(Theme_Final)数据表字段名字段类型描述Theme_Final(定选)IstudentIDbigint学生IDIThemeIDbigint选题ID表3-4 用户信息表(学生,老师,管理员)数据表字段名字段类型描述IUserIIDBigint自动生成ID号sUserIDNvarchar(50)学号sUserNameNvarchar(50)用户名sPasswordNvarchar(50)用户密码IroleInt用户的角色1-学生,2-老师,3-管理员IthemeIDBigint学生最终的选题IDIreportInt是否提交了开题报告 1-提交了,0-未提交,默认为0ItaskInt是否提交了任务书,1-提交了 0-末提交,默认为0IthesisInt是否提交了毕业论文,1-提交了 0-末提交,默认为0sTypeNvarchar(50)用户的院系sGradeNvarchar(50)年级ItheacherBigint指导老师如果是学生DcreateTimedatetimeSevaluationNvarchar(100)针对老师(职称)SdescriptionNvarchar(1000)针对老师(擅长)2.3 模块设计本节主要分析了本系统的各个主要模块,侧重分析了预选,退选和定选模块。2.3.1 预选及退选模块本课题最重要的一个流程就是学生选题,选题流程因人而异,每个人可能都有自己选题的要求,而选择一个适合自己的选题是十分重要的。选题可以根据选题类型,选题性质,选题来源,选题难度,不同导师来划分,学生可以根据自己的侧重点来选择符合自己的选题,能让自己充分发挥才能的选题。发布的选题信息将以列表的形式供学生进行预选或退选。为了提高程序的可维护性,系统设定学生一次只能从选题列表中预选或退选一个选题。同时通过参数配置,限制一个学生能够预选选题的总数不能超过2个。预选(或退选)过程主要包括4步:1学生在选题列表中选取需要预选(或退选)选题; 2系统通过查询预选信息表,确认该学生未(或已)预选该选题;3查询学生目前的预选数量,不能超过2个课题;4查询学生是否已经定选了,如果定选就不需要再预选了。5对预选信息表中预选记录进行添加(或删除);6对选题信息表中对应记录的“预选人数”属性加(或减)1。图3-5 预选流程图3-6 预选界面图37 ,图38为退选流程和退选界面,查看自己的选题列表,然后退选选题,可以时预选的选题也可以时定选的选题图3-7 退选流程图3-8退选界面2.3.2 定选流程模块本系统另外一个重要的流程就是对学生的预选进行定选,定选一般是由相应的指导老师进行定,也可以系统进行随机定选(最好不要采用)。同样,预选了某一选题的学生也将以列表的形式供老师进行定选。系统设定老师一次只能从预选某一选题的学生列表中正选一个学生。定选过程比较复杂,一般包括以下几步: 1老师在未选满的选题的预选学生列表中选取需要定选的学生;2系统通过查询预选信息表,确认该学生已预选该选题3通过查询选题信息表,确认该选题未被选满,同时获取该选题的“额定人数”和“预选人数”等参数;4将预选信息表中相应预选记录复制到定选信息表中;5对选题信息表中相应记录的“定选人数”属性加1; 6然后依次删除预选信息表中被定选学生所有的预选记录,同时对选题信息表中相应记录的“预选人数”属性减1,从而自动退选该学生预选的其他选题;7最后根据步骤3中获取的参数,判断该选题正选人数是否达到额定人数,同时修改选题信息表中相应记录的“是否选满”属性,以便为其他用户的选题操作提供参考。 图39具体描述了指导老师再定选相应课题时的整个流程。首先指导老师登录系统,然后进入个人信息页面,从中查看是否有需要定选的课题,如果有则从中选择一个查看选题详细信息,接着再相应的定选位置选择要定选的学生。如果有学生定选,则要修改相应学生的预选信息。图3-9 定选流程图310就是指导老师定选的详细页面,指导老师在进入个人信息页面之后就可以看到需要定选的信息。只要根据提示的要求就可以定选对应的学生,但不能超过额定人数。超过就会提示出错,同时一定要按要求输入以“:”分隔的字符,不然就会出现错误,不能定选成功。图3-10 定选界面2.3.3 发布选题模块选题信息的发布可以由指导老师来操作也可以由管理员来操作,学生也可以通过向老师推荐选题的方式来间接发布选题。发布选题一般包括以下2个步骤: 1 将以Word文档形式上传到Web服务器,以方便用户下载和查阅;2 将通过浏览器手工输入的选题名称、限选人数、备注等信息提交到选题信息表中,以方便用户浏览。为了便于对选题信息的管理,选题信息表中的“选题编号”字段采用auto_increment编号机制1,并根据该编号对上传的Word文档进行重命名;此外,还将初始化“额定人数”、“预选人数”、“是否选满”等字段的属性。 由于为了方便学生对课题的了解增加了一个对课题进行描述的字段和一个对指导老师进行简介的字段。图311为发布选题的页面,通过发布选题来增加学生选题机会。增加选题的步骤:输入课题名,选择导师,输入额定人数及选题简介然后提交。图3-11 发布选题页面2.3.4 学生与老师互动模块学生通过登录这个系统能够选择自己的合适的选题,能够了解各个老师的基本情况,能够上传自己的开题报告,任务书,毕业论文等文档。而且能够得到指导老师对自己的文档和选题的回馈。指导老师登录这个系统能够对自己指导的选题进行定选和管理,也能对自己指导的学生的文档进行批改,回复,以达到学生与老师之间的互动。学生与老师之间的信息往来是系统灵活的一方面,也要减少了现实中沟通难的问题。并且能够及时的得到反馈。2.3.5 管理选题模块选题信息发布后,我们可能要对选题进行管理,比如:更新或修改。这个功能可以由管理员和老师来执行,其中他们的权限也是不一样的,管理员可以修改所有的选题,而老师只能修改自己对应的选题,不能修改其它老师上传的选题。并且老师不能删除已经有人预选或者定选的选题,但管理员有这种权限,但需要通知相应的老师与学生(通过公告)。图212是管理选题模块的流程图,管理选题可以是老师也可以是管理员。可以通过查询选题,查看选题的详细信息,同时修改相应的选题信息。但是指导老师不能删除选题,只有管理员才能删除选题。删除选题还必需具备一个条件:没有任何学生已经预选或定选了该课题。图3-12 管理选题流程图213就是修改选题的页面,只要点击查看选题详细信息,就可以修改选题。修该选题时选题名称不可为空,额定人数不可为空或小于零。图3-13 管理选题页面2.3.6 搜索模块由于选题的数量不断的增加,系统的数据量越来越大,或者你不能完全记住自己想要的选题,而又想快速的获得相关的信息,你可以通过搜索功能来实现自己的想法,本系统提供了基本的查询,也提供了高级查询不仅能够通过选题名来搜索,也能够通过相应的指导老师来搜索,还可以通过选题的方向,分类等来查询,也可以直接进行关键字查询。图3-14通过选题名查询的结果2.3.7 用户相关模块与用户有关的操作有登录模块,添加用户模块,用户管理模块,管理用户模块等。其中登录模块设计成只有学校的学生,拥有学校的学号和密码的人才能登录,系统并没有提供任何与注册相关的功能。添加用户模块只有管理员才具有的权限,管理员一般通过设置用户名和密码(一般都是学号)来硬性添加用户。用户管理模块是针对用户自己,用户可以更改自己的密码,防止信息泄露。而管理用户则是管理员才有的权限,管理可以添加,修改或删除某一个用户。2.3.8 文档相关模块与文档相关的有学生上传开题报告文档,任务书文档,毕业论文文档,指导老师或管理员上传的选题列表和下载文档模块。通过这些文档能够比较方便地建立起学生与指导老师之间信息的沟通,减少了提交书面报告的次数,节省了许多资源。文档处理的流程一般分为以下3步:1. 学生上传相关文档(报告文档,任务书,毕业论文)2. 对应指导老师审核文档,并给予相关评论。3. 学生下载指导老师审核过的文档,审核不通过的重新提交。通过了,打印文档成为正式纸质文档。图3-15 文档流程图3-16上传文档页面2.3.9 选题统计模块毕业论文选题的最终统计报表一般包括学生基本信息(学号、姓名、专业等)和选题基本信息(名称、指导老师工号、姓名等),并以学生的专业和学号进行排序。因此需要对学生信息表、选题信息表和定选信息表进行多表连接查询。通过统计报表能够清晰地了解到目前学生选题情况,也可以了解到学生对各类型选题的偏爱情况。能够针对学生的特点,添加相关的选题。这样能够达到间接了解学生的情况。选题的统计能在现实中起很大的作用,也能够方便各学生之间对课题。2.3.10 系统主页面模块图3-17 系统主页面主页基本展示系统的功能,能够选题,能够通过关键字来搜索,能查看指导老师的信息,能够通过主页完成系统的大部分功能,并且提交了指导老师指导选题的排行及最近新增加选题的列表,而且可以在主页下载到最新上传的毕业设计相关的文档。最主要的是能够查看各种方向的选题,选题大致分为工程系,应用系,信息安全系,实验室,科学系等,每一个分类都具有各自己的特色,学生可以根据自己的需要和兴趣选择自己喜欢的课题。还有在主页可以很方便的定位到其他相关的页面,比如个人信息管理页面,个人选题情况分析等。还可以获得指导老师的列表,根据指导老师进行选题,选择自己喜欢的老师也是做好毕设的一大关键。主页还有其他的功能比如主页上的后台管理的入口,主页可以了解到最新的选题动态。2.4 关键应用技术本节主要分析了开发毕业选题系统用到的一些关键的技术。这些技术是支持系统运行的重要条件,比如:会话信息传递是用户浏览本系统发起的一个对话,会话中保留着用户的许多信息。2.4.1会话信息传递会话(Session)是指用户通过客户端浏览器对网站开始访问,到离开该网站所经历的过程3。在Web应用程序中,会话实际上提供了一种在连续网页访问中通过变量传递信息的方法。通过该方法系统能够实现以下几方面需求:1.对用户选题操作进行有效的权限限制和状态提示。例如,老师登录系统后,系统将根据会话中保存的“工号”变量查询选题信息表,生成仅针对其本人发布选题的正选操作页面,同时统计出“定选学生总数”等状态提示信息。 2.保存用户的基本信息,根据不同的用户信息提取出不同的选题,及已选的选题信息。方便各用户对自己相应的功能进行操作。 3.保存用户信息以备用户修改个人相关信息。2.4.2 事务处理事务(Transaction)是对数据库进行操作的一组完整的执行单元,即或者全部执行成功,或者全部不执行,并且在执行期间自动完成对相关数据表的锁定24。在应用程序中引入事务处理机制,能够有效地防止由于某个SQL语句执行失败而造成的数据库操作前后状态的不一致,以及从根本上避免多用户(包括同一用户通过不同浏览器重复登录)并发操作数据库时可能存在的相互干扰。 例如,系统将前文所述学生退选过程中的步骤24以及老师正选过程中的步骤27分别组成一个事务。这些事务首先都需要查询预选信息表并对该表进行锁定(查询语句为:select * from Thesis_now as TN where TN.Thesis_id = $Thesis_id and TN.Student_id = $Student_id for update),从而保证了不同用户相关事务操作的依次进行,避免了多个老师同时正选了一个学生、被正选的学生同时退选了相应选题等情况的发生。 2.4.3 异步模式 XMLHttpRequest对象通过Ajax可以使Web页面不用打断交互流程进行重新加裁,就可以动态地更新。快速获得所需要更新信息的部分,而不用全部更新,获得了十分好用户体验。实现这个特性与一个对象分不开:XMLHttpRequest对象。首先我们需要用JavaScript来创建XMLHttpRequest类向服务器发送一个HTTP请求, XMLHttpRequest 类首先由Internet Explorer以ActiveX对象引入,被称为XMLHTTP。后来MozillaNetscapeSafari 和其他浏览器也提供了XMLHttpRequest类,不过它们创建XMLHttpRequest类的方法不同。具体的创建方法如下:function getXMLRequester( ) var xmlhttp_request = false;try if( window.ActiveXObject ) for( var i = 5; i; i- )try if( i = 2 ) xmlhttp_request = new ActiveXObject( Microsoft.XMLHTTP );elsexmlhttp_request = new ActiveXObject( Msxml2.XMLHTTP. + i + .0 ); xmlhttp_request.setRequestHeader(Content-Type,text/xml);xmlhttp_request.setRequestHeader(Content-Type,gb2312); break; catch(e) xmlhttp_request = false; else if( window.XMLHttpRequest ) xmlhttp_request = new XMLHttpRequest();if (xmlhttp_request.overrideMimeType) xmlhttp_request.overrideMimeType(text/xml); catch(e) xmlhttp_request = false; return xmlhttp_request ; 通过异步模式,我们查看选题列表时点击连接可以直接在页面右侧查看选题的详细信息和相关指导老师的详细介绍。而不用在刷新页面或打开另外一个页面。2.4.4 DIV+CSS web标准web标准并不是标准,它只是W3C制定的推荐规范,W3C并没有强制要求和监督业界去执行。web标准组织()为了便于这些规范的推广,才把它们统称为“web标准”。虽然W3C制定的只是“推荐规范”,但它已经是事实上的标准,世界前500家大IT企业会员都认可的规范,你没有理由怀疑它的广泛性和可行性。微软也是W3C的主要会员,它自己通过的规范一定会支持,但出于商业竞争的考虑,微软通常都会做一些细节调整来绑定用户,但这并不影响W3C规范的方向性和权威性。DIV+CSS只是具体的实现技术手段,并不能涵盖web标准。web标准不仅仅是HTML向XHTML的转换,更重要的是信息结构清晰、内容与表现相分离,而DIV+CSS技术能较好的实现这种思想。因此,我们看到的多数符合标准的页面都是采用DIV+CSS制作。提到CSS我们不能不提到CSS的一个很著名的模型:盒式模型。图4-1 CSS 盒式模型CSS盒式模型表示的每个对象,结构上由content(内容)、padding(填充)、border(边框)、margin(空白边)组成。盒式模型还有两个应用于content和padding上的background属性,它们是background-image(背景图片)和background-color(背景色)。margin是透明的,一般使用它控制元素之间的间隔。web标准的好处之一是:用web标准制作的页面代码量小,可以节省带宽。因为DIV的结构本身就比TABLE简单,TABLE布局的层层嵌套造成代码臃肿,文件尺寸膨胀。Web标准的另一个好处就是方便残障人士网络浏览。由于web标准页面的清晰结构、语义完整,一些相关设备能很容易的正确提取信息给残障人士。第三章 毕业论文选题系统的实现3.1 系统建设及运行环境(一) 开发平台:.NET平台 .NET 平台包含广泛的产品系列,它们都是基于 XML 和 Internet 行业标准构建,提供从开发、管理、使用到体验 XML Web 服务的每一方面。(二) 开发工具:Visual studio 2005Visual Studio 是微软公司推出的开发环境。是目前最流行的 Windows 平台应用程序开发环境。目前已经开发到Visual Studio 2008。 Visual Studio 可以用来创建 Windows 平台下的 Windows 应用程序和网络应用程序,也可以用来创建网络服务、智能设备应用程序和 Office 插件。说到VS 2005 不得不说到NET 的通用语言框架机制(Common Language Runtime, CLR),其目的是在同一个项目中支持不同的语言所开发的组件。所有 CLR 支持的代码都会被解释成为 CLR 可执行的机器代码然后运行。这也是.NET平台下支持多语言的本质原因。我们在.NET 平台下不仅能够运用C#语言还可以使用VB,VC,VJ,还有其它语言,甚至混合使用都没有问题。这也是.NET的强大之处。图2-1 .NET 框架VS 2005与VS 2003比,多了好多新的特性,比如:Partial、泛型等。这些新特性使得在这个平台下编程变得更加方便,人性化,效率也提高了很多。(三)数据库工具:SQL Server 2005:同时有了SQL Server 2005,组织内用户和IT专家将从减少应用程序宕机时间、提高可伸缩性及性能、更紧密安全控制中获益。SQL Server 2005 也包括了很多新和改进功能来帮助企业IT团队更有效率工作。SQL Server 2005在易管理,可用性,可伸缩性,安全性等方面有大的改善。1、易管理,SQL Server 2005 能够更为简单部署、管理和优化企业数据和分析应用程序。作为一个企业数据管理平台,SQL Server 2005提供了一个唯一管理控制台,使得数据管理人员能够在组织内任何地方监视、管理和调谐企业中所有数据库和相关服务。SQL Server 2005 通过提供一个集成管理控制台来管理和监视SQL Server关系型数据库、集成服务、分析服务、报表服务、通知服务、以及分布式服务器和数据库上SQL Mobile,从而大大简化了管理复杂度。SQL 管理对象 (SMO) 是一个新可编程对象集,它可实现所有SQL Server数据库管理功能。2、可用性,在高可用技术、额外备份和恢复功能,以及复制增强上投资使企业能够构建和部署高可用应用系统。SQL Server 2005在高可用上创新有:数据镜像,故障转移集群,数据库快照和增强联机操作,这有助于最小化宕机时间和确保企业关键系统可用。3、可伸缩性,提供了诸如表分区、快照隔离、64位支持等方面高级可伸缩性功能,使你能够使用SQL Server 2005构建和部署最关键应用。表和索引分区功能显著增强了对大型数据库查询性能。4、安全性,SQL Server 2005 在数据库平台安全模型上有了显著增强,由于提供了更为精确和灵活控制,数据安全更为严格。为了给企业数据提供更高级别安全,微软做了相当多投资,实现了很多特性:在认证空间里强制SQL Server login密码策略;在认证空间里可根据不同范围上指定权限来提供更细粒度;在安全管理空间中允许分离所有者和模式(schema)。(四)开发技术:JavaScript,HTML,AJAX首先:JavaScript是个脚本编程语言,支持Web应用程序的客户端和服务器端构件的开发.在客户端,它用於编写Web浏览器在Web页面上下文中执行的程序,在服务器端,它可用於编写用於处理Web浏览器提交的信息并相应地更新浏览器显示的页面。JavaScript 使网页增加互动性。JavaScript 使有规律地重复的HTML文段简化,减少下载时间。JavaScript 能及时响应用户的操作,对提交表单做即时的检查,无需浪费时间交由ASP.NET验证。JavaScript 的特点是无穷无尽的,只要你有创意。本系统中使用了AJAX主要就是由JavaScript来提供客户端与服务端之间的通信。由JavaScript发送请求并使用JavaScript注

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论