《本科毕业设计基于ssm的校园失物招领系统.docx》由会员分享,可在线阅读,更多相关《本科毕业设计基于ssm的校园失物招领系统.docx(9页珍藏版)》请在冰豆网上搜索。
withtheprogressofthetimesandtherapiddevelopmentofnetwork,allwalksoflifehavechanged.Scientificunderstandinghasdevelopedfromlowleveltohighlevel.Peoplepaymoreattentiontorationalunderstandingandpromotesocialdevelopmentwithactions.Allkindsofapplicationsoftwareemergeinendlessly,whichbringsusalotofconvenience,suchasonlineticketpurchase,onlinepayment,etc.inourcampus,wecanalsousecomputertechnologytomanageinformation.Scientificandcorrectmanagementcanimprovetheefficiencyofourinformationmanagementandhelpusenjoylife.TakingSSMlostandfoundmanagementsystemastheresearchobject,thispaperdiscussesthedesignobjectives,systemrequirementsandoveralldesignschemeofthesystem,includingtheresearchanddevelopmentbackground.Thispaperalsointroducestherealizationmethodofeachfunctionmoduleofthesystem.Afterthesystemdesigniscompleted,themanagementsystemistested.Keywords:
lostandfoundmanagementsystem;Javalanguage;Mysqldatabase;SMSframework第一章绪论课题背景及意义现在互联网的迅速发展的时代,人们已经越来越依赖于互联网。
系统利用网络和计算机进行管理,使用者可以系统及时发布自己的丢失物品,也能及时查看其他用户发布的拾取信息以及检索功能,上传物品后都能够在网站首页及时更新,而且利用网络技术会更加稳定高效。
用户可自行注册登录后可以查看搜索物品信息,也能发布失物信息,可以在首页物品信息中查看收藏,在个人中心中申请认领,在拾取者审核通过后该物品信息会下架,失主和拾取者联系归还物品。
第二章系统开发环境java技术Java语言是sun公司1991年发布高级的、面向对象的可跨平台程序设计语言。Java是快速,安全和可靠的。
它被广泛用于在笔记本电脑,数据中心,游戏机,科学超级计算机,手机等中开发Java应用程序。
Java遵循WORA一次写入,到处运行)的原理,并且与平台无关,Java程序可以在便携式计算机、电视、电话、手机和其他的大量电子设备上运行。
Java的用途不胜枚举,它拥有无可比拟的能力,而且节省的时间和费用十分可观。
总的来说,是一种极富创造力的语言。
既然Sun已经启动了Java,它就计划让它变得全能。
到目前为止,Java在其应用领域已经分为三个版本:
javase、javaee、javame,javaee是企业版。
javaee应用程序使用的虚拟机与javase完全相同。
javaee无疑是Java平台的核心,对web应用的进一步研究是必要的,Framework与spring一样,是javaee开源生态系统的一部分。
不幸的是,Javame并没有流行。
另一方面,Android平台是移动平台的标准之一。
Java语言的有以下特点,分别为:
1.一种面向对象的编程语言。
按照对象集合的方式组织程序是一种面向对象的编程思维。
面向对象编程的四个主要概念是:
抽象化,封装,继承,多态。
2.一种与平台无关的语言。
编译器将源代码转换为字节码,然后JVM执行编译器生成的字节码。
该字节码可以在Windows,Linux和macOS的任何平台上运行,这意味着如果我们在Windows上编译程序,则可以在Linux上运行,反之亦然。
每个操作系统具有不同的JVM,但是在字节码执行后,所有操作系统产生的输出都是相同的。
这就是为什么我们称Java为平台无关的语言。
3.简单。
Java是简单的语言之一,因为它不具有指针,运算符重载,多重继承,显式内存分配等复杂功能。
4.健壮的语言。
吸收了C/C++语言的优点。
Java语言健壮,意味着可靠。
它以这样的方式开发:
尽力尽早检查错误,这就是Java编译器甚至能够检测到其他编程语言不易检测到的那些错误的原因。
使Java健壮的Java主要功能是垃圾收集,异常处理和内存分配。
5.安全性较高。
自动回收垃圾,强制类型检查,取消指针)在Java中,我们没有指针,因此我们无法访问越界数组这就是为什么在Java中无法利用堆栈破坏或缓冲区溢出之类的一些安全漏洞的原因。
6.分布式。
我们可以使用Java编程语言创建分布式应用程序。
远程方法调用和企业JavaBean用于在Java中创建分布式应用程序。
Java程序可以轻松地分布在通过Internet连接相互连接的一个或多个系统上。
支持多线程。
它是Java的一项功能,它允许并发执行程序的两个或更多部分,以最大程度地利用CPU。
8.可移植行。
众所周知,在一台机器上编写的Java代码可以在另一台机器上运行。
Java的平台无关功能,其中可以将其平台无关字节码带到任何平台上执行,从而使Java可移植。
9.开源。
这次的失物招领系统是使用的ssm框架,即Spring+springMVC+MyBatis,是目前主流的JavaEE框架。
数据库是使用的Mysql数据库。
Mysql数据库在我们的失物招领系统中,需要对用户和物品等数据进行收集、储存处理,这是一个主要的任务。
然而,在大量的数据处理工作中难度是很大的,最有效的解决方案是关系数据库关系表中存储的与他人相关的数据的有组织的集合。
在数据库中,在数据结构化后储存在不同表中,实现对对数据的处理。
Mysql是一个关系型数据库管理系统,由瑞典MySQLAB公司开发。
在工作和学习中,无论是开发、运行维护,还是测试,对数据库的学习都是不可避免的,也是日常工作中必不可少的技术之一。
在互联网公司中,开源产品线较多,MySQL是公司使用的最重要的数据库。
比如在我们大学阶段,在Java学习中,做的项目中数据库都是用到的Mysql数据库。
MySQL的基本存储结构是页。
每个数据页可以形成一个双向链表,数据页中的记录可以形成一个单向链表。
MySQL中的索引可以按一定顺序引用多个列。
在创建联合索引时,索引字段的顺序需要考虑重复数据消除后字段值的数量,并且大多数字段值都放在前面。
而要实现相同的索引功能,可以命中的重复索引一定要命中。
MySQL数据库中的一些规范,如命名规范,必须使用小写字母作为库名、表名和字段名,并使用下划线分段。
数据库名、表名和字段名不能超过32个字符。
总的来说,正是因为Mysql数据库简单,掌握它的存储的方式是不需要的,其储存的方法同样不用了解。
因此,mysql数据库是与其他的数据结构是不一样的,在一个数据中可以使用另外的一个数据库输入。
是对用户友好方便管理数据库,而且可以扩展,做到管理数据表中的任意数据,兼容平台且数据的安全性高等这些优点,让Mysql数据库主流于现在的原因。
B/S结构因为互联网普及,信息及时共享的需求以往的C/S无法解决这个问题于是,就出现了B/S型模式,即浏览器/服务器结构。
它是C/S架构的基础上研发的技术,可以说属于三层C/S架构。
主要是通过进步浏览器技术,实现了原来需要复杂专用软件才能实现的强大功能,能够缩减开发成本。
采用后,使用者可以做到在任意时间、地点访问网站并且可以使用系统的相关功能,无任何的限制,前提是能够连接互联网。
在没有B/S时期,浏览器是单向的,只能显示静态页面,页面交互不友好,不能进行大量的逻辑处理,而B/S后,能够实现动态网页,数据可以动态形式与我们用户进行交互,提高我们获取信息的效率,也美观了页面布局。
B/S结构分为数据储存层、业务逻辑层和表示层三层。
调用相关数据发出响应,调用的数据控制是由于使用者数据图层实现的。
有着能够广泛信息共享,及时同步更新且界面人性化简洁易操作的优势收到众多青睐。
第三章系统分析所谓系统分析,找到客户,前期工作人员与其积极交流需求。
获取信息后成为需求交给系统设计人员。
软件功能开发的每一步都是是需要精雕细琢,长期以来,尤其是在开发初期,需求分析的重要性不能得到人们的重视。
比方说,有个企业需要一个信息管理系统,后面便找到了IBM公司,但是初期在需求不了解的情况下就着手开发工作。
初期建设期为一年,由于需求原因,赵成半年以上工期耽搁,产生严重后果。
无独有偶,我们诸多企业也存在这些问题。
他们在需求的同时发展,不能与客户积极沟通,开发不细致或者生搬硬套的开发,导致浪费大量时间和金钱。
正是因为需求获取时没有重视与用户的积极沟通交流,不完全了解需求,导致这些严重问题。
可行性分析本次的失物招领系统是解决校园里丢失物品后寻物难的问题。
立足于开发需求,现在以下四方面进行对系统可行性分析,看系统能否满足。
技术可行性本次的物招领管理系统用Java语言编写,在框架上采用主流的SSM框架,数据库是稳定高效的Mysql数据库。
作为最美编程语言Java,其运用广泛,极好实现面向对象,上手简单且易融入开发人员个人思维。
而SSM框架更可用于各种大型的企业运用系统,可以想象其影响力。
Mysql数据库更是易操作较简单处理数据高效稳定流行于企业及学校的教学中。
以上技术都是通过时间发展提升的,通过了时间的考验。
由此可见,用于开发本次的失物招领系统是可行的。
操作可行性本次失物招领管理系统的整体上界面简洁,各个功能明晰。
每一步的操作都能理解是什么,且在操作失误后会用明确的提示词进行引导。
首页界面友好,后台也上手简单。
基本上适用于所有人的操作习惯,有电脑使用基础的都能完成整个的失误招领过程中的全部操作。
所以说本次系统的操作上面是可以完成的。
法律可行性本次校园失物招领系统使用的软件和数据库都是开源的。
整个项目的设计开发由自己完成,对自己有诸多意义。
因此,是合法不存在侵权行为,可以进行开发设计,在法律上面是合法的。
系统流程分析系统开发流程本次失物招领系统的整个开发中,最基本也是十分重要的一步是对系统需求分析,即拟要实现的功能,接下来是对整个系统的大体规划设计。
下面是本次失物招领系统的开发流程图。
图3-1系统开发流程图用户登录流程用户登录至关重要,保障着系统的安全,是需要开始使用系统的第一步,之后才能对信息处理。
下面是本次失物招领系统用户登录的流程图。
图3-2登录流程图系统操作流程首先会对你输入的信息在数据库中校对,在输入正确的账号和密码后才会进入系统,之后可以进入首页界面后对失物招领相关功能操作管理。
如果数据库中无相关数据,则需要重新输入登录。
下面是系统操作的流程图。
图3-3系统操作流程图添加信息流程用户和管理员都可以在自己的权限范围内进行添加信息流程的操作,在使用者在输入添加的信息数据操作后,系统会自动判断刚刚的添加的数据是否为合法操作。
如果系统识别为合法信息,将会保存到数据库中,并会及时更新到首页,这些操作完成后则添加信息流程操作结束;如果第一步输入数据的操作不合法,则需要返回上一步重新输入。
以下是添加信息的流程图。
图3-4添加信息流程图修改信息流程用户和管理员依然是根据自己的权限范围可以对寻物信息、招领信息如物品的颜色丢失地点等基本相关信息进行修改。
首先是要选择修改信息功能,然后选择自己要修改的内容,输入自己要修改的数据,操作完成后会根据数据库中的信息判断刚刚输入的数据的合法性,如果合法,则刚修改的数据会保存到数据库中,并在网页中更新,这些操作完成后,修改信息流程结束;如果上一部的输入数据不合法,则需要返回重新输入修改数据。
以下是修改信息流程图。
图3-5修改信息流程图删除信息流程管理员和用户可以根据自己的权限选择寻物信息、物品类型以及寻物回复等信息进行删除。
第一步是选中删除功能,会提示选择一条数据进行操作。
选中后要删除数据后系统会提示是否删除数据,如果确定删除数据,该条数据会在数据库中被删除,首页页没有这条数据信息,完成上述操作后,删除数据流程结束;如果选择不删除,则会关闭界面,回到选中信息的这一界面。
以下是删除数据的流程图。
图3-6删除数据流程图系统用例分析管理员用例图本次系统中的主要用户之一是系统管理员,管理员是所有系统的标配,用来管理维护系统的平稳安全的运行。
管理员权限更多,下面本失物招领系统的管理员权限。
分别有修改个人信息、对用户信息管理、寻物信息管理以及对丢失的物品信息的管理如物品分类上下架等操作。
下面是管理员用例图。
图3-7管理员用例图用户用例图本次系统的另一个主要使用者为普通用户,普通用户的权限相对小,确实系统最多的。
完成登录操作后,用户可以查看到已经发布的物品信息、寻物信息、公告信息等;另外可以进入个人中心界面,可以对自己的信息管理操作、根据需要发布自己的丢失物品或者寻找失主以及认领物品的相关操作。
下面是普通用户用例图。
图3-8用户用例图第四章系统设计系统概述进入系统设计阶段后,要开始着重于系统整体上设计,系统的各个模块的布局,具体设计程序的模块设计要实现哪种功能。
以下是本次系统的运行原理图运行原理图系统结构设计系统结构设计中总体上的框架至关重要的,为后面的具体设计开发奠定基础。
下面是本次失物招领管理系统的结构设计图。
系统结构设计图数据库设计数据库设计是系统设计工作的重点,数据库是处理系统中数据工作,把数据库设计好可以为我们操作管理数据更加方便,让系统整体变得优秀。
数据库设计原则需要保证数据一致性和有效性,数据的准确性和相容性即完整性原则。
各个数据之间使用概念模型像线一样把它们联系起来。
数据库实体数据库中的实体是指客观存在的东西,并且实体之间存在联系。
就比如说一个学校里,每个学生都有自己的省份,如来自重庆,因此,这个学生就会于重庆之间存在联系的。
下面是这次系统的四个E-R图1、用户信息实体图用户实体图2、失物招领信息管理实体图失物招领信息管理实体图3、公告信息实体图公告信息管理实体图4、管理员实体图如图管理员实体图数据库表设计数据库表的设计也是重要的一环,下面本系统的表设计。
表4-1t_user用户信息表表4-2t_shuju失物招领信息表表4-3t_admin管理员信息表表4-4t_gonggao公告信息表第五章系统界面实现登录本系统的主要使用者管理员与用户,他们都使用账户和密码进行验证登录。
登录成功二者进入相应的系统界面。
下面是登录展示图:
图5-1登录界面管理员功能模块个人信息管理员管理个人信息模块,包括修改密码、查看登录日志等操作。
程序成效图如下图5-2所示:
图5-2个人信息界面图网站信息管理员可以对网站的基本进行相应管理。
程序效果图如下图5-3所示:
图5-3网站信息界面公告信息公告信息主要是向普通用户传达信息的,它告知用户有关本系统的一切大小事宜。
管理员主要就是对公告进行管理,包括相应的增、删、改。
程序效果图如下图5-4所示:
图5-4公告信息界面用户信息用户信息模块展示了用户的个人信息,包括其登录名、姓名、性别、年龄、电话以及地址。
管理员对用户的管理,包括禁用账号和恢复账号。
程序效果图如下图5-5所示:
图5-5用户信息界面物品信息物品信息模块展示了物品的各种信息,其中包括它的名称、遗失地点、它的特征、物品类型以及物品的图片。
管理员可输入关键词搜索物品,并对其进行相应管理。
程序效果图如下图5-6所示:
图5-6物品信息界面寻物信息寻物信息是用户发布的寻找遗失物件的信息。
管理员根据其内容是否违反了《网络安全法》,进行相应管理。
程序效果图如下图5-7所示:
图5-7寻物信息界面用户功能模块首页用户进入系统首页可以查看各类用户信息包括物品信息、寻物信息、公告信息、个人信息、个人消息、物品认领、认领交流、寻物信息等操作。
程序成效图如下图5-8所示:
图5-8前台界面图用户注册用户通过添加个人信息进行注册成为会员后登录系统等操作。
程序效果图如下图5-9所示:
图5-9用户注册界面用户中心用户对物品信息、寻物信息、公告信息、个人信息、个人消息、物品认领、认领交流、搜索信息可以操作添加、删除、修改和查看。
程序效果图如下图5-10所示:
图5-10用户中心界面第六章系统测试在系统开发完成后要进行进行系统测试,测试的目的是检查系统运行情况,是否稳定运行,检查系统有没有存在bug等,测试是否符合开发的需求。
如果出现问题后,要及时修改完善系统。
系统的测试是不可或缺的,是对于用户的一种保障,也是为了开发人员。
在过去的经验中,出现过有因为不注重系统测试而后期真正使用时出现漏洞甚至完全影响使用的例子,导致巨大的经济损失,也会给开发人员造成不自信有阴影后果。
所以说,做好系统测试的最后一步是很重要的。
目前系统测试分为有两种方式。
黑盒测可以理解为为系统的功能测试,简单来说,就是测试系统的各个功能能否正常运行,达到需求目标没有,是以用户角度为落脚点从输入输出数据对应关系测试的。
而白盒测试,是检查系统的内部逻辑结构。
在程序不同地方检查程序状态,一个模块路径都要检查。
测试用例及结果此校园失物招领系统的主要用户是:
管理员、普通用户。
他们各自对应的系统使用权限不一样,所能使用的功能也是不同的。
普通用户的主要功能模块有:
个人信息管理、失物招领信息发布、认领失物、留言、个人消息管理;管理员的主要功能模块有:
个人信息管理、网站信息管理、公告信息管理、用户信息管理、物品信息管理、寻物信息管理。
具体测试用例和测试结果如下:
用户登录模块测试基本描述:
普通用户进入系统测试方案:
通过输入不同的账号密码来测试。
表6-1管理员登陆模块测试测试结果:
通过测试发现预期和结果一致。
物品认领模块测试基本描述:
普通用户进入物品认领界面测试方案:
普通用户通过输入不同的认领信息来测试系统是否正常。
表6-2物品认领模块测试测试结果:
通过测试发现预期和结果一致。
寻物信息模块测试基本描述:
普通用户进入寻物信息模块测试方案:
普通用户通过输入不同的信息添加失踪物品信息来测试。
表6-3物品认领模块测试测试结果:
通过测试发现预期和结果一致。
用户管理模块测试基本描述:
管理员进入用户管理模块测试方案:
管理员输入关键词进行查找。
表6-4物品认领模块测试测试结果:
通过测试发现预期和结果一致。
物品信息模块测试基本描述:
管理员进入物品信息管理模块测试方案:
管理员对遗失物品信息上架、下架。
表6-5遗失物品模块测试测试结果:
通过测试发现预期和结果一致。
测试后的改进方案经过以上测试:
用户登录模块测试、物品认领模块测试、寻物信息模块测试、用户管理模块测试以及物品信息模块测试,我发现系统大体功能没有问题,但一些小细节还存在不足,例如新增遗失物品的物品图片不能和物品信息同时上传。
改进:
将图片上传和物品信息上传规划在同一页面之中。
小结做完上述工作后,本次失物招领系统整个过程就要告一段落了。
回顾一下,我们首先是研究了当前的现状背景,确定了在我们校园里,丢失物品情况普遍,而且寻找起来困难大。
然后是分析了做这个失物招领系统的相关技术,本次系统是Java语言编写,采用的ssm框架和Mysql数据库完成的。
在以前校园学习中,对ssm框架掌握的不够,通过这次后,对其有了更深入的了解。
接着是系统进行了相关分析,确定是完全可以开发这个失物招领系统的。
下一步是对我们系统进行了较细致的分析,这一步很重要。
只有对系统需求分析了解透彻,才能在接下来的开发工作中顺利。
在后面的工作中,会对系统分析的流程更加熟悉,考虑的地方也会更加周到,这都是一次很宝贵的成长经历。
接下来开始开发系统,在建立数据表时和一些功能模块的开发设计,是一个困难且有趣的过程,遇到困难会去寻找解决方法,询问同学,上博客搜索相关技术,在能力上得到了一定提升。
最后一步是对系统进行测试了,这是保障作用也重要,熟悉了黑白盒测试,更明白成功的最后一步