失物招领系统/失物招领平台

失物招领系统的设计与实现

摘要:伴随着我国全面推动信息化的趋势,我国的很多行业都在朝着互联网的方向进发。结合计算机技术的失物招领系统能够很好地解决传统失物招领存在的问题,能够提高管理员管理的效率,改善服务质量。优秀的失物招领系统能够更有效管理遗失物品规范,帮助管理者更加有效管理遗失物品,可以帮助提高克服人工管理带来的错误等不利因素。所以一个优秀的失物招领系统能够带来很大的作用。

该系统使用的编程语言是python,数据库采用的是MySQL数据库。通过调研,明确了失物招领系统的需求,最后开发实现了系统并进行了测试,基本完成了系统设定的目标,建立起了一个较为完整的系统。该系统基于B/S模式,主要包括用户管理、失物发布、失物招领等功能模块。

关键词:失物招领;python;MySQL数据库;

Design and Implementation of Lost and Found system

Abstract:With the trend of comprehensively promoting informatization in China, many industries in China are moving in the direction of the Internet. The lost and found system combined with computer technology can well solve the problems existing in the traditional lost and found system, improve the efficiency of administrator management and improve the quality of service. An excellent lost and found system can manage lost items more effectively, help managers manage lost items more effectively, and help improve and overcome adverse factors such as errors caused by manual management. Therefore, an excellent lost and found system can play a great role.

The programming language used by the system is python, the database adopts MySQL database. Through investigation, the requirements of the lost and found system are clarified. Finally, the system is developed and tested, the objectives set by the system are basically completed, and a relatively complete system is established. The system is based on B / S mode and mainly includes user management, lost and found, lost and found and other functional modules.

Key words: Lost and Found; Python;Mysql database;

1 绪论

1.1 研究背景

互联网发展到现在已经有七十多年的时间了,随着信息技术的不断发展,互联网会涉及到人们生活的各个方面当中,互联网时代来临的时候可以推动各个行业的发展,给社会的经济领域添加了不少活力。

在当今的时候,很多行业都离不开互联网,尤其是在互联网时代下产生的失物招领系统更是受到人们的欢迎。失物招领系统如此有以下优势[1]。

(1)相比于较传统的工作模式,失物招领系统能够提高管理员管理的效率和降低出错的效率。失物招领系统功能经过编译运行能够大大降低管理员管理出错的概率,管理员管理系统的时候如果发生了错误的情况系统会给出相应的提示。

(2)通过失物招领系统管理能够降低成本,可以节省大量的时间成本和人力资源,管理员能够提高管控能力。

1.2 研究意义

21世纪是大数据的时代,在信息管理的时候,由于数据量非常多,因此要对不少的数据进行处理,所以软件开发者根据用户的需求开发了不少的管理系统。计算机的较大好处在于自动化处理,这不仅能够提高失物招领系统的处理效率还能提高其安全性。处理越繁杂的数据这更能 体现出计算机处理数据的优势。失物招领系统数据量不少,需要处理的数据量非常多,如果刚开始的话管理员使用手工的方式进行管理的话,不仅容易出现问题且管理效率不高[2]。

1.3 主要内容

(1)本次针对失物招领系统提出实现方案,按照软件开发的一般流程进行前期的调研和分析确定软件是否能够正常实现、技术是否可行和系统功能模块的设计开发,最后确定了使用的技术和实现系统的方案。

(2)框架属于一种程序开发者实现的功能集合,可以帮助软件开发者快速构建软件层次架构和复用功能的一款工具,本平台框架使用了开源框架,具有比较好的开发优势,可以帮助软件开发者快速构建基本的程序开发框架出来,通过调用开源框架开源帮助程序开发者减少开发难度,提升了失物招领系统的安全和稳定性,能够帮助程序开发者完成系统功能模块的开发和数据的处理。

(3)管理员操作和管理失物招领系统的数据不仅需要框架规范约束还需要满足一定基础的标准,使用MySQL数据库中的约束关系能够根据系统中实体的关系从而生成数据库表,这样在实现系统的时候可以设置系统实体之间的关系[3]。

2 核心技术介绍

