基于微信小程序的校园失物招领系统/失物招领系统的设计与实现

摘  要

针对高校学生人数多,校园里经常会出现各种各样的寻物启事的现象,开发款基于微信小程序的校园失物招领系统,方便大学生发布失物招领信息,减少损失提高效率为同学们的美好生活带来的便利.该系统基于SSM框架,微信端采用java语言开发数据库采用MySQL后台服务端采用java语言开发结合B/S架构模式开发效率高,方便开发

关键词:校园失物招领系统;JAVA语言;SSM框架;微信开发者;

Abstract

In view of the large number of college students and the frequent occurrence of various search notices on campus, a campus lost and found system based on wechat applet is developed to facilitate college students to release lost and found information, reduce losses, improve efficiency and bring convenience to students' good life The system is based on SSM framework. The wechat end adopts Java language for development, and the database adopts mysql. The background server adopts Java language for development combined with B / S architecture mode, which has high development efficiency and is convenient for development.

Key words: campus lost and found system; Java language; SSM framework; Wechat developer;

目  录

摘  要

Abstract

第一章 绪 论 1

1.1选题依据 2

1.2 主要研究内容 3

1.3 研究思路及方案

1.4 国内研究现状

1.5 国外研究现状

第二章 开发工具及关键技术介绍

2.1微信开发者工具

2.2小程序框架以及目录结构介绍

2.3 JAVA技术

2.4 Mysql数据库

2.5 SSM框架

2.6 B/S结构

第三章 系统分析

3.1需求分析

3.2可行性分析

3.2.1技术可行性:技术背景     

3.2.2经济可行性

3.2.3操作可行性: 

3.3性能分析

3.4系统操作流程

3.4.1管理员登录流程

3.4.2信息添加流程

3.4.3信息删除流程

第四章 系统设计与实现

4.1系统架构设计

4.2开发流程设计

4.3数据库设计

4.3.1实体ER图

4.3.2数据表

第五章 系统实现

5.1 微信端

5.2 服务端

章  系统的测试

6.1 测试目的

6.2 测试方案设计

6.2.1 测试策略

6.2.2 测试分析

6.3 测试结果

结  论

参考文献

致  谢

附录

第一章 绪 论

1.1选题依据

校园失物招领是传统校园生活服务行业的一个重要板块,每个学校都有自己的失物招领相关的场所和管理方法。对于用户来说,能够快速通过校园失物招领平台找寻失物是其存在的价值。但是传统的失物招领,具有信息发布不及时,用户信息接收效果差,失物招领成功率不高等问题,使得校园失物招领变得越来越鸡肋,难以满足互联网时代下用户的快节奏生活。

因此,本课题的研究目的就是设计一款基于微信小程序的失物招领系统,具有信息发布、修改、删除等功能,个人可以发布失物招领、寻物启事,管理员可以进行统计等。本系统通过互联网实现信息发布和接收的实时性、管理人员的精简性和失物招领工作的高效性,并且符合可持续发展的要求,除数据外不会产生多余的成本。

建设基于微信小程序的失物招领系统具有重要的意义,利用当下流行的小程序技术的开发方便、使用简洁和不产生多余内存的特点,融合传统的校园生活服务业,会使失物招领这一服务重新发挥作用,广泛被用户使用。本系统基于微信小程序为用户提供了一个信息互通的平台,平台内实时展示了当前失物的信息。在结合现实中校园失物存放处的基础上,用户通过账号、密码进行认证登录,用户可以通过该小程序发布失物信息,减少了传统失物招领中的多余路程成本,通过建设基于微信小程序的失物招领系统不仅能够提高物品的找回率,更能大大提高失物招领工作的工作效率,是当前互联网高速发展的必然选择

1.2主要研究内容

作为系统开发者,意在建立一个功能完备的失物招领系统。本系统通过微信端,为高校提供校园失物招领服务。

