由于经济社会的发展,人民的生活也在不断改善,但是,城市的垃圾仍旧是影响它们的主要原因,若不及早加以解决,将给我们的生态系统造成极大的破坏。因此,我们应该加强对城市垃圾的回收、处理,但同时也应该积极鼓励社区居民的参与,以便让他们齐心协力,一起维护我们的绿色生态精神家园。过去,人类通常只会考虑如何解决垃圾处理的问题,而忽略了其中的经济社会影响。然而,由于经济社会发展,人类的回收行为受到了许多不同的影响,这就需要我们更加全面地考虑如何供给更好的人类社会日常生活公共服务[1],以实现环境的可持续性。
这篇论文讨论的重点在于如何制定一个高效的垃圾分类管理系统。我们将会深入探讨这个系统的各个部分,包括用户的需求、工作流、数据库架构以及其他相关的技术。我们还将会进行一些实际的测试,以便更好地完成这项工作。通过引入最新的电脑科学与互联网技术,我们可以大幅度优化目前的垃圾分类管理系统,从而极大地提升其运行的效率。
关键词:垃圾分类管理系统; springboot;mysql数据库
ABSTRACT
Due to the development of the economy and society, people's lives are constantly improving. However, urban garbage remains the main cause of its impact. If not addressed early, it will cause great damage to our ecosystem. Therefore, we should strengthen the recycling and treatment of urban garbage, but at the same time, we should actively encourage the participation of community residents, so that they can work together to maintain our green ecological spiritual home. In the past, humans usually only considered how to solve the problem of garbage disposal, and ignored the economic and social impacts involved. However, due to economic and social development, human recycling behavior has been affected by many different factors, which requires us to consider more comprehensively how to provide better public services for daily human life in order to achieve environmental sustainability.
The focus of this paper is on how to develop an efficient garbage classification management system. We will delve into various parts of this system, including user requirements, workflow, database architecture, and other related technologies. We will also conduct some practical tests to better complete this task. By introducing the latest computer science and Internet technology, we can greatly optimize the current garbage classification management system, thus greatly improving its operation efficiency.
Key words: Garbage classification management system; Springboot; MySQL database
目录
4.3.2 管理员用户模块计.................................................................................................................................21
1概述
1.1 研究背景和意义
由于全球经济社会的发展,城市的规模和数量都在扩大,但是,“垃圾围城”的出台却给许多城市造成了严重的影响。因此,研究和推广可持续的垃圾管理和减排措施,以及采取先进的科学技术,以便将生活垃圾进行源头分类和资源化处理,是当务之急。
随着环境污染日益严重,许多居民开始意识到应该采取行动,比如采取分类措施,把各式各样的废物统统归类,而且还能够区别出可再利用和非再利用的物品,从而减少对环境的污染。由于日常用品的繁杂性,使得很难将其归纳到一个明确的分类中;此外,缺乏完善的法律规定,使得许多人毫无顾忌地将其扔弃,从而导致了当今社会的垃圾乱扔乱扔的状况。对于我们来说,如何正确地处理垃圾已经不再是一个紧要的任务。因此,采取有效的措施来实施垃圾分类已经不再是必要的。根据相关的法律法规,我们应该采取措施,如建立垃圾收集、转移、清扫等,使其转化为可利用的公共财产。通过进行分类,我们可以有效地发挥垃圾的潜在价值,达到最优化利益。
随着环境污染日益严重,环保理念已经深入到每个人的心中,如何将享受生活和环保意识结合起来,已经成为当今社会的一个重要课题。然而,由于“生态"的理念仍然被许多城市所忽视,许多人仍然无法做到这一点。因此,居民急切需要一种既符合当代审美标准,又能满足他们的快乐需求的产品。为此,我们开发了一个垃圾分类管理系统识别系统[2],它旨在深入了解居民的回收行为和需求,并综合考虑他们对环境保护的态度、期望的回收利用方式,从而实现垃圾的全面分类。同时提供圾分类知识,用户了解当下社会存在的污染问题及相关的热点问题。
1.2 国内外研究现状
1.2.1 国内研究现状
在国内学者在垃圾分类管理系统识别系统方面的研究主要集中在深度学习和图像识别技术的应用上。其中,深度学习技术是目前垃圾分类领域的热门技术,各种深度学习模型被成功应用于垃圾分类管理系统中。一些研究人员利用Inception-v3模型开发了一种新的垃圾分类管理系统,它采用了迁移学习的原理,并且在数据的预处理、加工以及优化的过程中,获得了良好的准确性;此外,他们也利用卷积神经网络(CNN)来完成垃圾的准确性检测,从而达到更加准确的结果。 此外,一些学者也将传统的图像处理技术与深度学习技术相结合,如基于颜色和纹理特征的垃圾分类方法[3]、基于纹理描述符和SVM分类器的垃圾分类方法等。
1.2.2 国外研究现状
国外学者在垃圾分类管理系统识别系统方面的研究也非常活跃。欧美地区的研究主要集中在计算机视觉和深度学习技术的应用上。其中,深度学习技术的应用是目前的主流。例如,有学者提出了一种基于深度学习和卷积神经网络的垃圾分类方法,该方法使用了ResNet50模型和多标签分类方法,达到了较高的识别精度;还有学者使用改进的AlexNet模型对垃圾图像进行分类,实现了较高的准确度。 此外,一些学者也将传统的图像处理技术与深度学习技术相结合,如基于颜色和纹理特征的垃圾分类方法、基于形状特征的垃圾分类方法等[4]。 总体来说,垃圾分类管理系统识别系统的研究在国内外都有较为活跃的进展,未来还有很大的发展空间。随着智能化技术的不断发展和深度学习算法的不断优化,垃圾分类管理系统的识别精度和实用性将会得到更进一步的提高[5]。
1.3研究目标和内容
通过对市场的深入分析,结合国内外最新的研究成果,我们采用了先进的系统开发和设计技术,最终完成了这一系统的设计。
本文共有七章,如下所示。
第一章详细阐释了垃圾分类管理系统处理技术的重要性,并对当前及未来相关技术进行了深入探讨;第二章则对相关技术进行了全面分析,并提供了一个完整而有效的论文框架。
本文的第二章将深入探讨使用的开发技术和工具。
第三章详细探讨了系统的可行性和需求,并对其中的各项业务流程进行了深入的分析。
第四章对垃圾分类管理系统进行设计。
本章将详细介绍如何实现垃圾分类管理系统处理系统,并附上相关页面截图,以便更好地理解如何实现该系统的具体功能。
在第六章中,我们通过使用一些实际的案例,详细检验了垃圾分类管理系统处置系统的各个关键部分,并获取了有价值的评估数据。
第七章总结全文并对未来的研究做出展望。
2 开发技术介绍
2.1 MySQL描述
MySQL是一个全球领先的MySQL组件[4],它提供了一种高效、可靠的、可扩展的、基于sql的关联性的数据库管理系统,最初由瑞典的MySQL AB公司推出,现在已经得到了Oracle公司的支撑与保障。
MySQL被广泛应用于Web应用程序的后台数据库管理,也适用于各种其他类型的应用程序。其优点包括:
开源:MySQL是开源软件,可以在免费的GPL许可下使用和修改。
可靠性和性能:MySQL具有高可靠性和性能,能够处理大量数据。
容易使用:MySQL易于学习和使用,具有很好的文档和社区支持[6]。
2.2 springboot框架
Spring框架是Java平台上的一种开源应用框架,提供具有控制反转特性的容器。尽管Spring框架自身对编程模型没有限制,但其在Java应用中的频繁使用让它备受青睐,以至于后来让它作为EJB(EnterpriseJavaBeans)模型的补充,甚至是替补。Spring框架为开发提供了一系列的解决方案,比如利用控制反转的核心特性,并通过依赖注入实现控制反转来实现管理对象生命周期容器化,利用面向切面编程进行声明式的事务管理,整合多种持久化技术管理数据访问,提供大量优秀的Web框架方便开发等等。Spring框架具有控制反转(IOC)特性,IOC旨在方便项目维护和测试,它提供了一种通过Java的反射机制对Java对象进行统一的配置和管理的方法。Spring框架利用容器管理对象的生命周期,容器可以通过扫描XML文件或类上特定Java注解来配置对象,开发者可以通过依赖查找或依赖注入来获得对象。Spring框架具有面向切面编程(AOP)框架,SpringAOP框架基于代理模式,同时运行时可配置;AOP框架主要针对模块之间的交叉关注点进行模块化。Spring框架的AOP框架仅提供基本的AOP特性,虽无法与AspectJ框架相比,但通过与AspectJ的集成,也可以满足基本需求。Spring框架下的事务管理、远程访问等功能均可以通过使用SpringAOP技术实现。Spring的事务管理框架为Java平台带来了一种抽象机制,使本地和全局事务以及嵌套事务能够与保存点一起工作,并且几乎可以在Java平台的任何环境中工作。Spring集成多种事务模板,系统可以通过事务模板、XML或Java注解进行事务配置,并且事务框架集成了消息传递和缓存等功能。Spring的数据访问框架解决了开发人员在应用程序中使用数据库时遇到的常见困难。它不仅对Java:JDBC、iBATS/MyBATIs、Hibernate、Java数据对象(JDO)、ApacheOJB和ApacheCayne等所有流行的数据访问框架中提供支持,同时还可以与Spring的事务管理一起使用,为数据访问提供了灵活的抽象。Spring框架最初是没有打算构建一个自己的WebMVC框架,其开发人员在开发过程中认为现有的StrutsWeb框架的呈现层和请求处理层之间以及请求处理层和模型之间的分离不够,于是创建了SpringMVC。
2.3 可行性分析
通过可行性分析,我们可以深入了解该项目的意义和价值观,并发现其存在的缺陷。为了解决用户在使用垃圾分类管理系统时遇到的操作困难和问题,我们将采取一些措施,以期使该系统的设计和实施更加高效、准确。为了满足用户的需求,我们提出了一个简单易操作的垃圾分类管理系统识别系统[]。因此,我们需要评估该系统的经济性,以确保它能够有效地解决经济问题,并且在开发完成后,其带来的收益能够超过开发过程中的成本。因此,对于这个系统的开发和设计,可行性的研究和分析至关重要。综合考虑本文中的内容,我们应当从多个角度对其进行深入的分析,以确保其可行性和有效性。[]。
我们应该考虑如何利用当前拥有的技术来实现我们最初的目标,以确保这一目标的可行性。
经济效益:我们的系统开发和设计是否能够为未来的社会带来更高的价值。
操作的可行性:系统的功能和易用性,以及它能够满足多数用户的需求,以确保它的可靠性和有效性。
2.1.1 技术可行性
经过技术可行性分析,我们可以确定垃圾分类管理系统识别系统的设计,它可以在任何地方使用,并且具有良好的可管理性。因此,基于当前的程序开发和语言介绍[9],采用这些技术来开发这一系统是十分有效的。为了确保系统的完整性和数据安全,我们选择了一个高质量的数据库。
2.1.2 经济可行性
通过评估其经济可行性,我们可以判断其对社会的贡献程度,以及它的潜在的价值。若一个项目的实施没有带来实质的效益,例如浪费了宝贵的时间、精力、金钱,或者只占据了相当少的费用,则它就没有任何的社会效益。初期,为了降低成本,我独立完成了整个项目的设计与开发,这不仅让我获得了丰富的经验,而且还让我的视野得到了扩展,经过可行性评估,这个项目的优势远远超出其缺点,因此它拥有极高的开发价值。
2.1.3 操作可行性
通过采用B/S架构、java技术和MySQL数据库,我们为垃圾分类管理系统识别系统设计了一种全新的登录界面,它既简单易用,又具有人性化的特点,使得用户在使用时无需复杂的操作,大大提高了系统的效率。此外,该系统还具有易于操作和管理的优势。
经过详细分析,我们可以得出结论:开发这个系统既具有经济效益,又具备技术优势。
3系统分析
本健康管理系统选择B/S结构(Browser/Server,浏览器/服务器结构)和基于Web服务两种模式。适合在手机上进行操作,只要用户能连网,任何时间、任何地点都可以进行系统的操作使用。系统工作原理图如图3-1所示:
图3-1 系统工作原理图
3.2系统性能分析
1.为了更好地实现前后台处理的分离,我们应该采用B/S架构,以此来提高系统的效率,并且更加便捷地让用户体验到最佳的服务。
2.在系统开发和设计中,我们应该根据人们日常生活中的需求,确保系统具有良好的适用性,并且能够有效地发挥其价值。此外,一个优秀的框架也至关重要,因为它能够有效地提升系统的稳定性和效率。
3.为了让用户更加轻松、便捷地访问系统,我们应该设计一个简洁易用的登录界面,以提升用户的体验和使用效果。
4.通过精心设计和优化系统模块,我们可以大大提升系统的可用性,从而实现更好的功能和效率。
5.对于一个完善的系统而言,测试和评估至关重要,因此,我们在编写软件时应该尽可能地提高其运行效率,以确保其能够满足需求。
6.在设计这个系统时,我们需要充分考虑它的创新性和实用性,因此,我们将努力提升其功能,使其能够更好地满足用户的需求。
3.3 系统功能需求分析
本小节进行垃圾分类管理系统各个功能的需求分析,对于不同功能,提供与其对应的用例图,记录相关的需求细节,描述功能对应的需求。
3.3.1 普通用户模块需求分析
普通用户功能旨在帮助用户更好地完成注册、登录,查看首页、公告消息、垃圾资讯、垃圾站点、达标用户等模块,从而提高用户的使用体验。功能的用例图(见图3.1)
图 3-1 普通用户功能用例图
- 登录注册功能
用于用户注册登录系统的账号信息与使用账号登录系统后继续操作的权限。其中,注册功能用于第一次登录时按照操作流程在注册界面输入账号密码、完成验证后点击按钮注册。注册成功后,之后可通过该账号进行后继操作。
当您访问该网站时,您需要先输入您的帐号和密码,然后根据系统的提醒,您就可以开始登录了。如果您忘记了帐号,您可以通过点击查询来重置您的帐号。重置完毕之后,您就可以继续使用该网站了。
- 垃圾资讯模块
该用例用于用户登陆成功后进入垃圾资讯界面,查看新闻热门列表和热门文章推荐。
- 垃圾站点模块
普通用户点击“垃圾站点”菜单,可以通过关键词搜索。
- 达标用户模块
普通用户点击“达标用户”菜单,可以通过关键词搜索。
3.3.2 管理员模块需求分析
管理员含有的功能有公共管理、用户管理、资讯管理、垃圾种类、垃圾站点、垃圾回收、达标用户等功能。功能的用例图(见图3.2)
图 3-2 管理员模块用例图
(1)公共管理
该功能包括轮播图、公告消息两个模块,管理员可以进行查询、重置、删除、新增等操作。
(2)用户管理
该功能包括管理员和普通用户两大模块,管理员可以进行查询、重置、删除、新增等操作。
- 资讯管理
该功能包括垃圾资讯、资讯分类两个模块,管理员可以进行查询、重置、删除、新增等操作。
- 垃圾种类
该功能支持管理员进行新增“垃圾种类”。
- 垃圾站点
管理员点击“垃圾站点”菜单,可以查询、删除、重置、新增站点,可以详细看到站点位置。
- 垃圾回收
管理员点击“垃圾回收”菜单,可以查询、删除、重置、新增站点,可以根据站点位置、垃圾种类进行回收垃圾。
- 达标用户
管理员对“达标用户”模块进行查询、重置、删除、新增等操作。
3.4数据库设计
数据库可以说是所有软件的根本,如果数据库存在缺陷,那么会导致系统开发的不顺利、维护困难、用户使用不顺畅等一系列问题,严重时将会直接损害企业的利益,同时在开发完成后,数据库缺陷也更加难以解决。所以必须要对数据库设计重点把握,做到认真细致。因此,数据库设计是这个垃圾分类管理系统的重点要素。
3.4.1概念结构设计
(1)管理员实体属性图如下图3-3所示
图3-3管理员实体属性图
- 系统实体属性如下图3-4所示
图3-4系统实体属性图
将数据库概念设计的E-R图转换为关系数据库。在关系数据库中,数据关系由数据表组成,但是表的结构表现在表的字段上。
表access_token (登陆访问时长)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | token_id | int | 10 | 0 | N | Y | 临时访问牌ID | |
2 | token | varchar | 64 | 0 | Y | N | 临时访问牌 | |
3 | info | text | 65535 | 0 | Y | N | ||
4 | maxage | int | 10 | 0 | N | N | 2 | 最大寿命:默认2小时 |
5 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
6 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
7 | user_id | int | 10 | 0 | N | N | 0 | 用户编号: |
表article (文章:用于内容管理系统的文章)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | article_id | mediumint | 8 | 0 | N | Y | 文章id:[0,8388607] | |
2 | title | varchar | 125 | 0 | N | Y | 标题:[0,125]用于文章和html的title标签中 | |
3 | type | varchar | 64 | 0 | N | N | 0 | 文章分类:[0,1000]用来搜索指定类型的文章 |
4 | hits | int | 10 | 0 | N | N | 0 | 点击数:[0,1000000000]访问这篇文章的人次 |
5 | praise_len | int | 10 | 0 | N | N | 0 | 点赞数 |
6 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
7 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
8 | source | varchar | 255 | 0 | Y | N | 来源:[0,255]文章的出处 | |
9 | url | varchar | 255 | 0 | Y | N | 来源地址:[0,255]用于跳转到发布该文章的网站 | |
10 | tag | varchar | 255 | 0 | Y | N | 标签:[0,255]用于标注文章所属相关内容,多个标签用空格隔开 | |
11 | content | longtext | 2147483647 | 0 | Y | N | 正文:文章的主体内容 | |
12 | img | varchar | 255 | 0 | Y | N | 封面图 | |
13 | description | text | 65535 | 0 | Y | N | 文章描述 |
表article_type (文章分类)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | type_id | smallint | 5 | 0 | N | Y | 分类ID:[0,10000] | |
2 | display | smallint | 5 | 0 | N | N | 100 | 显示顺序:[0,1000]决定分类显示的先后顺序 |
3 | name | varchar | 16 | 0 | N | N | 分类名称:[2,16] | |
4 | father_id | smallint | 5 | 0 | N | N | 0 | 上级分类ID:[0,32767] |
5 | description | varchar | 255 | 0 | Y | N | 描述:[0,255]描述该分类的作用 | |
6 | icon | text | 65535 | 0 | Y | N | 分类图标: | |
7 | url | varchar | 255 | 0 | Y | N | 外链地址:[0,255]如果该分类是跳转到其他网站的情况下,就在该URL上设置 | |
8 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
9 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
表auth (用户权限管理)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | auth_id | int | 10 | 0 | N | Y | 授权ID: | |
2 | user_group | varchar | 64 | 0 | Y | N | 用户组: | |
3 | mod_name | varchar | 64 | 0 | Y | N | 模块名: | |
4 | table_name | varchar | 64 | 0 | Y | N | 表名: | |
5 | page_title | varchar | 255 | 0 | Y | N | 页面标题: | |
6 | path | varchar | 255 | 0 | Y | N | 路由路径: | |
7 | position | varchar | 32 | 0 | Y | N | 位置: | |
8 | mode | varchar | 32 | 0 | N | N | _blank | 跳转方式: |
9 | add | tinyint | 3 | 0 | N | N | 1 | 是否可增加: |
10 | del | tinyint | 3 | 0 | N | N | 1 | 是否可删除: |
11 | set | tinyint | 3 | 0 | N | N | 1 | 是否可修改: |
12 | get | tinyint | 3 | 0 | N | N | 1 | 是否可查看: |
13 | field_add | text | 65535 | 0 | Y | N | 添加字段: | |
14 | field_set | text | 65535 | 0 | Y | N | 修改字段: | |
15 | field_get | text | 65535 | 0 | Y | N | 查询字段: | |
16 | table_nav_name | varchar | 500 | 0 | Y | N | 跨表导航名称: | |
17 | table_nav | varchar | 500 | 0 | Y | N | 跨表导航: | |
18 | option | text | 65535 | 0 | Y | N | 配置: | |
19 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
20 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
表collect (收藏)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | collect_id | int | 10 | 0 | N | Y | 收藏ID: | |
2 | user_id | int | 10 | 0 | N | N | 0 | 收藏人ID: |
3 | source_table | varchar | 255 | 0 | Y | N | 来源表: | |
4 | source_field | varchar | 255 | 0 | Y | N | 来源字段: | |
5 | source_id | int | 10 | 0 | N | N | 0 | 来源ID: |
6 | title | varchar | 255 | 0 | Y | N | 标题: | |
7 | img | varchar | 255 | 0 | Y | N | 封面: | |
8 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
9 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
表comment (评论)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | comment_id | int | 10 | 0 | N | Y | 评论ID: | |
2 | user_id | int | 10 | 0 | N | N | 0 | 评论人ID: |
3 | reply_to_id | int | 10 | 0 | N | N | 0 | 回复评论ID:空为0 |
4 | content | longtext | 2147483647 | 0 | Y | N | 内容: | |
5 | nickname | varchar | 255 | 0 | Y | N | 昵称: | |
6 | avatar | varchar | 255 | 0 | Y | N | 头像地址:[0,255] | |
7 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
8 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
9 | source_table | varchar | 255 | 0 | Y | N | 来源表: | |
10 | source_field | varchar | 255 | 0 | Y | N | 来源字段: | |
11 | source_id | int | 10 | 0 | N | N | 0 | 来源ID: |
表garbage_collection (垃圾回收)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | garbage_collection_id | int | 10 | 0 | N | Y | 垃圾回收ID | |
2 | site_number | varchar | 64 | 0 | Y | N | 站点编号 | |
3 | site_location | varchar | 64 | 0 | Y | N | 站点位置 | |
4 | regular_users | int | 10 | 0 | Y | N | 0 | 普通用户 |
5 | user_name | varchar | 64 | 0 | Y | N | 用户姓名 | |
6 | types_of_garbage | varchar | 64 | 0 | Y | N | 垃圾种类 | |
7 | recycling_time | datetime | 19 | 0 | Y | N | 回收时间 | |
8 | recycling_quantity | int | 10 | 0 | Y | N | 0 | 回收数量 |
9 | recycle_images | varchar | 255 | 0 | Y | N | 回收图片 | |
10 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
11 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
表garbage_site (垃圾站点)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | garbage_site_id | int | 10 | 0 | N | Y | 垃圾站点ID | |
2 | site_number | varchar | 64 | 0 | Y | N | 站点编号 | |
3 | site_location | varchar | 64 | 0 | Y | N | 站点位置 | |
4 | receiving_garbage | varchar | 64 | 0 | Y | N | 接收垃圾 | |
5 | opening_hours | varchar | 64 | 0 | Y | N | 开放时间 | |
6 | site_images | varchar | 255 | 0 | Y | N | 站点图片 | |
7 | introduction_to_garbage | longtext | 2147483647 | 0 | Y | N | 站点简介 | |
8 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
9 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
表hits (用户点击)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | hits_id | int | 10 | 0 | N | Y | 点赞ID: | |
2 | user_id | int | 10 | 0 | N | N | 0 | 点赞人: |
3 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
4 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
5 | source_table | varchar | 255 | 0 | Y | N | 来源表: | |
6 | source_field | varchar | 255 | 0 | Y | N | 来源字段: | |
7 | source_id | int | 10 | 0 | N | N | 0 | 来源ID: |
表notice (公告)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | notice_id | mediumint | 8 | 0 | N | Y | 公告id: | |
2 | title | varchar | 125 | 0 | N | N | 标题: | |
3 | content | longtext | 2147483647 | 0 | Y | N | 正文: | |
4 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
5 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
表praise (点赞)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | praise_id | int | 10 | 0 | N | Y | 点赞ID: | |
2 | user_id | int | 10 | 0 | N | N | 0 | 点赞人: |
3 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
4 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
5 | source_table | varchar | 255 | 0 | Y | N | 来源表: | |
6 | source_field | varchar | 255 | 0 | Y | N | 来源字段: | |
7 | source_id | int | 10 | 0 | N | N | 0 | 来源ID: |
8 | status | bit | 1 | 0 | N | N | 1 | 点赞状态:1为点赞,0已取消 |
表qualified_users (达标用户)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | qualified_users_id | int | 10 | 0 | N | Y | 达标用户ID | |
2 | regular_users | int | 10 | 0 | Y | N | 0 | 普通用户 |
3 | user_name | varchar | 64 | 0 | Y | N | 用户姓名 | |
4 | user_points | varchar | 64 | 0 | Y | N | 用户积分 | |
5 | compliance_time | date | 10 | 0 | Y | N | 达标时间 | |
6 | cover_photo | varchar | 255 | 0 | Y | N | 封面图片 | |
7 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
8 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
表regular_users (普通用户)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | regular_users_id | int | 10 | 0 | N | Y | 普通用户ID | |
2 | user_name | varchar | 64 | 0 | N | N | 用户姓名 | |
3 | user_gender | varchar | 64 | 0 | Y | N | 用户性别 | |
4 | user_age | varchar | 64 | 0 | Y | N | 用户年龄 | |
5 | user_points | int | 10 | 0 | Y | N | 0 | 用户积分 |
6 | examine_state | varchar | 16 | 0 | N | N | 已通过 | 审核状态 |
7 | user_id | int | 10 | 0 | N | N | 0 | 用户ID |
8 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
9 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
表slides (轮播图)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | slides_id | int | 10 | 0 | N | Y | 轮播图ID: | |
2 | title | varchar | 64 | 0 | Y | N | 标题: | |
3 | content | varchar | 255 | 0 | Y | N | 内容: | |
4 | url | varchar | 255 | 0 | Y | N | 链接: | |
5 | img | varchar | 255 | 0 | Y | N | 轮播图: | |
6 | hits | int | 10 | 0 | N | N | 0 | 点击量: |
7 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
8 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
表types_of_garbage (垃圾种类)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | types_of_garbage_id | int | 10 | 0 | N | Y | 垃圾种类ID | |
2 | types_of_garbage | varchar | 64 | 0 | Y | N | 垃圾种类 | |
3 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
4 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
表upload (文件上传)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | upload_id | int | 10 | 0 | N | Y | 上传ID | |
2 | name | varchar | 64 | 0 | Y | N | 文件名 | |
3 | path | varchar | 255 | 0 | Y | N | 访问路径 | |
4 | file | varchar | 255 | 0 | Y | N | 文件路径 | |
5 | display | varchar | 255 | 0 | Y | N | 显示顺序 | |
6 | father_id | int | 10 | 0 | Y | N | 0 | 父级ID |
7 | dir | varchar | 255 | 0 | Y | N | 文件夹 | |
8 | type | varchar | 32 | 0 | Y | N | 文件类型 |
表user (用户账户:用于保存用户登录信息)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | user_id | mediumint | 8 | 0 | N | Y | 用户ID:[0,8388607]用户获取其他与用户相关的数据 | |
2 | state | smallint | 5 | 0 | N | N | 1 | 账户状态:[0,10](1可用|2异常|3已冻结|4已注销) |
3 | user_group | varchar | 32 | 0 | Y | N | 所在用户组:[0,32767]决定用户身份和权限 | |
4 | login_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 上次登录时间: |
5 | phone | varchar | 11 | 0 | Y | N | 手机号码:[0,11]用户的手机号码,用于找回密码时或登录时 | |
6 | phone_state | smallint | 5 | 0 | N | N | 0 | 手机认证:[0,1](0未认证|1审核中|2已认证) |
7 | username | varchar | 16 | 0 | N | N | 用户名:[0,16]用户登录时所用的账户名称 | |
8 | nickname | varchar | 16 | 0 | Y | N | 昵称:[0,16] | |
9 | password | varchar | 64 | 0 | N | N | 密码:[0,32]用户登录所需的密码,由6-16位数字或英文组成 | |
10 | | varchar | 64 | 0 | Y | N | 邮箱:[0,64]用户的邮箱,用于找回密码时或登录时 | |
11 | email_state | smallint | 5 | 0 | N | N | 0 | 邮箱认证:[0,1](0未认证|1审核中|2已认证) |
12 | avatar | varchar | 255 | 0 | Y | N | 头像地址:[0,255] | |
13 | open_id | varchar | 255 | 0 | Y | N | 针对获取用户信息字段 | |
14 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
15 | vip_level | varchar | 255 | 0 | Y | N | 会员等级 | |
16 | vip_discount | double | 11 | 2 | Y | N | 0.00 | 会员折扣 |
表user_group (用户组:用于用户前端身份和鉴权)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | group_id | mediumint | 8 | 0 | N | Y | 用户组ID:[0,8388607] | |
2 | display | smallint | 5 | 0 | N | N | 100 | 显示顺序:[0,1000] |
3 | name | varchar | 16 | 0 | N | N | 名称:[0,16] | |
4 | description | varchar | 255 | 0 | Y | N | 描述:[0,255]描述该用户组的特点或权限范围 | |
5 | source_table | varchar | 255 | 0 | Y | N | 来源表: | |
6 | source_field | varchar | 255 | 0 | Y | N | 来源字段: | |
7 | source_id | int | 10 | 0 | N | N | 0 | 来源ID: |
8 | register | smallint | 5 | 0 | Y | N | 0 | 注册位置: |
9 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
10 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
4 系统实现
4.1系统架构设计
这款垃圾分类管理系统识别系统的架构由三个部分组成:Web层、业务层、Model层。web层由View层、Controller层组成,而Model层则由元数据拓扑层、数据访问层组成。
系统架构如下图所示。
图4-1 系统架构
4.2系统的功能结构图
经过详细的系统需求分析,我们的垃圾分类管理系统的核心功能是:为了满足不同的使用者的需求,我们提供了多种不同的服务:管理员:首页、个人中心、公共管理、用户管理、垃圾站点、垃圾资讯、达标用户、垃圾种类、垃圾回收;而对于普通使用者,我们提供了更多的服务,如垃圾资讯、垃圾站点、达标用户等。根据图4-2,该系统的功能架构可以清晰地展现出来。
图4-2系统功能图
4.3系统功能设计
4.3.1 普通用户模块设计
- 登录注册功能
用于用户注册登录系统的账号信息与使用账号登录系统后继续操作的权限。其中,注册功能用于第一次登录时按照操作流程在注册界面输入账号密码、完成验证后点击按钮注册。注册成功后,之后可通过该账号进行后继操作。
图4-3页面注册图
- 垃圾资讯模块
该模块用于用户登陆成功后进入垃圾资讯界面,查看新闻热门列表和热门文章推荐。
图4-4垃圾资讯界面图
- 垃圾站点模块
普通用户点击“垃圾站点”菜单,可以通过关键词搜索。
图4-5垃圾站点界面图
- 达标用户模块
普通用户点击“达标用户”菜单,可以通过关键词搜索。
图4-6达标用户界面图
4.3.2 管理员用户模块
(1)管理员登录,通过填写注册时输入的用户名、密码、权限进行登录,如图4-6所示。
图4-7管理员登录界面图
(2)管理员登录垃圾分类管理系统含有的功能有公共管理、用户管理、资讯管理、垃圾种类、垃圾站点、垃圾回收、达标用户等功能,如图4-7所示。
图4-8管理员功能界面图
(3)公共管理
该功能包括轮播图、公告消息两个模块,管理员可以进行查询、重置、删除、新增等操作。
图4-9公共管理功能界面图
(4)用户管理
该功能包括管理员和普通用户两大模块,管理员可以进行查询、重置、删除、新增等操作。
图4-10用户管理界面图
(5)资讯管理
该功能包括垃圾资讯、资讯分类两个模块,管理员可以进行查询、重置、删除、新增等操作。
图4-11资讯管理界面图
- 垃圾种类
该功能支持管理员进行新增“垃圾种类”。
图4-12垃圾种类界面图
- 垃圾站点
管理员点击“垃圾站点”菜单,可以查询、删除、重置、新增站点,可以详细看到站点位置。
图4-13垃圾站点界面图
- 垃圾回收
管理员点击“垃圾回收”菜单,可以查询、删除、重置、新增站点,可以根据站点位置、垃圾种类进行回收垃圾。
图4-14垃圾回收界面图
- 达标用户
管理员对“达标用户”模块进行查询、重置、删除、新增等操作。
图4-15达标用户界面图
5软件测试
测试存在于软件开发进程中的最后一个阶段,它可以保证一个软件的开发质量是否符合设计者的初衷,也为程序的正式上线做了最后一道质量检测的工序。软件测试主要是控制各种条件、包括软件输出方式,使用模式和运行环境等,来评估一个系统或应用是否符合设计标准。在软件测试过程中,我们一般刻意的去制造错误和极端条件,不能仅依照正常模式允许,而是多去尝试那些意外的情况。
只有在运行和维护阶段之前经历大量的测试的软件,才能说明它的质量是经得起检验的。最近计算机业界也都一致认为,测试应该存在于软件设计的每个阶段,因为越早发现错误,修复起来就越容易。
实际上,对于一个软件应用,错误是必然存在的,无论使用何种技术或手段,都不可能绝对的排除软件漏洞。测试是随着软件开发一同诞生的,两者是共同发展进步的。实际上,测试可以大幅度的降低维护的成本,如果一个漏洞在开发的早期就被发现,那么修复它的成本远比上线后再修复的成本要低得多。
测试有白盒测试和黑盒测试两种方式。
其中,白盒测试是将软件看成一个透明的白盒子,按照程序的内部控制结构和处理技术逻辑来选定测试用例、软件系统测试的逻辑路径及过程需要进行管理测试,又称玻璃盒测试。因此白盒测试需要选择足够多的测试用例,覆盖尽可能多的代码来发现程序中的错误。
黑盒测试,也称为功能测试。它将需软件看作一个黑盒,像一个普通用户一样来模拟软件的使用流程。黑盒测试通过大量的输入边界值或错误数据,来检查是否可产生正确的输出。
本系统测试主要选择黑盒测试,少量采用白盒测试。通过测试达到以下测试目的:
1.检查各大功能模块的运行,确保其能够正确运行,并检查各页面的完整性,保证页面完整。
2.检查各个接口是否可以正确地输入和输出,保证数据流通稳定可行。
3.检查数据结构,保证其和外部接口没有访问错误,访问顺利。
4.检查原计划的性能需求有没有完成,运行流畅。
本系统的测试用例(部分):
登录部分测试用例 | |||||
编号 | 对象 | 项目 | 操作 | 预期结果 | 结果 |
1 | 登录 | 登录提示 | 使用正确的账号密码登录 | 成功登录 | 预期结果 |
2 | 登录提示 | 使用正确的账号但错误的密码登录 | 提示密码错误 | 预期结果 | |
3 | 登录提示 | 使用错误的账号登录 | 提示不存在账户 | 预期结果 | |
4 | 登录提示 | 不输入账号,点击登录 | 提示输入账号 | 预期结果 | |
5 | 登录提示 | 输入账号但不输入密码点击登录 | 提示输入密码 | 预期结果 | |
6 | 登录入口 | 已登录账号,查看登录入口 | 不显示登录入口 | 预期结果 |
处理器:Inter Core I7-4710MQ四核处理器
内存:4GB
硬盘:1T
操作系统:Windows 10
数据库:MySQL
全部测试用例都已通过(包括但不限于以上测试用例),且不存在漏洞,实现了论文开始时所作要求。本系统运行稳定,使用流畅,可以满足客户需求。
试运行后进行系统评估,可以认为该系统达到预定的目标要求,可以满足用户的需求,也满足了系统开发前所作目标。
系统在经过大量重复测试后运行十分稳定,安全实用,功能模块已经达到预定目标所需。
在规定的时间内实现系统的大部分功能,且满足要求,节省开发成本,有助于提高科学管理水平,符合本人经济情况。
结 论
在本次系统设计的过程中,我们将深入探讨垃圾分类管理系统识别系统,从研究背景、目标到实施方案,并详细阐述每一章的内容,以及该系统的硬件和软件环境。其中包含了:需求分析+功能需求+用例图,以此表示系统的功能的流程、模块的处理过程。绘制总体各个结构+流程图,并根据功能细致设计的需要,再来设计数据库的表结构,并绘制E-R图,实现程序接口,然后完成调试。最后,本文进行了总结,并提出了下一步的发展方向。
在这次设计中,我通过不断地探索和学习,掌握了Java技术和springboot框架,并创建了一个垃圾分类管理系统识别系统,这让我对编写系统的必要性和运行环境有了更深入的了解。为了更好地完成这个项目,我花费了大量的时间,不仅丰富了自己的知识面,并且学习并积累了许多宝贵经验。系统刚开始时,我对springboot框架这个技术只是稍微有些了解,但是通过这次基于springboot垃圾分类管理系统识别系统设计,让我更加深入地去探讨了,springboot框架运转的原理,从中学到了如何去配置服务器环境和连接数据库。在基于springboot框架的垃圾分类管理系统识别系统设计的过程中,我还学会了使用dreamweaver来建设一个简单的页面,这样可以极大程度提高我的实际操作能力,也因此激发了我对这个领域的浓烈兴趣。
系统的这一次发展提升了我自己的能力,也学到了框架如何实现基本功能。同时在编程代码各方面也做了的很多尝试,从关注代码错误到做一些小的修改,都有了很大的提高。同时,在撰写论文时,还查阅了大量的参考资料,对论文的结构和文献资料进行了总结和分析。已作出努力,尽量减少错误和走弯路,从一开始的系统功能概念化到逐一实施,并进行了广泛的研究报告。也许后续操作过程中还有很多实现不完美的功能,但我依然会继续学习,努力在以后的软件开发、编号代码中吸取教训,总结不完美之处,努力的在软件开发越来越强。以上是我在本次设计中的总结,希望在未来取得更好的成绩。
致 谢
通过数月的艰苦奋斗,我们终于实现了这一伟大的壮举。虽然在撰写和探索的路上遭受了诸多挑战,但是得益于大家的共同努力,以及尊重的教诲,让我们得以顺利实现。特别要表达的是,我们的教授们给予的慷慨支持,让我们收益匪浅。教育工作者们的敬业担当、坚实的专业知识功底、勤奋的工作热情和友善的对待,让我收益匪浅。另一方面,当我去参观大学的图书馆,他们还为我的求索之旅提供了大量的指导和协助。对于那些给予我极大支持与指导的老师,我深深地鞠躬致敬!非常感激那些参与撰写本文的专家们。他们的贡献不仅仅是为了让我能够更好地理解并撰写出更深入的内容,更是为了激励我不断前行。。非常抱歉,我的同学、朋友、工作人员为我的工作做出贡献。他们为我的工作提供了丰富的资料,并且为我的工作进行了精彩的设计。此外,我的室友也非常关注并为我的工作提供支持。他们的帮助让我能够更好地完成工作,并且能够更快地掌握相关知识。尽管我的能力可能存在局限性,但仍然希望得到大家的宝贵意见,欢迎大家的宝贵建议与宝贵意见!
参考文献
[1] 刘娟娟. 实名可追溯智能垃圾分类管理系统设计与实现 [J]. 现代信息科技, 2024, 8 (03): 17-20+26. DOI:10.19850/j.cnki.2096-4706.2024.03.004.
[2] Emmanuel F A ,Adebayo L O ,Solanke O , et al. A hybrid correlation-based deep learning model for email spam classification using fuzzy inference system [J]. Decision Analytics Journal, 2024, 10 100390-.
[3] 吴昊,张丹. 基于SpringBoot框架的大学生网上兼职系统设计与实现 [J]. 电脑知识与技术, 2023, 19 (35): 68-72. DOI:10.14004/j.cnki.ckt.2023.1860.
[4] 李冉,杨军,宁玉富等. 基于SpringBoot框架和CNN-SVM算法的浸润性肺腺癌细胞的初步诊断筛选系统 [J]. 无线互联科技, 2023, 20 (22): 58-61.
[5] 刘明,杨胜飞,张冶锋等. 基于SpringBoot框架的长距离输水工程水量监测系统设计 [J]. 云南水力发电, 2023, 39 (11): 359-362.
[6] 黄永芳,郭永刚,李峰. 基于SpringBoot的藏东南滑坡灾害管理系统设计与实现 [J]. 科学技术创新, 2023, (24): 100-103.
[7] 谢欣,赵家琪,杨卫明. 基于SpringBoot的中国传统节日推广平台设计与实现 [J]. 信息与电脑(理论版), 2023, 35 (19): 91-94.
[8] 陈刚. 基于SpringBoot+Thymeleaf+MySQL的动态表单功能模块设计与实现 [J]. 长江信息通信, 2023, 36 (09): 100-102.
[9] 李佳睿,王仲斌,钟民泽. 基于SpringBoot的制丝车间工艺质量离线报表的设计 [J]. 轻工科技, 2023, 39 (05): 111-113.
[10] ZhuoQun Z ,Jian Y ,KeFei Y , et al. Evaluation of a data-driven intelligent waste classification system for scientific management of garbage recycling in a Chinese community. [J]. Environmental science and pollution research international, 2023, 30 (37): 87913-87924.
[11] 陈旎珊. 基于协同治理理论的福州城市生活垃圾分类管理研究[D]. 华东交通大学, 2023. DOI:10.27147/d.cnki.ghdju.2023.000469.
[12] 李微. 温州市Y县生活垃圾分类管理研究[D]. 江西农业大学, 2023. DOI:10.27177/d.cnki.gjxnu.2023.000213.
[13] 余赞,李叶萱,高靖棠等. 基于Android的垃圾分类管理系统设计与实现 [J]. 电脑编程技巧与维护, 2023, (04): 64-66. DOI:10.16184/j.cnki.comprg.2023.04.036.
[14] 覃国森,罗威,姜建生等. 深圳市盐田区生活垃圾分类全链条智慧化管理系统 [J]. 环境卫生工程, 2022, 30 (06): 99-101.
[15] Yang Y . Design and Implementation of Student Information Management System Based on Springboot [J]. Advances in Computer, Signals and Systems, 2022, 6 (6):
[16] 何力航,黄思齐,梁海霞等. 智能垃圾分类管理的“广东模式”初探 [J]. 科技风, 2022, (23): 53-55. DOI:10.19392/j.cnki.1671-7341.202223018.
[17] Cheng F . Talent Recruitment Management System for Small and Micro Enterprises Based on Springboot Framework [J]. Advances in Educational Technology and Psychology, 2021, 5 (2):
[18] Kansal R ,Yadav L ,D A . Waste Sorting Mobile Application for Interactive AI Based Waste Management System [J]. International Journal of Recent Technology and Engineering (IJRTE), 2020, 9 (2): 255-260.
[19] Wan M ,Qu T ,Huang M , et al. Cloud-based product-service systems platform for household solid waste classification management [J]. IET Collaborative Intelligent Manufacturing, 2020, 2 (2): 66-73.
[20] Public Health - Waste Management; Researchers from Huaqiao University Detail Findings in Waste Management (A Robust Classification Algorithm for Separation of Construction Waste Using Nir Hyperspectral System) [J]. Energy & Ecology, 2019,
免费领取项目源码,请关注❥点赞收藏并私信博主,谢谢~