2.1 Python简介

Python是一种高级编程语言,由Guido van Rossum于1991年发布。它以简单、易读和易维护为设计目标,适合初学者和专家使用。Python支持多种编程范式,包括面向对象、过程化和函数式编程。它拥有丰富的标准库和广泛的第三方模块,广泛应用于Web开发、数据科学、人工智能、自动化脚本、科学计算和金融分析等领域。Python的解释器和标准库可在所有主要平台(Windows、Linux、macOS)上运行,其庞大的社区提供了大量的资源和支持,使其成为全球最流行的编程语言之一。

2.2 B/S结构

B/S程序架构方式是使用电脑中安装的各种浏览器来进行访问和使用的,相比C/S的程序结构不需要进行程序的安装就可以直接使用。B/S架构的运行方式是在远程的服务器上进行安装一个,然后在任何接入互联网的电脑上访问和使用。B/S架构的开发方式给用户带来了极大的便利,在任何时间和地点都可以使用开发的程序系统。

在B/S的结构中,用户可以在任何可以上网的地方访问和使用系统网站的功能,没有地域和时间等方面的限制,B/S结构是把程序完整放置到计算机网络的服务器上,通过计算机互联网给用户提供远程的网络服务。在三层体系结构的B/S系统中,通过浏览器,会员可以对很多服务器发出请求,B/S系统会很大程度的降低工作量,用户只需要安装运行较少的客户端即可,大量的工作将由服务器承担,另外,服务器也完成包括访问数据库,执行应用程序的工作等等。

2.3 mysql数据库介绍

Mysql数据库用于多用户和多线程服务器。本设计是基于SQL客户端和服务器模式的关系。MySQL数据库的优点是操作比较简单、符合web站点以及其他软件的使用,实现数据的存储[5]。可以用不同的语言以编程方式访问Mysql数据库。由于MySQL数据库具有源代码开放、响应速度快、使用方便等功能,越来越多的程序员选择MySQL数据库来构建数据库。

MySQL数据库使用的标准语言是SQL。MySQL数据库规模小、速度快、成本低是许多中小企业选择MySQL数据库的主要原因。

在使用了SQL server和MYSQL之后,对DB2和MYSQL的功能进行了比较,大部分程序开发者会选择MySQL数据库进行系统后才数据的存储,通过在JDBC中导入相应数据库的jar包来连接MySQL数据库,实现数据库存储。数据存储的过程中使用class.forname来进行驱动的,编程者在创建数据库后,程序通过DAO模式对系统数据库中的内容进行操作[6]。DAO模式是实现数据库和数据访问的主要对象。DAO模式作为数据操纵的对象被广泛应用。使用数据库是实现动态网站不可少的部分,只需安装数据库即可完成数据的存储,无需使用特定的物理位置进行修复。MySQL数据库具有运行速度快、可靠性高、安全保密等优点,大大降低了整体成本,非常适合中小型网站的开发。

2.4 Vue.js介绍

Vue.js核心的功能包括数据双向绑定、路由功能和状态管理。系统数据模型与前端视图显示的数据相绑定,这样可以使得只要修改前端界面的数据,那么系统数据模型的数据也会发生相应的改变。如果修改数据模型的数据,前端界面的数据也会发生相应的改变。如果软件开发者想要加入业务功能模块的话,需要在对应的路由中心配置业务模块,这样才可以通过请求跳转到不同的页面当中。Vuex为Vue框架的一种状态管理模式,有了Vuex模式能够实现多种组件的共享。

3 需求分析

3.1 可行性法分析

3.1.1 技术可行性

根据前期对系统功能的设计、确定,选择使用可行的软件结构和开发技术来完成系统的开发,系统在设计开发中的软件、架构、开发技术选择上均是使用了简单好用的开发的模型和别人成熟的解决办法,综合市面上的同类型平台,本次开发使用的技术是可行的,且能够在满足系统功能开发的前提下做到最少的开发开支以及学习成本和时间成本。且此次开发使用的WEB开发模式能够极大地快速构建、有大量的样本参考学习,所以也无需担心后期的技术维护和升级,通过对于事先调查研究的一些成熟的案例范本来看,本次的系统在设计完成上是可以的[7]。