微信端:小程序底端有一个导航栏,导航栏包含了小程序的大板块——首页、失物招领、寻物启事、交流论坛、我的。小程序首页显示了已经发布的失物招领信息和寻物启事信息,信息详细包含了用户信息、联系方式、物品图片、物品描述等,并且用户可以通过搜索来检索相关物品。数据库搭建:建立关于人员、物品、图片等数据库表项对应微信端的内容,在后台搭建:使用服务器搭建一个管理员网站,网站通过用户名、密码进入,包含了当前服务器存储的失物的相关信息以及状态,并且管理员可以对某一单一属性进行检索,按条件分类、查询、管理等操作

1.3研究思路及方案

根据学院所学的信息系统建设的相关知识以及对小程序开发的初步了解,小程序前端使用微信开发者工具设计,对应小程序的基本组件和页面,通过微信官方的控件属性或者自设属性填充wxss,然后根据业务流程确定各页面逻辑js。数据库使用mysql,小程序框架使用Uni-weixin,管理员界面联系之前所学的web开发相关知识,使用eclipse设计出管理员登录和管理界面,服务器用tomcat7.0搭建。使用ssm框架开发。

1.4国内研究现状:

在各大高校中,尽管现在信息化发展越来越迅速,手机电脑也几乎普及到了每一位学生中,但是部分学校仍然使用传统通过广播、发传单等方试来寻找丢失的物品

对于校园面积较小的学校,它们通常设立一个失物存放处,在固定的时间段开放,开放时间内常驻学生或职工进行管理,或者将校园寻物处设立于学生会,定期于学校的网上平台和校园公告栏展示失物招领信息,并安排学生会内部的学生进行长期管理。传统的做法不仅耗人、耗时,也不符合当下信息高速传递的发展需求。

对于校区较大、学生人数多的学校,它们通常采取以通过网络办法进行校园寻物。第一类是建立B/S架构的校园失物招领系统,学生在网页发布失物招领信息、寻物启事信息,管理员通过后台进行监管。第二类是建立基于小程序校园失物招领系统,即以小程序的形式开发校园失物招领系统,使学生能够在手机上进行发布寻物信息。这两种方式符合信息化发展的要求,相比传统的管理办法,信息发布与接收的及时性、管理的低成本都是其优点。但是第一类方法有一定的限制,学生只能通过电脑使用。第二类方法则将系统转移到了手机上,相比更加方便,但是对于使用频率较低的用户来说,第一次使用需安装小程序,闲置时占用手机空间。

通过查阅校园失物招领系统的资料,不难发现现今在校园寻物这一领域,尽管没有相关规范,但是前人已经根据需求建成了多套比较完备的系统,在各种架构形式下,不论是B/S、C/S,亦或是小程序,都有不同样式的校园失物招领系统,其业务逻辑和数据库开发大同小异,故建立一套如上形式的微信小程序的校园失物招领系统具有可行性,也相对简单。

通过调研发现,很少有学校通过微信小程序实现校园失物招领系统,基于微信小程序使用校园失物招领系统,相比以上方式更加便捷,不仅开发简便(微信小程序提供了一个简单、高效的应用开发框架和丰富的组件及API,帮助开发者在微信中开发具有原生 APP 体验的服务),通过人们常用的微信作为载体使用,不仅即点即用,退出也不占用手机内存。基于微信小程序的校园校园失物招领系统具有前几种校园失物招领系统的优势,也改善了使用不便、资源浪费的缺点。

1.5研究现状:

尽管微信是国内的社交软件,国外已经有同等于微信的软件存在,例如ins、Twitter、facebook等应用,小程序远销海外难度较大,国外也没有基于微信小程序的相关研究。但随着国内微信小程序的使用者逐渐增多,小程序的优势逐渐为人们了解,我想基于小程序实现各类功能的需求也会水涨船高,基于微信小程序的校园校园失物招领系统也会被广大高校开发使用,因此这一课题目前来看是具有无限的发展潜力的

  • 开发工具及关键技术介绍

2.1微信开发者工具

微信开发者工具现在已经被小程序开发团队开发运行,目前微信开发者工具任然在不断的完善中,在开发小程序时经常要不断的更新。可以使用微信扫码登陆开发者工具,开发者工具将使用这个微信帐号的信息进行小程序的开发和调试。

机型选择:小程序以智能手机的屏幕尺寸为设计标准,进行切图。

