基于Java的失物招领系统.docx
- 文档编号:22820084
- 上传时间:2023-04-28
- 格式:DOCX
- 页数:29
- 大小:556.31KB
基于Java的失物招领系统.docx
《基于Java的失物招领系统.docx》由会员分享,可在线阅读,更多相关《基于Java的失物招领系统.docx(29页珍藏版)》请在冰豆网上搜索。
基于Java的失物招领系统
中外文摘要
摘要:
自古以来,中华民族传统美德源远流长,这其中就包括拾金不昧。
随着网络的日益发展,各种网络化应用应运而生,与拾金不昧相对应的网上寻物大大便利了人们的生活。
网上寻物,指的是人们通过网站搜寻自己丢失物品所在。
本文介绍的是一种校内失物招领系统,学生们通过注册系统账号,在系统中浏览失物信息找寻自己丢失的物件,也可发布所拾物品的信息找寻失主。
这样的失物寻找系统为同学们开辟了一条新的寻找所遗物件的道路。
本文基于国内外研究现状及已开发系统的基础上和在本课题范围内,根据老师任务书的要求设计了一套基于SpringMVC的失物招领系统。
本系统的集成开发环境是Eclipse,使用MySQL作为数据库管理系统,Web服务器采用Tomcat,运用SpringMVC及Spring3.0框架技术实现。
为了充分利用网络信息化的优势,本系统以服务用户和管理员为目的,以浏览器/服务器(B/S)结构为基础,实现整个失物招领的全过程。
整个系统包主要包括用户模块以及管理员模块,用户模块是主要是实现的功能包括发布失物以及捡到物品的发布,以及留言感谢等功能,而管理员模块则实现失物招领的确认,物品分类,报失,发布新闻公告等功能。
开发这套操作方便、功能齐全、界面简洁、维护简单的失物招领系统进一步体现的计算机以及互联网的快速发展,更能体现互联网时代的优越性。
本文利用查阅相关的文献结合自己所学的专业知识,在老师的悉心指导下,通过不断的修改和完善,使整个失物招领系统的功能更加完善,使论文符合毕业答辩的预期要求。
关键词:
eclipse,mysql,失物招领
绪论
1.1开发背景
信息时代的到来使互联网走进人们的生活,我们也越来越依赖于互联网所带来的便利生活。
我们在通过互联网获得信息的同时,也在互联网上发布信息。
由于用户体验和信息质量作为评判网站质量的两大重要标准,信息的齐全和完备对用户吸引至关重要。
而网站的稳定性和完全性是其他两个重要评判标准,稳定性由代码质量和数据库优化程度决定。
安全性主要体现在用户资料的安全以及网站后台的完全,所以对资料进行加密处理是必要的。
由于现有系统的操作复杂性,未能获得实际效果,所以开发一套用户便捷且信息齐全的系统存在很大的必要性。
网络对于人们来说,已经不仅仅是浏览信息,获取信息这样单一的功能实现,而是逐渐成为人们生活方式和生活态度的体现。
系统的设计要契合人们的理念,要服务于广大受众。
1.2开发意义
高校由于学生人数多且上课地点分散,一些个人物品,如学生证,信用卡,钥匙,书籍等,容易发生丢失。
这样的物品丢失对于大学生来说司空见惯,在传统失物招领的办法中,由于找回失物的可能性小,很多重要物品一旦丢失就无从下手。
且传统失物招领办法,如粘贴告示等,存在着效率低下,安全度低的问题,已无法满足人们的需求。
同时给失主形成不必要的经济损失,同时也增加了办理人员的工作量。
相比之下,通过网络获取失物信息并找寻失物的方法成功率大大提升,失物招领系统应运而生。
该系统的开发致力于减小失主经济损失,然后可以更好地服务于学校师生和工作人员。
本文通过研究借鉴国内外优秀网站,并用Java为开发语言,MySQL数据库作为基础,结合相关的失物招领信息,使用MyEclipse进行开发设计。
所开发系统具有延展性强,伸缩性好,兼容度高,维护简易,界面美观,使用方便等特点。
同时在系统操,作上,为了扩大用户,且方便管理员,具有傻瓜式操作的特点,只需懂得基本的计算机操作流程就能熟练掌握该系统,操纵后台,因此适用性强大。
本次的系统开发是失物招领网站网络化的推进,具有深远意义。
该系统实现了集中的失物招领功能,一方面既可以发布所拾失物信息,即把自己捡到的东西,进行信息描述发布到网站中;另一方面也可发布自己所失物品信息,通过信息发布,求助广大用户寻找失物。
同时还实现了爱心功能,可以在网站上发布自己的疑难杂问,寻求帮助。
系统多功能化可以是用户规模扩大,同时也为用户提供了更高效的生活效率。
尽管在各类高校中都存在失物招领中心,但纸质化信息登记一方面在记录查询上耗费大量实践,并且存在信息时效性问题。
如若失主幸运看到自己的失物信息,失主还得进行物件报失,以及到失物中心确认失物保存情况,并进行繁琐的信息登记。
因此失物招领系统的开发势在必得,必会手打广大师生的积极响应和支持,具有广泛的意义。
2开发技术介绍
目前系统的主流开发模式主要分为主机终端模式、文件服务模式(F/S)、Web浏览器/服务器模式(B/S)、客户机/服务器模式(C/S),其中简单的系统的开发大多是都是基于Web浏览器/服务器模式(B/S)为基础。
所以本文的失物招领系统以Web浏览器/服务器模式(B/S)为开发环境,以MySQL数据库为后台,基于SSM框架,利用JSP技术实现整个失物招领系统的开发。
2.1系统平台概述
本文以Web浏览器/服务器模式(B/S)作为开发环境,B/S结构是基于WEB兴起后的使为缓解服务端压力而实现的一种的结构模式。
作为客户端最主要的应用软件Web浏览器,B/S系统会根据用户需求操作发出申请,通过浏览器的服务器端做出相应的响应。
通过客户与服务器之间的连接将系统核心部分的功能在服务器上实现,进一步简化,维护整个系统的开发和使用。
本设计采用的是MySQL数据库,MySQL开源免费,节约了开发成本。
图2-1B/S结构
2.2Java语言
1995年5月,SunMicrosystems公司推出新的程序设计语言Java与Java平台,简称“Java”。
Java语言的优势特征包括以下几点:
1.使用虚拟机运行Java
与翻译成机器语言的代码不同,Java语言是直接利用虚拟机对源代码进行编译的过程,这也是Java语言的独特优势,正是由于其独特的编译方式,使得Java解释器只需要正确引用相应的类,不需要进行连接。
2.其是一门面向对象的语言
Java是一种面向对象的编程方式,代码的运行过程中是以对象为代表,通过利用方法实现操作,这也Java编程思想的核心。
基于Java面向的对象的核心编程思想,在编程过程中,程序员可以根据需要创建相应的类以及调用Object类中相对应的方法,实现整个系统的功能做出与需求相对应的应用程序
与Java语言不同的是C语言和C++语言是一种面向过程,抽象化的程序设计语言,所以C语言和C++语言需要利用外部声名的方式系统及进行运行调试,所以Java语言在一些方面上更优于C语言与C++语言。
3.编程过程中不需要编写其头文件
Java区别于其他语言的是,在一个文件中存放与类相关的所有信息。
在程序运行过程中,由于方法只放置在某一固定位置,为了进一步提高编程的效率减少非同步错误,实现过程中方法与定义是同时进行的。
因此,头文件的作用被编译后的文件取代的过程只需要在声明类对象之前保证编译之后的单元存在即可。
4.用Package来分解Java命名空间
Java利用独特的方式对划分空间进行命名,即大家俗称“Packgage”。
由于其独特的命名方式,其相同命名的两个类所属的包不同,其代表的本质意义也不相同,所以在编写过程中需要保证在所属的包中正确放置相应的类。
5.Java存在异常信息
异常信息检测作为Java编程中较为成熟的部分已经被清楚在异常相关信息中说明,其编程过程中程序员编程方法出现异常信息,处理器就会自动对异常信息进行检测,并且判断其是否发生。
6.其编程过程存在字符串的常量对象,编程方式由字符串方式取代原始的字符数组。
C语言中的字符串数组与Java利用字符数组生成字符串中字符数组还由较大的区别。
所以文章最终通过增加使用字符串进行编程以进一步减少错误的出现。
7.不存在指针
其对应参数的传递由传统指针的方式转换为句柄的方式,导致最终只能利用数组索引的方式进行编程操作。
2.3web服务器
本文是以Tomcat服务器为基础,Tomcat服务器因为其计算运行时占用内存小,速度快,扩展性好而深受广大程序员的喜爱,具有应用系统常见的邮件服务以及支撑负载平衡等功能,更重要的是Tomcat具有较大的包容性,任何程序员都能根据自己的需求以及兴趣通过不断改进与完善更改加入其需要的功能。
2.4SSM开发框架介绍
本文以SpringMVc+Spring+mybatis三大技术框架为基础,利用三层J2EE开发体系架构,通过利用校验和异步刷新的ajax进一步提高了系统的效率和表现。
3系统分析
3.1可行性分析
通常来说,我们对系统进行可行性分析,就是对系统在开发或者使用过程中可能存在的问题进行利弊分析,通过分析结果对预定目标的实现与否进行准确判断。
系统的可行性分析是站在全局的角度上,用比较简略的方式对系统进行比较完备的分析,是我们开发系统的第一步。
可行性在应用上体现为四个方面:
经济可行性,技术可行性,操作可行性以及法律可行性。
其中最先考虑的也最重要的经济可行性以及技术可行性。
这两方面是系统开发人员必须面对的,是系统开发的前提条件。
经济条件不满足,无法有足够的资本投入;技术不支持,一切设想都只是纸上谈兵。
同时操作可行和法律可行也是必须满足的条件。
3.1.1技术可行性
在系统研发中大多使用Java为开发平台。
Java的发展时间长,使用较为成熟方便,受到很多研发人员的青睐。
本位所介绍的系统也是使用JavaEE为开发平台,除了考虑到Java的应用方便,它的技术可行性也是一个重要原因。
使用JavaEE进行开发足够支撑整个系统的研发过程,满足了应用开发的技术可行性。
3.1.2操作可行性
操作简便是一个成熟软件不可缺少的特点。
操作简易程度决定了用户规模的大小。
操作简单则可令使用人员的范围变广,相反的操作专业性强则对使用人群的要求高,则用户受限。
因此研发者在开发过程中必须考虑到操作难度。
本文所介绍的系统也考虑到了这个问题,在操作上简单易上手,适用于所有人群。
熟悉的页面设计和用户操作流程,使用户在无指导的情况下,可以快速上手本系统的操作,因此本系统并无提供使用说明或者用户手册。
3.1.3法律可行性
法律可行性在系统开发中属于基本的要求之一。
任何违背法律的行为都会被避免,本系统开发人员在开发过程中也详细考虑了这方面的问题,因此该系统完全满足法律可行性,使研发能够继续。
3.2系统用例分析
图3-1简洁明了的说明了本系统的功能实现,清晰展现了系统管理员和用户之间的业务往来操作。
本系统包含的三大模块为物品,感谢信和评论,功能完备,操作明确。
图3-1系统的用例图
3.3功能模块设计
失物招领包含一下两大功能:
(1)管理员功能:
包含密码修改,用户管理,物品信息登记及分类,物品状态更改,评论及感谢信审核等
(2)用户功能:
包含用户注册,丢失物品信息发布,所拾物品信息登记,评论撰写,感谢信发表等
其功能模块示意如图3-2所示:
图3–2系统结构图
3.4数据库设计
3.4.1数据表说明
本系统数据库包含以下八个表,分别为:
(1)管理员信息表:
对管理员进行信息登记,包括设置管理员账号及密码;
(2)报失物品信息表:
对用户所丢失物件进行信息登记,包括物品信息,丢失过程,报失人联系方式等;
(3)物品分类信息表:
对用户所上传物件进行分类,便于用户浏览及搜寻相关信息;
(4)感谢信信息表:
对用户感谢信进行信息登记,包括感谢信内容,日期,以及对感谢信进行审核等;
(5)留言信息表:
对用户留言信息进行审核,并对留言信息进行登记,包括留言内容,发表日期等,同时对回复信息进行提醒通知;
(6)所拾物品信息表:
对用户所拾物品进行信息登记,包括物品特点,物品名称,拾捡时间地点登记;拾捡人信息登记等;
(7)新闻公告信息表;对所发布的新闻公告进行信息登记,包括新闻标题,内容,图片,发布时间等;
(8)用户信息表;对用户信息进行登记,包括用户账号注册,登陆密码设置,用户呢称设置,联系方式等。
表名
说明
功能
admin
管理员登录信息表
存储管理员的相关信息
blost
报失物品相关信息表
存储,登记报失物品的相关信息
fenlei
物品分类相关信息表
存储物品分类的相关信息
ganxie
感谢信记录信息表
记录感谢信的相关信息
liuyan
留言记录信息表
记录留言的相关信息
lost
捡到物品相关信息表
存储,登记捡到物品的相关信息
notice
新闻公告发表信息表
记录新闻公告的相关信息
user
用户登录信息表
存储用户的相关信息
3.4.2逻辑设计
1.admin(管理员信息表)
此表用于记录系统所有管理员的基本信息,包括自动编号,管理员账号,管理员密码等信息。
字段名
说明
类型
长度
是否为空
是否主键
id
自动编号
int
10
否
主键
adminname
管理员账号
varchar
50
是
否
pwd
管理员密码
varchar
50
是
否
2.blost(报失物品信息表)
此表包含了丢失物品的基本信息,对丢失物品进行登记,包括物品名称记录,丢失物品分类,上传物品图片,描述物品特点,详细表述物品丢失过程(时间,地点),最后进行报失人员信息联系方式填写,报失日期填报等。
字段名
说明
类型
长度
是否为空
是否主键
id
自动编号
int
10
否
主键
name
报失物品名称
varchar
50
是
否
fenlei
物品分类
varchar
50
是
否
pic
图片
varchar
150
是
否
tedian
报失物品特点
varchar
3000
是
否
addr
丢失地点
varchar
255
是
否
sdate
丢失时间
varchar
50
是
否
tel
报失人联系方式
varchar
50
是
否
stime
报失日期
varchar
50
是
否
uname
用户
varchar
50
是
否
zt
是否审核
varchar
50
是
否
3.fenlei(物品分类信息表)
此表用于对系统所登记的所有物品进行分类,对物品进行自动编号并实现自动分类。
字段名
说明
类型
长度
是否为空
是否主键
id
自动编号
int
10
否
主键
name
物品分类名称
varchar
50
是
否
4.ganxie(感谢信信息表)
此表用于记录用户感谢新内容,包括对感谢信进行自动编号,对感谢信内容进行详细登记,(包括标题,内容,发表时间),管理员对感谢信进行审核等。
字段名
说明
类型
长度
是否为空
是否主键
id
自动编号
int
10
否
主键
title
感谢信标题
varchar
50
是
否
neirong
感谢信内容
varchar
3000
是
否
zt
审核状态
varchar
50
是
否
uname
用户
varchar
50
是
否
stime
感谢时间
varchar
50
是
否
5.liuyan(留言信息表)
此表用于记录用户留言的相关信息,包括对留言进行编号,记录留言内容、留言时间,通知回复消息等。
字段名
说明
类型
长度
是否为空
是否主键
id
自动编号
int
10
否
主键
title
留言标题
varchar
50
是
否
neirong
内容
varchar
3000
是
否
huifu
回复
varchar
250
是
否
uname
用户
varchar
50
是
否
addtime
时间
varchar
50
是
否
6.lost(捡到物品信息表)
此表用于登记用户所拾物品信息,包括对所拾物品进行自动编号,所拾物品消息信息描述,对所拾物品进行分类,拾捡过程(包括时间,地点)描述,拾捡人姓名、联系方式登记等。
字段名
说明
类型
长度
是否为空
是否主键
id
自动编号
int
10
否
主键
name
失物的名称
varchar
50
是
否
fenlei
物品分类
varchar
50
是
否
tedian
失物的特点
varchar
3000
是
否
addr
捡拾地点
varchar
50
是
否
sdate
捡拾时间
varchar
50
是
否
xingming
捡拾人名称
varchar
50
是
否
tel
捡拾人联系方式
varchar
50
是
否
uname
用户
varchar
50
是
否
zt
状态
varchar
50
是
否
stime
存储时间
varchar
50
是
否
7.notice(新闻公告信息表)
此表用于说明系统内所有表布新闻的详细信息,包括标题,内容,图片及发布时间等。
字段名
说明
类型
长度
是否为空
是否主键
id
自动编号
int
10
否
主键
title
标题
varchar
150
是
否
pic
图片
varchar
200
是
否
neirong
内容
varchar
3000
是
否
addtime
时间
varchar
50
是
否
8.user(用户信息表)
此表由于登记用户的基本信息,包括用户注册账号,登陆密码,用户昵称,联系方式等。
字段名
说明
类型
长度
是否为空
是否主键
id
自动编号
int
10
否
主键
username
用户账号
varchar
50
是
否
pwd
登录密码
varchar
50
是
否
sex
性别
varchar
20
是
否
name
姓名
varchar
50
是
否
tel
手机
varchar
50
是
否
zt
状态
varchar
50
是
否
4详细实现
4.1系统登陆
系统的首界面设置了系统管理员以及用户的登录形式,利用SESSION方式验证,以进一步确保系统的安全性。
管理员与用户通过注册相应的账号密码,前台通过管理员与用户输入的账号与密码与后台的admin数据库进行比对,通过异步检测的方式进行验证,保证系统安全快速的登录。
其登录界面的具体分布如图4-1所示:
图4-1登录界面
提交按钮点击之后,相应的执行form表单中的action/check提交事件,具体调用Springmvc的loginController.java类中的方法login,利用mybatis函数实现,通过数据库的交互模式,实现用户与管理员的登录。
实现代码
图图4-2登录实现代码
4.2报失物品模块
物品报失模块主要利用数据库表单的形式对报失物品进行管理,主要包括报失物品的具体品类、具体名称、是否存在图片信息、报失物品特点,丢失地点,丢失时间,报失人的联系方式、具体报失日期、是否通过管理员审核等,具体的报表形式如图4-3所示:
图4-3报失物品模块界面
通过报失物品的管理的点击,位于SpringMVC的blostController类中的blostlist方法被执行,在blostlist.jsp页面上利用jsp的EL表达式,通过数据库blost物理表与属于mybatis的实体类com.mapper包的下面blost.xml与blostMapper.java方法相交互,将与html结合的详细报表内容进行输出。
报失物品的添加功能主要是通过javacript验证页面验证通过实现报失物品的添加,javacript验证页面验证的验证信息主要包括与前面报失物品模块中数据库表单中的内容,有具体品类、具体名称、是否存在图片信息、报失物品特点,丢失地点,丢失时间,报失人的联系方式、具体报失日期、是否通过管理员审核等,通过所有的验证信息才能完成报失物品的添加操作。
报失物品的具体添加界面如图4-4所示:
图4-4添加报失物品界面
保存按钮被点击之后,执行调用位于SpringMVC的blostController.java类中insertblost下的blostAdd方法,验证信息的执行与操作是通过调用mybatis中blostMapper.java和blost.xml的两个实体类实现,在数据表blost中保存页面信息。
最终实现blostadd.jsp页面上的form表单中的aciton="blostinsert"的提交动作,实现表单提交。
4.3物品分类模块
本物品分类模块主要实现对主要实现对的物品分类表的(物品分类名称)数据管理;系统截图如下所示:
图4-5物品分类模块界面
通过报失物品的分类管理的点击,位于SpringMVC的blostController类中的blostlist方法被执行,利用jsp的EL表达式,通过数据库fenlei物理表与属于mybatis中com.mapper的实体类下面的fenleiMapper.java和fenlei.xml方法相交互,在fenleilist.jsp页面上将与html结合的详细报表内容进行输出。
报失物品分类的添加功能主要是通过javacript验证页面验证通过实现报失物品分类的添加实现的,物品的分类信息主要填写物品的分类名称等信息。
报失物品添加界面如图4-6所示:
图4-6添加物品分类界面
保存按钮被点击之后,执行调用位于SpringMVC的fenleiController.java类中insertfenlei下的fenleiAdd方法,验证信息的执行与操作是通过调用mybatis中fenleiMapper.java和fenlei.xml的两个实体类实现,在数据表fenlei中保存页面信息。
最终实现blostadd.jsp页面上的form表单中的aciton="fenleiinsert"的提交动作,实现表单提交。
4.4感谢信模块
感谢信模块主要利用表单数据库的形式对感谢信以及感谢表进行管理,其管理的主要方面包括感谢的标题,对象,时间,管理员审核状态,具体内容等方面,感谢模块具体的系统界面图如图4-7所示:
图4-7感谢信界面
通过感谢信管理的点击,位于SpringMVC的ganxieController类中的ganxielist方法被执行,利用jsp的EL表达式,通过数据库ganxie物理表与属于mybatis中com.mapper的实体类下面的ganxieMapper.java和ganxie.xml方法相交互,在ganxielist.jsp页面上将与html结合的详细报表内容进行输出。
感谢信的添加功能主要是通过javacript验证页面验证通过实现感谢信添加实现的,感谢信添加的信息与感谢模块包括的主要内容性对应,主要包括感谢的标题,对象,时间,管理员审核状态,具体内容等方面的信息。
感谢信添加界面如图4-8所示:
图4-8感谢信界面
保存按钮被点击之后,执行调用位于SpringMVC的ganxieController.java类中insertganxie下的ganxieAdd方法,验证信息的执行与操作是通过调用mybatis中ganxieMapper.java和ganxie.xml的两个实体类实现,在
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 Java 失物招领 系统