3.1.2 经济可行性

失物招领系统从需求分析到最后设计实现的时候花费的时间不多,经济花费相对不是很多,失物招领系统需要运行的时候只需要一台普通的电脑即可,只要安装有必要的软件环境即可以运行系统。管理员在操作失物招领系统的时候相对简单,因此有更多的时间可以花费在修改系统的功能上。

3.1.3 社会可行性

本次开发的失物招领系统不违反法律和道德层次,操作界面相对简单,用户能够较方便地使用失物招领系统。随着计算机的快速发展,计算机技术已经在不少行业的应用,因此为这次设计的失物招领系统奠定了基础。

3.2 网站功能要求

从软件开发角度来说,软件开发最重要的步骤包括需求分析和产品设计。如果需求分析和产品设计做得好的话,那么会节省很多开发时间,可以更快地把软件研究出来。对失物招领系统的业务需求有了一定的了解之后,需要对失物招领系统每个角色的功能进行分析。对失物招领系统进行建模,可以清晰地知道失物招领系统用例者之间不同的关系和每个角色的功能。用例建模的时候包括用例描述和用例图,用例图可以通过图形化的方式描述不同角色的功能。用例描述能够将交互流程以文字的形式表现出来,用例描述是用例图的补充说明。

(1)用户

用户:登录、查看失物认领、个人中心、失物认领管理等。

图3-1 用户用例图

用例名称:用户角色用例

参与者:用户

前置条件:用户已经登录了系统

后置条件:系统信息保存到数据库中

基本操作流程:

用户登录到系统使用系统功能,可以认领失物

可选操作流程:

如果用户捡到失物,可以发布失物招领

(2)管理员:个人中心、用户管理、发布管理、失物招领管理、失物认领管理、业务系统管理。

图3-3 管理员用例图

用例名称:管理员角色用例

参与者:管理员

前置条件:管理员已经登录了系统

后置条件:系统信息保存到数据库中

基本操作流程:

管理员登录系统之后可以对系统的信息进行管理

可选操作流程:

管理员登录完系统之后可以对系统的信息进行管理,如果想要添加信息,则可以点击添加按钮添加系统信息,如果添加的信息不规范,则需要给出相应的提示。管理员想要搜索系统的信息,则需要在输入框中输入名称从而搜索出用户的信息。如果想要删除系统中的信息,则需要点击删除按钮,如果删除的信息记录跟别的表有关联,则不能够正常删除。修改系统信息的时候需要点击修改按钮,如果输入的修改信息不合法则不能够成功修改。

3.3 性能需求

(1)数据的安全性

失物招领系统每天的运行会产生很多数据,数据已经涉及到系统运行的每个部分中,因此数据的安全性变得非常地重要。系统需要对用户的密码作加密处理,用户的密码存在数据库记录的时候需要使用加密字符串进行处理,从而保证系统数据的安全性,用户在前台输入密码的时候需要采用特殊字符代替。

(2)系统的查询效率和响应速度

失物招领系统中很多模块都有查询的功能,有些查询功能还涉及到多表的查询。失物招领系统在运行了一段时间之后,业务量变得越来越多,因此,需要优化后端编写的数据库SQL语句,通过减少查询字段和增加限制条件能够使得查询的速度变快。为了能够提升失物招领系统的效率,需要优化系统代码和减少系统的时间复杂度。在前端页面中引入CSS文件可以在页面头部中进行引入,页面的尾部中引入js文件,这能够增加页面的响应速度[8]。

4 系统设计

对整个业务进行完整的需求分析之后,接下来需要从系统的设计介绍系统的各个功能。每个角色需要各司其职,对于每个系统的功能模块需要不同的代码实现逻辑。有些复杂需求需要经过修改和完善才能够最终确定。

4.1 系统功能结构

(1)登录

用户登录完成之后才可以使用系统的功能。用户在前端界面中可以输入用户名和密码登录。

图4-1 登录流程图

(2)用户管理

管理员输入用户名和密码登录之后可以在用户管理界面中可以对用户的信息进行管理。

图4-2 用户管理流程图