预览界面:写好视图布局后点击编译,用来刷新视图界面

控制台:方便调试打印输出信息

上传代码:上传到腾讯服务器,提交审核必经步骤。上传代码时可以填写版本号和备注信息

资源文件:一般可以在资源文件进行对应项目的文件目录断点调试

显示远程调试:手机端和PC端开发工具联调对用户而言是非常实用

本地数据存储:显示的是本地存储的数据

视图调试:标组件以子父层级结构呈现,方便调试。

微信限制2M 以内代码体积开发中一般不校验合法域名信息小程序后台要做配置服务器域名

以上就是在开发过程中微信开发者工具常用到的功能,微信开发者工具也在不断的完善

2.2小程序框架以及目录结构介绍

整个小程序框架系统分为两部分:逻辑层视图层。小程序开发框架的目标是通过尽可能简单、高效的方式让开发者可以在微信中开发具有原生 小程序 体验的服务。小程序在视图层与逻辑层间提供了数据传输和事件系统,提供了自己的视图层以及逻辑层框架,让开发者能够专注于数据与逻辑。框架的核心是一个响应的数据绑定系统,可以让数据与视图非常简单地保持同步。在逻辑层做数据修改,在视图层就会做相应的更新。框架提供了一套基础的组件,这些组件自带微信风格的样式以及特殊的逻辑,开发者可以通过组合基础组件,创建出强大的微信小程序 。

2.3 JAVA技术

Java主要采用CORBA技术和安全模型,可以在互联网应用的数据保护。它还提供了对EJB(Enterprise JavaBeans)的全面支持,java servlet API,java (java server pages),和XML技术。

JAVA语言功能:

面向对象:面向对象是Java编程语言的标志之一,是一种软件开发方法。最重要的是将所有东西变成对象,然后以某种方式编程。编程时,代码和数据写在每个对象上。 面向对象编程方法的出现使得人们在编程过程中的设计思考和操作变得非常简单,同时也提高了程序的安全性。

跨平台:Java流行的一个关键特性是它的跨平台特性,这使得用Java编程变得容易。您可以用Java编写程序并在其他地方运行它,而无需在编译后更改它。

垃圾回收机制:用来将那些在程序不操作时无用的对象所占用的内存空间释放掉,C ++最被人厌恶的就是因为其不能将在编程的过程中所占用的内存空间进行及时的释放,导致随着编程时间的变长所占用的内存空间越来越多。对于一些编程高手而言,他们会在刚开始编程的时候配置一块内存地址放在堆栈上,然后在不需要的时候会对其进行释放,而一些新手和菜鸟在很多的时候会忘记删除这个内存地址,从而导致程序在运行的过程中会变得十分的不稳定,最终有可能会导致程序崩溃。所以很多C ++的高手在编写程序时往往都会将删除后的指针的值设置为NULL,然后在删除之前确定一个指针的值是否为NULL。

2.4  Mysql数据库

数据库(Database)是按照数据结构来组织、存储和管理数据的建立在计算机存储设备上的仓库。简单来讲,存储粮食的仓库叫粮仓存储数据的仓库就叫数据库。数据库在软件项目中扮演着操作管理数据的角色同时还能够保证数据的独立性、一致性和安全性,并为系统访问数据提供有效方式不仅如此数据库还能大大减少程序员开发程序时间。在日常能够接触实用的一般有两类数据库,一类是以(Oracle,DB2,SQL Server,MySQL )为代表的关系型数据库和以(NoSql、MongeDB)为代表的非关系型数据库,两类数据库各有各的优缺点。 其中非关系型数据库又分为网络数据库和层级数据库。网络数据库网络数据库是指在计算机网络系统中应用数据库技术然后借助网络技术将存储于数据库中的大量信息及时发布出去;在成熟的数据库技术的帮助下,计算机网络实现了对网络中的各种数据的有效管理,球员与网络中的数据库数据交互也借此得以进行。作为最成功的典型层次模型数据库系统,IMS是最早研制成功的数据库系统。建立在关系模型基础上的关系数据库借助于集合代数等数学概念和方法来对对数据库中的数据进行处理。现实世界中的各种实体以及实体之间的各种联系均用关系模型来表示。1970年由埃德加·科德于首先提出的关系模型融合了“科德十二定律”。现如今即使很多人仍旧不看好这个模型,但它依然是数据存储的传统标准。关系数据结构、关系操作集合、关系完整性约束构成了关系模型。作为数据库另外一种区分方式的存储介质被大家分为磁盘和内存这 两种。例如:关系型数据库就存储在磁盘中,非关系型数据库则存储在内存中。典型的关系型数据库有:Oracle、DB2、Microsoft SQL Server、Microsoft Access、MySQL、SQLite。小型关系型数据库:Microsoft Access,SQLite;中型关系型数据库:SQL Server,Mysql;大型关系型数据库:Oracle,DB2。

