赞
踩
文末获取源码
开发语言:Java
使用框架:spring boot
前端技术:JavaScript、Vue 、css3
开发工具:IDEA/MyEclipse/Eclipse、Visual Studio Code
数据库:MySQL 5.7/8.0
数据库管理工具:phpstudy/Navicat
JDK版本:jdk1.8
Maven:apache-maven 3.8.1-bin
随着Internet的发展,以网络为支撑的论文管理系统不但可以让学生随时随地提交论文,老师也可以通过电脑或者移动终端随时随地下载论文,对论文进行审核,有关单位部门的工作人员和导师也能随时获取相关信息进行毕业生论文的管理工作,相较于传统手工方式管理毕业生的论文,这种方式大大提高了学校教育管理的工作效率。如何把论文管理工作转移到基于网络的毕业论文管理系统上,保证论文管理合理、简化评审专家工作、系统高效稳定是目前各大高校研究的热门,为此本文设计并实现了一套毕业论文管理系统。
本系统采用了Java技术,将所有业务模块采用以浏览器交互的模式,选择MySQL作为系统的数据库,开发工具选择My eclipse来进行系统的设计。基本实现了毕业论文管理系统 应有的主要功能模块,本系统有管理员、导师用户、学生用户。管理员:首页、个人资料(个人信息、修改密码)、公共信息管理、轮播图)、系统用户(管理员、导师用户、学生用户)、资源管理(校园资讯、资讯分类)、模块管理(论文题目、论文文档、论文指导、论文成绩、导师答疑、评审答辩)。学生用户;首页、公告信息、校园资讯、论文题目、我的。导师:后台首页、模块管理(论文题目、论文文档、论文指导、论文成绩、导师答疑、评审答辩)等。
对系统进行测试后,改善了程序逻辑和代码。同时确保系统中所有的程序都能正常运行,所有的功能都能操作,并且该系统有很好的操作体验,实现了对于毕业论文管理系统对用户管理、政府部门双赢。
本系统前端框架采用了比较流行的渐进式JavaScript框架Vue.js。使用Vue-Router和Vuex实现动态路由和全局状态管理,Ajax实现前后端通信,Element UI组件库使页面快速成型。后端部分:采用springboot作为开发框架,同时集成MyBatis、Redis等相关技术。
MVVM是Model-View-ViewModel的简写。它本质上就是MVC 的改进版。MVVM 就是将其中的View 的状态和行为抽象化,让我们将视图 UI 和业务逻辑分开。当然这些事 ViewModel 已经帮我们做了,它可以取出 Model 的数据同时帮忙处理 View 中由于需要展示内容而涉及的业务逻辑。微软的WPF带来了新的技术体验,如Silverlight、音频、视频、3D、动画……,这导致了软件UI层更加细节化、可定制化。同时,在技术层面,WPF也带来了 诸如Binding、Dependency Property、Routed Events、Command、DataTemplate、ControlTemplate等新特性。MVVM(Model-View-ViewModel)框架的由来便是MVP(Model-View-Presenter)模式与WPF结合的应用方式时发展演变过来的一种新型架构框架。它立足于原有MVP框架并且把WPF的新特性糅合进去,以应对客户日益复杂的需求变化。
科技的进步,给日常带来许多便利:教室的投影器用到了虚拟成像技术,数码相机用到了光电检测技术,比如超市货物进出库的记录需要一个信息仓库。这个信息仓库就是数据库,而这次的毕业论文管理系统 也需要这项技术的支持。
用MySQL这个软件,是因为它能接受多个使用者访问,而且里面存在Archive等。它会先把数据进行分类,然后分别保存在表里,这样的特别操作就会提高数据管理系统自身的速度,让数据库能被灵活运用。MySQL的代码是公开的,而且允许别人二次编译升级。这个特点能够降低使用者的成本,再搭配合适的软件后形成一个良好的网站系统。虽然它有缺点,但是综合各方面来说,它是使用者的主流运用的对象。
B/S(Browser/Server)比前身架构更为省事的架构。它借助Web server完成数据的传递交流。只需要下载浏览器作为客户端,那么工作就达到“瘦身”效果, 不需要考虑不停装软件的问题[9]。
Spring框架是Java平台上的一种开源应用框架,提供具有控制反转特性的容器。尽管Spring框架自身对编程模型没有限制,但其在Java应用中的频繁使用让它备受青睐,以至于后来让它作为EJB(EnterpriseJavaBeans)模型的补充,甚至是替补。Spring框架为开发提供了一系列的解决方案,比如利用控制反转的核心特性,并通过依赖注入实现控制反转来实现管理对象生命周期容器化,利用面向切面编程进行声明式的事务管理,整合多种持久化技术管理数据访问,提供大量优秀的Web框架方便开发等等。Spring框架具有控制反转(IOC)特性,IOC旨在方便项目维护和测试,它提供了一种通过Java的反射机制对Java对象进行统一的配置和管理的方法。Spring框架利用容器管理对象的生命周期,容器可以通过扫描XML文件或类上特定Java注解来配置对象,开发者可以通过依赖查找或依赖注入来获得对象。Spring框架具有面向切面编程(AOP)框架,SpringAOP框架基于代理模式,同时运行时可配置;AOP框架主要针对模块之间的交叉关注点进行模块化。Spring框架的AOP框架仅提供基本的AOP特性,虽无法与AspectJ框架相比,但通过与AspectJ的集成,也可以满足基本需求。Spring框架下的事务管理、远程访问等功能均可以通过使用SpringAOP技术实现。Spring的事务管理框架为Java平台带来了一种抽象机制,使本地和全局事务以及嵌套事务能够与保存点一起工作,并且几乎可以在Java平台的任何环境中工作。Spring集成多种事务模板,系统可以通过事务模板、XML或Java注解进行事务配置,并且事务框架集成了消息传递和缓存等功能。Spring的数据访问框架解决了开发人员在应用程序中使用数据库时遇到的常见困难。它不仅对Java:JDBC、iBATS/MyBATIs、Hibernate、Java数据对象(JDO)、ApacheOJB和ApacheCayne等所有流行的数据访问框架中提供支持,同时还可以与Spring的事务管理一起使用,为数据访问提供了灵活的抽象。Spring框架最初是没有打算构建一个自己的WebMVC框架,其开发人员在开发过程中认为现有的StrutsWeb框架的呈现层和请求处理层之间以及请求处理层和模型之间的分离不够,于是创建了SpringMVC。
Vue.js是一套构建用户界面的渐进式框架。与其他重量级框架不同的是,Vue采用自底向上增量开发的设计。Vue 的核心库只关注视图层,并且非常容易学习,非常容易与其它库或已有项目整合。另一方面,Vue 完全有能力驱动采用单文件组件和Vue生态系统支持的库开发的复杂单页应用。
Vue.js 的目标是通过尽可能简单的 API 实现响应的数据绑定和组合的视图组件。
Vue.js 自身不是一个全能框架——它只聚焦于视图层。因此它非常容易学习,非常容易与其它库或已有项目整合。另一方面,在与相关工具和支持库一起使用时,Vue.js 也能驱动复杂的单页应用。
系统的开发环境和配置都是可以自行安装的,系统使用springboot框架开发,使用比较成熟的Mysql数据库进行对系统前台及后台之间相关的数据交互,根据技术语言对数据库,结合需求进行修改维护,可以使得系统运行更具有稳定性和安全性,从而完成实现系统的开发。
所谓的技术可行性就是在限定时间,前期拟定的功能能否被满足。在开发设计上是否会遇上解决不了的问题。做完的项目能否被很好地应用,如果存在缺点在后期的维护上是否存在很大的难度。在对这个系统评估后,认定已存在的技术能达成目标。用java技术来实现动态的页面,嵌入低依赖性的设计模式,灵活的数据库,配合稳定的服务器,整个系统的运行效率大大提升。由此可见,在技术层面达成目标不是非非之想。
在项目上使用的工具大部分都是是当下流行开源免费的,所以在开发前期,开发时用于项目的经费将会大大降低,不会让开发该软件在项目启动期受到经费的影响,所以经济上还是可行的。尽量用最少的花费去满足用户的需求。省下经费用于人工费,以及设备费用。将在无纸化,高效率的道路上越走越远。
本系统实现功能的操作很简单,普通电脑的常见配置就可以运行本软件,并且只要粗通电脑使用的基本常识就可以流畅的使用本软件。电脑具备连接互联网的能力,并且可以正常访问系统,并不需要操作者有什么高超的能力,只需了解业务流程,并且按照专业知识进行正确操作即可,所以毕业论文管理系统 具备操作可行性。
在系统开发设计前,应该对功能做初步设想,清楚这个管理系统有什么板块,每个板块有什么功能,整体的设计是否满足使用者的需求,接着对所开发的系统功能进行的详细分析总结,从而设计出完整的系统并将其实现。用户和开发人员的交流分析,使其达到最佳理解程度,使系统功能达到最佳。
学生用户后台功能图如下所示。
管理员后台功能图如下所示。
导师后台功能图如下所示:
毕业论文管理系统 在对需求做解析后,整个系统主要分为三个部分:管理员、导师、学生用户,每个模块下的分支功能不一样。对功能做出如下说明:
学生用户模块:
(1)用户注册登录:游客可以随时进入到系统中,对系统中的信息浏览,但是想要实现图书信息以及留言板等操作,就必须有这个系统的账号,如果没有账号的话,可以注册以后进行相关的操作,同时用户还可以通过“个人账户”这以按钮对个人信息以及操作的信息进行管控。
(2)我的收藏:在“我的”下可以查看管理“我的收藏”信息,可以查看收藏,也可以对不喜欢的信息进行删除收藏;
(3)个人中心:当用户点击右上角“我的”这个按钮,就会进入到对应的后台进行信息的管理了;
(4)公告消息:在首页导航栏上我们会看到“公告消息”这一菜单,我们点击进入进去以后,会看到所有管理员在后台发布的公告信息;
(5)校园资讯:用户可以查看校园资讯信息,在查询到自己想要了解的校园资讯的时候,可以进入查看详细的介绍进行评论、点赞、收藏操作。
(6)论文题目:用户可以搜索查看论文题目并可上传文档和留言提问操作。
管理员模块:
(1)登录:管理员的账号是在数据表表中直接设置生成的,不需要进行注册;
(2)系统用户管理:当点击“系统用户管理”这一菜单的时候,会出现管理员+导师+学生用户三个子菜单,可以对这三个模块进行增删改查操作;
(3)公告信息管理,管理员可对公共信息进行添加、发布、查询和删除等操作。
(4)资源管理:当点击“资源管理”这一菜单的时候,会出现校园资讯+资讯分类这两个子菜单,能够对这两个模块进行增删改查操作;
(5)模块管理:当点击“模块管理”这一菜单的时候,会出现论文题目+论文文档+论文指导+论文成绩+导师答疑+评审答辩这六个子菜单,能够对这六个模块进行增删改查等操作。
导师模块:
(3)模块管理:当点击“模块管理”这一菜单的时候,会出现论文题目+论文文档+论文指导+导师答疑+论文成绩这五个子菜单,能够对这五个模块进行增删改查等操作。
非功能需求分析
系统非功能需求有非常多,比如性能需求、可承载最大用户数、稳定性、易用性需求等。本系统分析时考虑到易用性需求,因为系统是给人使用的,所以必须充分从用户的角度出发,考虑用户体验,使系统易理解易上手易操作。
零层数据流程图包括了登录、用户功能和检索维护等模块,在登录模块使用到的数据存储有用户账户文档,用户功能模块需要的存储是用户各功能模块数据文档,检索维护是使用以上这些数据文档通过关键词进行检索。
系统的零层数据流图如下图所示。
一层数据流程图是对零层数据流程图的细化,将登录细分为填制登录数据和完善数据,用户功能细分为用户基本功能和用户主要功能。
系统的一层数据流图如下图所示。
目前B/S体系的系统主要的数据访问方式是:通过浏览器页面用户可以进入系统,系统可以自动对用户向服务器发送的请求进行处理,处理请求是在系统后台中进行的,用户在浏览器页面上进行相应操作,就能够看到服务端传递的处理结果。毕业论文管理系统 主要分为视图-模型-控制三层架构设计。在视图层中,主要是操作在服务器端向客户端反馈并显示的数据,在模型层中,主要处理相关的业务逻辑、数据整合等,最后的控制层它介于视图和模型之间,主要是调整两层之间的关系,最终落实数据的传递。
系统架构图如下图所示。
系统设计的目的是分析系统包括的所有功能结构,为开发人员设计开发和实现系统做好准备工作。经过前期的需求调查、分析和整理之后,确定的总体需求主要包括多个模块,分别是:后台首页、个人资料(个人信息、修改密码)、公共信息管理、轮播图)、系统用户(管理员、导师用户、学生用户)、资源管理(校园资讯、资讯分类)、模块管理(论文题目、论文文档、论文指导、论文成绩、导师答疑、评审答辩)。系统整体角色分为三个部分,一是学生用户、二是管理员、三是导师。系统功能结构图如下图所示。
对于一个要开发的系统来说,E-R图可以让别人能更快更轻松的了解此系统的事务及它们之间的关系。根据系统分析阶段所得出的结论确定了在毕业论文管理系统 中存在着多个实体分别是用出行报备、学生接种预约、请假、日记、学生、教师。
系统总体ER图如下图所示。
系统的登录窗口是用户的入口,用户只有在登录成功后才可以进入访问。通过在登录提交表单,后台处理判断是否为合法用户,进行页面跳转,进入系统中去。
登录合法性判断过程:用户输入账号和密码后,系统首先确定输入输入数据合法性,然后在login.vue页面发送登录请求,调用src下的mainctrl类的dopost方法来验证。
用户登录模块的IPO如下所示:
输入:用户名和密码。
处理:
1)检测用户输入的账号、密码是否正确及在数据库已对应存在。
2)从数据库中提取记录,并储存在本地的session中(timeout默认=30min)。
3)根据用户名,将其显示在系统首页上。
输出:是否成功的信息。
登录流程图如下所示。
系统登录界面如下所示。
系统呈现出一种简洁大方的首页:界面简约、鳞次栉比,用户能轻车熟路的使用。出于对系统使用群体广泛的顾虑,应有良好性能的后台。
如下图所示为系统的首页界面。
公告信息模块,在此栏可以看到管理员发布的公告信息,如下所示。
校园资讯:用户可以查看校园资讯信息,在查询到自己想要了解的校园资讯的时候,可以进入查看详细的介绍进行评论、点赞、收藏操作,校园资讯界面如图所示。
论文题目:用户可以搜索查看论文题目并可上传文档和留言提问操作。论文题目界面如图所示。
用户在yhzhgl查看用户信息,先使用sql语句查询出所有用户表的数据,然后调用PageManager.getPages(url,4,sql, request ),返回一个ArrayList的对象,在for循环里,使用得到每个ArrayList对象的数据,在jsp页面中解析ArrayList对象,得到其各个键值对的值。
用户管理界面如下图所示。
管理员点击“模块管理”这一菜单会显示论文题目、论文文档、论文指导、论文成绩、导师答疑、评审答辩这六个子菜单,管理员可以对这六个模块进行管理操作,模块管理界面如下图所示。
论文题目:管理员可在论文题目这一栏通过搜索导师工号、导师姓名进行查看导师信息、导师工号、导师姓名、论文题目、论文要求、截止日期等详细信息,可根据需要进行增删改查等操作,论文题目界面如下图所示。
论文文档:管理员可在论文题目这一栏通过搜索学生学号、学生姓名、论文题目、文档类型进行查看学生信息、学生姓名、学生学号、班级名称、导师信息、导师工号、导师姓名、论文题目、文档类型、上传文档等详细信息,可根据需要进行增删改查等操作,论文文档界面如下图所示。
论文文档界面如下图所示。
个人信息界面如下图所示。
在对该系统进行完详细设计和编码之后,就要对毕业论文管理系统的程序进行测试,检测程序是否运行无误,反复进行测试和修改,使之最后成为完整的软件,满足用户的需求,实现预期的功能。
在软件的测试过程中,通常测试人员需要针对不同的功能模块设计多种测试用例。通过测试用例能够及时发现代码业务逻辑上是否与真实的业务逻辑相对应,及时发现代码上或逻辑上的缺陷,以此来来完善系统,提高软件产品的质量,使软件具有良好的用户体验。
登录测试用例表如下所示。
论文文档测试用例表如下所示。
经过对此系统的测试,得出该系统足以满足用户日常需求,在功能项目和操作等方面也能满足操作员对于其他用户的管理。但是,还有很多功能有待添加,这个系统仅能满足大部分的需求,还需要对此系统的功能更进一步的完善,这样使用起来才能更加的完美。
通过这次毕业论文管理系统 的开发,我参考了很多相关系统的例子,取长补短,吸取了其他系统的长处,逐步对该系统进行了完善,但是该系统还是有很多的不足之处,有待以后进一步学习。
实践证明,毕业论文管理系统 有着非常好的发展前景,经过测试运行,系统各项功能都十分完善,界面简洁,使用方便,操作容易,在技术理论上已经成熟。
通过毕业论文管理系统 的开发,本人巩固了之前学过的知识,如今将平时所学到的知识融合在设计中,在设计过程中,做了很多的准备,首先,在数据库系统的设计过程中,尤其是在数据库的工作原理、工作特点,对其深刻的讨论,与此同时,对于小型站点来说,最好服务器的选择,其次,利用所学的知识点分析所做的系统,并在此基础上设计。
目前本系统已经上线,正在试运行阶段,用户反馈良好,基本完成用户所需,试运行过程中没有出现阻断性问题,有一些不足和小问题也及时予以修正,系统上线后,为了保证数据的安全性,对系统进行了备份操作,系统备份是每两个月备份一次,数据库备份为每周备份一次,系统部署在租赁的云平台服务器中。
本次系统上线成功后,得到了用户的高度认可,但是在功能上和性能上还需做进一步的研究处理,使其有更高的性能和更好的用户体验。
系统在以后的升级过程中,需要解决一系列用户所提出的问题,例如打印过程中如何避免浏览器的兼容性问题,大量用户访问时,如何保持较高的响应速度,在系统今后的升级过程中将着重解决这些安全性问题。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。