摘要
随着社会的发展,人们对于保护环境的意识逐渐增强,做好垃圾分类是每个人的责任和义务。传统方式中利用电视、媒体、网络进行宣传倡导人们分类垃圾,效果不佳且没有真正学会垃圾分类。基于微信庞大的用户群体优势以及小程序便捷、高效的免安装的特点,本系统充分满足人民群众生活垃圾分类的需求,激发了用户的使用兴趣,更加便捷的传播普及垃圾分类知识。
本系统利用微信小程序和SSM技术进行开发,该系统使用的数据库MySQL数据库,编程语言是Java,基本完成了系统设定的目标,建立起了一个较为完整的系统。本系统的角色分为管理员,用户。管理员可以对用户信息、垃圾分类、分类信息、热门搜索等功能进行后台管理;用户的主要功能有:垃圾分类、在线答题、个人中心。用户可以通过拍照识别、文字搜索、语音搜索、热门搜索等功能查询并显示分类建议,通过答题模块加强对于垃圾分类知识的学习。本系统响应了国家工作号召,提高了垃圾分类工作效率,实现对生态环境的保护,加强了人们环境保护、垃圾分类的意识。
关键词:微信小程序;垃圾分类;Java;MySQL
Abstract
With the development of society, people's awareness of environmental protection is gradually strengthened. It is everyone's responsibility and obligation to do a good job in waste classification. In the traditional way, TV, media and Internet are used to advocate people to classify garbage, which has poor effect and does not really learn how to classify garbage. Based on the huge user group advantages of wechat and the convenient and efficient installation free characteristics of small programs, this system fully meets the needs of people's domestic waste classification, stimulates users' interest in using, and more conveniently spreads and popularizes waste classification knowledge.
The system uses WeChat Mini Program and SSM technology for development, the system uses the database MySQL database, the programming language is Java, basically completed the goals set by the system, and established a relatively complete system. The roles of this system are divided into administrators, users. Administrators can manage user information, garbage classification information, popular search, and other functions in the background; the main functions of users are: garbage classification, online answering, and personal center. Users can query and display classification suggestions through functions such as photo recognition, text search, voice search, and popular search, and strengthen the learning of garbage classification knowledge through the answer module. The system responds to the national call for work, improves the efficiency of garbage classification, realizes the protection of the ecological environment, and strengthens people's awareness of environmental protection and garbage classification.
Keywords:Wechat Applet; Refuse Classification; Java; MySQL
目录
1 绪 论
1.1 研究背景和意义
2019年,住房和城乡建设部等9部门印发《关于在全国地级及以上城市全面开展生活垃圾分类工作的通知》规划,指出从2019年开始全国地级城市及地级以上城市全面启动生活垃圾分类工作,2025年底,全国地级城市及地级以上城市将基本建成生活垃圾分类处理系统,全面推动垃圾分类势在必行[1]。垃圾进行分类能减少垃圾处理的数量、减少占地面积,可以通过垃圾分类再进行人工处理转化为新能源,变废为宝,提高资源的利用效率,实现绿色发展、可持续发展。“双碳目标”是中国对世界的庄严承诺,垃圾分类是对绿色低碳生活方式的重要践行,也是实施“双碳”国家战略的重要任务[2]。目前,为响应国家号召,每个人都需要从自身产生的垃圾进行分类,主要的垃圾分类方式依然采用人工分类[3],不仅分类效率低下,而且极易出现分类错误的现象。
在当今,为了解决垃圾分类效率低下,开发设计了一套操作简单、使用便捷、分类准确率高的垃圾分类系统,本系统为一个能够通过处理信息的库系统,通过利用编程语言封装好的库函数能够编码实现垃圾分类系统,这样有助于提高程序开发者的编程效率,降低垃圾分类系统的开发成本,互联网行业的迅速发展已经为垃圾分类系统发展奠定了基础[4]。垃圾分类系统主要分为可回收垃圾、有害垃圾、厨余垃圾、其他垃圾这四大种类常见垃圾,通过微信小程序拍照识别、文字搜索,语音搜索废弃物即可进行垃圾分类投放,在环境保护意识愈加强烈的当下,面对五花八门的垃圾,人们通常依靠主观判断来进行分类,而这种判断存在差异性和易忘性,在线答题可以帮助人们增加对分类知识的学习,让人们真正学会垃圾分类,提高了垃圾分类的准确性,促进资源回收利用,助力环境保护。
1.2 国内外现状分析
垃圾分类系统始于二十世纪,经过了多年的发展,发展得相对完善,基本可以实现计算机对垃圾分类系统的数据进行管理。到了现今垃圾分类系统有了很大的变化,我国垃圾分类系统发展速度快了非常多,当时推出了在国内影响较大的自动化处理系统,自动化系统能够体现出社会分工的不同,使得垃圾分类系统的管理员能够专注于系统质量的提高。在这之前呢,垃圾分类系统发展速度相对来说比较慢,无论是技术还是理论研究上都没有很大的突破。国外发展的垃圾分类系统的速度要明显快于我国,当时的垃圾分类系统由大型科技公司开发,垃圾分类系统因此由单一变为集成的系统。更加新型的垃圾分类系统虽然还没有出现,但是随着互联网行业的发展,人们有了新的需求,因此有良好的和数据库可以使得管理员的工作效率有所提高[4]。
1.3 研究主要内容
- 本文针对垃圾分类系统提出实现方案,按照软件开发的一般流程进行前期的调研和分析确定软件是否能够正常实现、技术是否可行和系统功能模块的设计开发,最后确定了使用的技术和实现系统的方案。
- 框架属于一种程序开发者实现的功能集合,可以帮助软件开发者快速构建软件层次架构和复用功能的一款工具,本平台框架使用了SSM开源框架,SSM具有比较好的开发优势,可以帮助软件开发者快速构建基本的程序开发框架出来,通过调用SSM开源框架开源帮助程序开发者减少开发难度,提升了垃圾分类系统的安全和稳定性,能够帮助程序开发者完成系统功能模块的开发和数据的处理。
- 本系统以垃圾分类为研究对象,旨在为其设计开发一套有效的垃圾分类系统。通过需求分析、概要分析和详细分析等阶段,最终将完成拟定的各项功能。本系统的用户将分为管理员以及员工两种类型,他们所具有的操作权限有差异。其中管理员的功能模块有:后台首页,用户管理、热门推荐、垃圾分类、垃圾管理;其中用户的主要功能模块有:垃圾分类、在线答题、个人中心。用户可以通过拍照识别、文字搜索、语音搜索、分类热搜等功能查询并显示分类建议,通过答题模块加强对于垃圾分类知识的学习。
2 相关技术介绍
2.1 Java语言
Java是一种面向对象的语言。具有安全、通用的优点。互联网和数据中心都有应用。引入Java动态Web和跨平台,初步形成了流行的Java浏览器。此后,Java语言被广泛应用于网页中,并支持越来越多的浏览器。同时,Java语言也在不断完善。相对复杂的编程语言C/C++来说Java语言要简单许多,Java和C++编程语言有不少相似之处,Java编程语言开发者把C++中少使用到的特性去除了,使其更加精炼。面向对象的很大特性为将类似的功能装进同一个对象当中,程序员需要利用特定的对象完成对应的功能。Java编程语言编写的程序不需要像C++一样手动管理内存,Java能够自动清理内存垃圾。使用Java语言编写好的应用程序只需要编译一次就可以在不同的平台上使用程序。
2.2 SSM框架的优势
SSM框架里的子框架都属于开源框架,开源框架具有非常多的好处,例如程序员可以在其基础之上二次开发,而且不用考虑费用的多少,省去了很大的一笔开支。其次,SSM框架具有优越的性能能够为程序开发者开发Web程序带来很大的便利,能够更好地开发出软件。
2.3.1 Spring框架的优势
(1)Spring框架属于JavaEE技术的一种开发框架,能够解决开发项目的复杂性。
(2)开源框架Spring可以帮忙IOC容器控制对象依赖的作用,这样可以解决耦合的问题。Java语言实例化Bean对象筑成依赖项,因为它有反射功能。AOP功能属Spring于,管理员管理与项目无关的代码。这样有利于减少代码的冗余,并且降低功能模块之间的耦合程度。
(3)Spring能够更加简单地对程序进行测试,通过非容器的方式测试系统,同时,Spring框架还可以集成其它Web框架从而操作系统的数据。
2.3.2 SpringMVC框架的优势
SpringMVC框架相比于Structs框架具有的优点包括:
- Structs拦截级别是类的拦截,而SpringMVC的拦截是在方法级别,因此相对于Structs框架更容易实现Restful风格。
- Structs框架设计模式采用的是多例的形式,类属性需要设置为方法共享,SpringMVC采用的设计模式则是单例的形式,不用每次都去创建和销毁对象,所以速度来说要相对更快些。
- Structs框架的控制器采用Filter进行实现,而SpringMVC核心控制器则为Servlet,Servlet处理业务流程要比Filter相对简单和效率更高。
- SpringMVC框架无论是项目管理还是安全性都要比Structs来得更好,配置文件相比起来也是少了很多。
2.3.3 MyBatis框架的优势
(1)MyBatis框架的不断更新,程序开发人员操作数据库变得更加简单。
(2)MyBatis框架掌握基本要领就可以管理数据库,而Hibernate框架则要求开发者掌握特有的数据库操作语句。
通过近几年的发展,Structs框架已经很少开发者在使用了,项目搭建的时候很多开发者会选择使用SpringMVC,很多开发者在开发项目的时候会选择使用SSM框架。MyBatis框架能够支持自定义SQL语句,使得数据库优化变得较为容易,从而性能更高。不久前还出现了SpringBoot框架,SpringBoot框架是在Spring基础上发展的快速整合包。
2.3微信小程序技术
微信小程序能够提供给用户轻便的服务,用户在手机上就可以打开微信小程序享受其服务。用户通过线下扫一扫的方式可以获取小程序应用,在微信的发现页面可以搜索不同的小程序,小程序整个文件占用的内存过小,所以小程序页面的响应速度非常快,开发微信小程序的成本大大降低。微信小程序的益处更加适合非刚需类低频应用。
2.4 MySQL数据库
MySQL数据库的优点是操作比较简单、符合微信小程序以及其他软件的使用,实现数据的存储。小程序在开发的时候,一般程序员都是选择MySQL数据库来存储系统的信息,它也是不同数据关系数据中其中的一种。关系型数据库能够把系统的信息存放在关系表当中,这种方式不仅能够提高程序员查询系统的速度还能够提高系统的性能。MySQL被人们划分为两种版本,分别是社区版和商业版,用户可以使用免费开源的社区版本,而且性能也算得上卓越。
3 需求分析和可行性介绍
3.1 需求分析
最终完成的垃圾分类系统需要设置以下的目标:
(1)用户登录垃圾分类系统的时候在操作上不能够过于复杂,程序开发者在设计的时候需要简化系统操作的步骤。
(2)系统需要设置用户权限以区分不同的用户角色。
(3)系统所使用的数据库需要有并发和安全的作用。
(4)设计实现的垃圾分类系统需要允许多个用户登录。
(5)管理员登录垃圾分类系统之后能够对系统的信息通过数据库SQL语句进行管理[5]。
3.1.1用户
用户的主要功能模块有:垃圾分类、在线答题、个人中心。用户可以通过拍照识别、文字搜索、语音搜索、分类热搜等功能查询并显示分类建议,通过答题模块加强对于垃圾分类知识的学习。
管理员主要是对前台的信息进行管理,其中管理员的功能模块有:后台首页、用户管理、热门推荐、垃圾分类、垃圾管理;