各种大家常用的操作系统平台的关系数据库系统大多是由瑞典的MySQL AB公司开发的其中MySQL也是由这家开发的,它所应用的分布式数据库管理系统是员工机/服务器体系结构得益于此结构,而且用这个系统建造的数据库具有很强的适用性,具体体现在因特网上的任何地方都可以访问用它搭建的数据库。MySQL具有功能强、使用简单、管理方便、运行速度快、可靠性高、安全保密性强等优点,用C和C++编写的系统让他拥有很强的适用性所以他可以在大部分操作系统上使用并能和php结合。不同的API函数会被用来针对不同编程语言(C,C++,JAVA等)来处理不同数据;为了更好地支持多CPU多线程通过使用核心线程来实现;提供的存储机制分为事务和非事务存储机制;MySQL采用双重许可,不管是从MySQL AB公司获得正式的商业许可又或是许可条款下以免费软件或开放源码软件的方式使用MySQL软件都是被允许的。

MySQL作为数据库拥有很多优点,其中由于是开放源码,所以使用成本特别低,而它体积小的特点决定了速度快的特性,许多中小型网站为了降低网站总体拥有成本这时选用MySQL作为网站数据库就是他们的不二之选,选用MySQL可以大量缩减数据库成本。因此,My Sql具有开放性,多线程支持多种API,可跨数据库连接,国际化,数据库体积巨大等特点。简单的来说 ,MySql是一个开放的、快速的、多线程的、多球员的数据库服务器。

选用MySQL作为数据库的其中一个原因就是支持多线程,支持多线程的特点为利用系统资源提供了便捷并因此大大提高了系统运行速度和效率,而且连接数据库的方式多样包括但不局限于TCP/IP、ODBC和JDBC等途径;但是没有东西是完美无缺的,即便MySQL也如此,虽说它有着众多优点但其功能不够强大,规模也相对较小,无法应对大型数据哭的处理。但是对于本系统来说,选用MySQL作为数据库,其功能性能已绰绰有余,如果要进行二次开发的数据库表结构空间的扩展也是完全可行的。综上所述,MySQL是作为本系统数据库的最优选择。

2.5 SSM框架

当今流行的“SSM组合框架”是Spring + SpringMVC + MyBatis的缩写,受到很多的追捧,“组合SSM框架”是强强联手、各司其职、协调互补的团队精神。web项目的框架,通常更简单的数据源。Spring属于一个轻量级的反转控制框架(IoC),但它也是一个面向表面的容器(AOP)SpringMVC常常用于控制器的分类工作模式,与模型对象分开,程序对象的作用与自动取款机进行处理。这种解耦治疗使整个系统的个性化变得更加容易。MyBatis是一个良好的可持续性框架,支持普通SQL查询,同时允许对存储过程的高级映射进行数据的优化处理。大型Java Web应用程序的由于开发成本太高,开发后难以维护和开发过程中一些难以解决的问题,而采用“SSM组合框架”,它允许建立业务层次结构,并为这个问题提供良好的解决方案。

2.6 B/S结构

当向其他球员发送请求的功能时应用B/S(Browser/Server,即浏览器/服务器结构)模式具有独一无二的优点:球员请求通过网络向其他Web服务器发送时只需要通过浏览器就可以实现该功能。该功能的好处之一就是有效简化了员工端,大部分开发的软件只需要用浏览器即可,员工端的正常运行则通过这些浏览器来实现,而服务器则负责执行数据的存储和读取等其他的多功能工作。