4.2 功能模块

图4-4 功能模块图

4.3 数据库设计

 软件开发阶段有一个重要环节是数据库设计,如果软件开发者设计得好数据库的话会对开发工作有好处,在设计数据库的时候要考虑到以后表是否会有扩展性。随着企业的发展,企业的业务需求会逐渐地发生转变,从而导致系统功能需要修改。如果系统功能发生改变的话,系统对应的数据库表也需要发生转变,因此数据库在设计的时候需要考虑到后续修改的需要,系统在设计的时候需要注意灵活性。本失物招领系统数据量不少很大,因此在使用数据库的使用选择的是MySQL,不用Oracle这种大型的数据库。数据库引擎选择使用InnoDB,InnoDB属于事物型引擎。如果系统有多张表需要同时存取的话,那么数据库引擎可以选择使用InnoDB。

4.3.1 概念模型结构设计

本失物招领系统的功能设计模块是根据用户的需求所设置,系统概念模型的设置其实质是搭建目标结构,这成为构建数据库的重要一步。

(1)将数据模型加以呈现和反馈,在处理数据的时候,能够满足用户的基本需求,同时呈现出事物一定的关联性。

(2)便于掌握。用户在使用失物招领系统的时候需要容易操作系统,只有这样,数据库设计才较为正确。

(3)一旦失物招领系统的需求发生改变的时候,失物招领系统能够快速调整和改变模型结构。

E-R图能够用来描述概念模型,在已经获取相关数据模型的情况下,可以根据用户的需求,设计出与之相匹配的实体。

图4-5 数据库E-R图

4.3.2 物理结构设计

本系统利用mysql数据库进行建立系统的各个表,数据库表能够用来存储系统的各项信息,数据库表的详细结构设计为如下:

(1)用户表。该表系统中用户的信息,对ID作为主键,原因是设置ID为主键可以标识表中每一行,用户表4-1所示。

表4.1用户表

列名

数据类型

长度

说明

id

bigint

主键

addtime

timestamp

创建时间

yonghuming

varchar

200

用户名

mima

varchar

200

密码

xingming

varchar

200

姓名

xingbie

varchar

200

性别

touxiang

varchar

200

头像

shouji

varchar

200

手机

(2)用户发布表。该表系统中用户发布信息,对ID作为主键,原因是设置ID为主键可以标识表中每一行,用户表4-2所示。

表4.2用户发布表

列名

数据类型

长度

说明

id

bigint

主键

addtime

timestamp

创建时间

wupinmingcheng

varchar

200

物品名称

wupinfenlei

varchar

200

物品分类

wupintupian

varchar

200

物品图片

wupinshuliang

int

物品数量

fabuzhuangtai

varchar

200

发布状态

shidaodidian

varchar

200

拾到地点

renlingdizhi

varchar

200

认领地址

faburiqi

date

发布日期

lianxidianhua

varchar

200

联系电话

yonghuming

varchar

200

用户名

userid

bigint

用户id

(3)失物认领表。该表系统中失物认领信息,对ID作为主键,原因是设置ID为主键可以标识表中每一行,用户表4-3所示。

表4.3失物认领表

列名

数据类型

长度

说明

id

bigint

主键

addtime

timestamp

创建时间

wupinmingcheng

varchar

200

物品名称

wupinshuliang

varchar

200

物品数量

wupintupian

varchar

200

物品图片

renlingdizhi

varchar

200

认领地址

renlingriqi

date

认领日期

renlingbeizhu

varchar

200

认领备注

yonghuming

varchar

200

用户名

xingming

varchar

200

姓名

shouji

varchar

200

手机

sfsh

varchar

200

是否审核

shhf

longtext

4294967295

审核回复

(4)公告资讯表。该表系统中公告资讯的信息,对ID作为主键,原因是设置ID为主键可以标识表中每一行,用户表4-4所示。

表4.4公告资讯表

列名

数据类型

长度

说明

id

bigint

主键

addtime

timestamp

创建时间

title

varchar

200

标题

introduction

longtext

4294967295

简介

picture

varchar

200

图片

content

longtext

4294967295

内容

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值