B / S架构,主要有表示逻辑层,控制逻辑层,数据层这三层。表示逻辑层:服务请求这一功能主要是逻辑层的,Web服务器准备好后,服务请求最先被发送。等到最先发送的请求被服务器接收到后,然后将接受到的请求信息在web服务器上进行识别,识别这一操作是由服务器执行操作的,只要经过服务器的识别请求操作之后再将接收到的信息返回给员工端,此时浏览器就能显示员工端接收到的返回的请求的信息。控制逻辑层:控制逻辑层的主要任务是接收球员的请求,将相应程序和数据库连接是接收球员数据的请求的首要条件,然后处理请求信息数据,请求数据经过处理后返回给Web服务器的就是最终处理完成的结果,最后返回给员工端的最终结果再次通过Web服务器。数据层:服务器从Web服务器接收请求是数据层主要任务但还包括执行数据库查询、修改、删除操作,最后将数据库操作结果返回网络服务器。表示逻辑层,控制逻辑层和数据层三层之间的关系具有独立性,但三层之间又具有藕断丝连的相互关联的特性。 

B/S架构作为目前在程序开发中应用非常广泛的程序结构同时也是一种以互联网系统为基础的程序开发架构。目前B/S架构的广泛使用打破了结构模式被C/S结构垄断的局面并有淘汰C/S结构的势头,而给基于网络模式的程序系统提供优秀的支持也是应用B/S系统的优点之一。伴随着互联网的进一步发展,不局限于在一台电脑上使用,可以让其他接入互联网的电脑也能操作和使用该系统就成为求大多数的信息管理系统的要求。这样的趋势和要求使得基于B/S架构的程序设计方法得到了越来越广泛的使用并成为主流架构。利用B/S架构设计的程序不是窗体程序即不必在电脑上额外安装员工端,只需要使用操作系统中的浏览器就可以对程序进行操作和使用。这得益于B/S架构的运行方式:只需要在远程的服务器上把开发好的的软件系统部署好,在部署好程序之后访问部署好的程序系统就可以在任何接入互联网的电脑上通过浏览器访问,这给球员使用管理系统的过程中带来不可估量的便利和便捷。

第三章 系统分析

3.1需求分析

任何一个项目在开发研究前,都需要对研发系统本身的需求做一个认真的分析,市场的调研是不可忽视的,从实际场景中确定使用人员的功能需求,从而明确目标,对整个系统的开发有一个更加准确的定位,在这个章节,需要对系统的性能分析,业务流程分析,和数据等进行分析,校园失物招领系统的整体界面简单,功能完善。

需求的可行性是分析和讨论发达的系统能达到什么样的要求。开发的系统平台是否符合之前的要求。只有在预先评估系统的开发中,才能在系统开发和实施之前完成需求。如果您不具备开发一个功能不合格的系统的可行性,那就是开发失败。开发系统是否有用,可以完成之前讨论过的需求,以下分析了校园失物招领系统的实际需求。

系统设计需要从用户和管理员的实际需求开始,以了解他们需要实施哪些功能以及他们可以包括哪些管理工作。

考虑到校园失物招领系统设计的特点,应满足几个要求:

1管理员权限:

1)首先通过登录修改个人密码、用户名。

2) 对用户:账号、姓名、性别、班级、手机、身份证、图片进行增删改查。

3) 物品分类:对物品分类新增、修改、删除发布。

4) 失物招领管理:通过用户发布的编号、物品名称、物品数量、物品分类、状态、发表时间、封面、账号、手机、地址进行审核,是否真实。失物确实真实可在前台展示。

5) 寻物启事管理:用户发布的编号、物品名称、物品数量、物品分类、发表时间、状态、封面、账号、手机、地址进行审核,是否真实。

6) 交流论坛:管理员可以通过系统看到所有用户的交流论坛。并可以进行添加、删除、修改等操作

7)公告信息:管理员通过系统发布校园公告用户可以在微信端查看。

(2)用户微信端权限

1).首先通过注册、登录修改个人密码、用户账号。

2).失物招领管理:用户通过发布编辑编号、物品名称、物品数量、物品分类、状态、发表时间、封面、账号、手机、地址,管理员后台审核。用户也可取消失物招领信息。

3).寻物启事管理:用户通过发布编辑编号、物品名称、物品数量、物品分类、发表时间、状态、封面、账号、手机、地址,管理员后台审核。用户也可取消寻物启事信息。

4).交流论坛:用户可通过交流论坛进行帖子发布,可设置公开、私人。可对其他帖子评论。

5).公告信息:用户点击公告信息进行查看

3.2可行性分析

3.2.1技术可行性:技术背景     

校园失物招领系统采用了JAVA技术,开发了功能完备、使用简单的前端应用程序,并建立、维护了一个数据完整、安全、稳定性强的后台数据库系统。

系统使用JAVA技术和Mysql数据库作为设计工具,可简单易行地学习操作。用户角色之间的相结合开发一套校园失物招领系统是值得尝试的,数据完整性和许多品质为数据的功能分配和管理提供了依据。它也是数据库安全平台的重要组成部分,是提高和增强数据安全性的重要手段。此外,为了提供更平滑,更智能和更有效的基本控制方法,定义了同时构建对安全计算环境的支持所需的步骤,并帮助维护安全性。因为在这两种开发工具中,功能强大且免费且界面良好,所以校园失物招领系统在技术方面是可行的。

3.2.2经济可行性

桌面校园失物招领系统管理的开发是由开发者自己开发,不需要购买其他软件或者端口之类的,而且在校园失物招领系统管理的开发之前所做的市场调研及其他的校园失物招领系统,都是没有任何费用的,通过开发者自己的努力,所有的工作的都是自己亲力亲为,在碰到自己比较难以解决的问题,大多是通过同学和指导老师的帮助进行相关信息的解决,所以对于校园失物招领系统的开发在经济上是完全可行的,没有任何费用支出的。

使用JAVA技术是比较成熟的技术,所以校园失物招领系统的开发在经济上是没有问题的

3.2.3操作可行性: 

可操作性主要是对校园失物招领系统设计完成后,用户的使用体验度,对于管理员可以通过系统随时管理相关的数据信息,并且对于管理员、用户二权限角色,都可以简单明了的进入到自己的系统界面,通过界面导航菜单可以简单明了地操作功能模块,方便用户信息需求和数据信息,对于系统的操作,不需要专业人员都可以直接进行功能模块的操作管理,所以在系统的可操作性是完全可以的。本系统的操作使用的也是界面窗口进行登录,所以操作人员只要会简单的电脑操作就完全可以的。

3.3性能分析

对于性能分析,与传统的管理方式相比,传统的管理方式是使用人工通过用纸和笔进行数据信息的统计和管理,并且这种方式对于存储和查找某一数据信息都比较麻烦,随着计算机网络的到来,这种传统的方法很难适应当下社会的发展,不仅降低人们的办事效率,而且还需要很多的人力和物力,对于使用的时间和所要花费的费用都是比较高的,为了降低成本费用,提高用户的工作效率,进行开发一套基于计算机和网络技术的校园失物招领系统

校园失物招领系统的开发设计时一个独立的系统,以流行数据库进行数据的存储开发,主要是为了实现校园失物招领系统用户角色及相对应的功能模块,让校园失物招领系统的管理不会存在管理差异、低效率,而是跟传统的管理信息恰好相反,校园失物招领系统的实现可以节约资源,并且对于业务的处理速度也提高,速度快、效率高,功能性强大。

3.4系统操作流程

3.4.1用户登录流程

对于系统的安全性的第一关,就是用户想要进入系统,必须通过登录窗口,输入自己的登录信息才可以进行登录,用户输入的信息准确无误后才可以进入到操作系统界面,进行功能模块的相对应操作,如果用户输入的信息不正确,则窗口出现提示框,用户登录失败,返回到第一步进行重新输入,如图3-1所示。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

一枚小小程序员哈

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值