摘 要
我们的时代像一辆高速飞驰的列车,带着互联网冲入了我们的视野内,并且大家对生活品质的追求也更加地高了。花变成了人们生活中的一个常见品。鲜花的需求量在这些年来逐步增长,花本身就具有“高颜值”,还伴有特殊的香味,除了让人们赏心悦目外,它还可以使人更具有想象力,更是人际交往过程中的一个“利器”,拉近人与人之间的距离。在生活中,花店很吸引追求美的人,但由于店面租金,鲜花的托运以及贮存等方面的耗费,让其利率变得越来越低。在互联网逐渐发达,走进人们生活各个方面的当下,传统的花店也面临着变革,因此网上花店系统的出现则为花店这个行业提供了一个新的发展机遇。
本系统是用java语言开发的一个网上花店系统,用的是MySql数据库对系统的结构化数据进行存储,使得关于鲜花的信息更新变得更加便捷,并在实际需求的基础上,除了基本的用户模块,还新增加了管理员权限,因此除了有用户模块以及用户可见的商品模块外,像个人信息、购物车以及订单这些模块也是必不可少的,还有了拥有管理员权限的商品管理模块。
本系统主要采用了MVC的设计模式,通过springboot简化了ssm框架的繁琐操作以及其中的一些流程,本论文主要介绍了各个模块的主要功能以及每个功能模块的设计与实现,最后进行关于毕业设计的总结。
关 键 词:JSP;MYSQL;数据库;垃圾分类管理
ABSTRACT
With the continuous development and wide application of computers, people's work efficiency has been constantly improved. The development of the Internet has shortened the distance between people. How to make full use of the Internet is a problem of common concern. This paper mainly introduces the realization method of garbage classification management system, designs and plans the webpage of garbage classification management system, and manages various information in the form of Internet.
After analysis, we use the SUN's JSP development tools, powerful MYSQL query language to build a relational database, use of its object-oriented development tools, especially data window this can convenient and simple manipulation database intelligent objects, first of all, establish a system application prototype in a short time, then, to the initial prototype system needs iteration, constantly revised and improved, until form satisfactory feasible system. Design and develop a set of campus garbage classification management system based on MVC. This system USES the development environment is MyEclipse, the use of the database management system is Mysql, the use of JavaWeb server is Apache, Tomcat, using the idea of MVC. In order to cater to the current situation of the Internet.
The garbage classification management system adopts the structure of B/S. The system administrator has the functions of community management, garbage classification information, garbage station information, garbage transport information, garbage information, repair management, complaint management and so on. The system interface is simple and intuitive, easy to operate and use, strong interaction.
KEYWORDS:JSP,MYSQL; Database; garbage classification management
目 录
1 绪 论
1.1 问题描述
1.2 项目目标
1.3 项目适用范围
1.4 涉众
2 需求分析
2.1 业务需求
2.2 功能性需求
2.3 非功能性需求
2.4 运行环境
3 系统设计
3.1 技术路线
3.1.1 JSP技术
3.1.2 MySQL
3.1.3框架技术
3.2 软件体系结构设计
3.2.1 功能结构
3.2.2 系统架构
3.3 数据库设计
3.3.1数据库概念设计
3.3.2 表的详细设计
3.4 用例实现
3.4.1 用户注册用例实现
3.4.2 用户登录用例实现
3.4.3 管理员管理用例实现
3.4.4 管理员管理垃圾站信息用例实现
3.4.5 管理员管理垃圾分类信息用例实现
3.4.6 管理员管理报修信息用例实现
3.5 对象设计
3.5.1模块设计
3.5.2业务实体类的设计
4 系统实现
4.1普通用户登录功能的实现
4.2普通用户查看垃圾分类功能的实现
4.3管理员管理垃圾分类功能的实现
4.4管理员管理报修功能的实现
5 系统测试
5.1 功能测试
5.2 非功能测试
5.3 测试总结
6 结论与展望
参考文献
致 谢
改革开放以来,越来越多的城区被开发,每天都会产生大量的生活垃圾,我们需要一个完善的管理系统来妥善分类管理这些巨量生活垃圾,在计算机上就可以处理好垃圾分类管理的各项数据的垃圾分类管理系统是一个很好的选择,了解垃圾分类有什么需要,从而进行垃圾分类管理业务。这个社会需要一个完善的垃圾分类体系,不能再像以前一样光是把垃圾桶分成各种类型,这样人们是不会自觉分类把垃圾放入对应垃圾桶的。我们要配备一个高响应速率的管理系统,不放过任何垃圾的分类处理,不能再像以前一样一个垃圾桶什么都往里面丢,渗出来的液体奇臭无比,搞的整个小区居民都遭殃,人们知道是什么垃圾都往垃圾桶丢才导致的,但是也无可奈何,垃圾桶分类了没有人去管理,管理人员应该要为居民提供一个完善的垃圾分类管理,给人们一个干净,空气清新的住宅环境,每天都是干净的环境可能只有电视剧电影里可以看到,但是管理人员积极使用垃圾分类系统的话,居民一定不会后悔自己选择的家庭住址。
垃圾分类管理系统开发的目标:可以很好的处理人工计算和管理垃圾分类、住户资料等问题,不会出现使用该系统时一直查不到房产业主相关信息的问题,系统使用者可以管理各小区的垃圾分类的各种流程数据,让垃圾从业主丢出时的小区位置,垃圾类别,和接收垃圾的垃圾站这些流程系统中都有相关数据方便管理人员查看有没有什么问题,从源头上解决垃圾分类不规范,只收某种垃圾的站点收入了其他垃圾影响垃圾处理的问题。
这个垃圾分类管理系统可提供各种小区住宅的垃圾分类管理,可以让垃圾污染从源头上制止,不同垃圾用不同方式回收,是环保主义人士和各类相关组织的福音。
(1) 系统普通用户:可以浏览所有垃圾分类的信息,还可以查询自己的小区的报修和投诉信息和状态。
(2) 系统管理员:管理和维护本系统的功能,能修改增加垃圾分类、垃圾站,垃圾运输信息,审核小区的垃圾设备的报修和垃圾处理不当的投诉。
垃圾分类管理系统的总体业务流程如图2-1所示。
图2-1 总体业务流程图
查找了目前的垃圾分类相关需求后,结合本地区的垃圾分类现状,我们绘制了相关的需求用例图如图2-2所示。
图2-2高层用例图
(1)管理小区信息用例
管理员能够通过查看和管理小区信息用例来维护小区信息,可对该用例信息进行增删改查。管理小区信息用例图如图2-3所示。
图2-3管理小区信息用例图
(2)管理垃圾信息用例
通过管理垃圾信息用例,可以随时根据新出现或淘汰的化工材料,来对垃圾信息进行维护,适应新类型的垃圾。管理垃圾信息用例图如图2-4所示。
图2-4 管理垃圾信息用例图
(3)用户添加报修信息用例
小区负责人收到居民的垃圾设备报修单后,在系统上使用本小区分配的对应账号,登进系统,为相关设备报修并提醒管理者及时安排维修人员维修垃圾处理设备。小区负责人进行报修操作如图2-5所示。
图2-5小区负责人添加报修信息用例图
(4)小区负责人添加投诉信息用例
小区负责人登录网站,在投诉模块里,点添加,输入投诉信息,然后提交到后台。小区负责人添加投诉信息用例图如图2-6所示。
图2-6小区负责人添加投诉信息用例图
兼容性:没有功能性故障的话,win7以上的系统都是可以正常运行的。
本系统需要一个功能正常的win7以上的电脑和软件功能正常的系统。
1.硬件环境
硬盘:320G或更多
网络类型:TCP/IP
2.软件环境
Web服务器: Tomcat
数据库:MySQL
浏览器:IE7.0
我选择使用流行的MYSQL来管理数据。MySQL是一种关系型数据库管理系统,关系数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性[3]。
Spring是一个轻量级的IOC和AOP容器框架[4]。
Spring MVC框架是一个基于请求驱动的Web框架,并且也使用了前端控制器模式来进行设计,再根据请求映射规则分发给相应的页面控制器(动作/处理器)进行处理[9]。
MyBatis 是一个持久层的开发框架。它几乎不需要用户去手写 JDBC 代码。MyBatis使用简单的注解或XML用于映射和配置,将接口和实体类映射成数据库中的记录[8]。
从各方面调查确认后决定本系统包括以下功能模块,如图3-1所示。
图3-1系统功能结构图
本系统采用SSM框架搭建系统。集成SSM框架的系统从职责上分为四层:表示层、业务逻辑层、数据持久层和域模块层[5]。 运用MVC三层架构开发,系统架构图如图3-2所示。
本系统根据垃圾分类的功能需求,来确定实体之间关系。概念模型(E-R图)如图3-3所示。
用户注册用例的实现顺序图如图3-4所示。
图3-4用户注册用例顺序图
小区负责人在输入小区名和密码之后,为本小区添加账号。
理顺了系统中各个对象之间的关系后,设计了一个符合该关系的数据库表,使用了mysql数据库来管理这些数据。
(1)用户信息表(sys_user)
该表用来储存小区负责人用户的信息,表结构如表3-1所示。
表3-1 用户信息表(sys_user)
列名 | 数据类型 | 长度 | 允许空 | 是否主键 | 说明 |
userId | int | 11 | 否 | 是 | 用户ID |
username | varchar | 0 | 是 | 否 | 用户名 |
password | varchar | 255 | 是 | 否 | 用户密码 |
| varchar | 255 | 是 | 否 | 用户邮箱 |
mobile | int | 11 | 否 | 否 | 用户电话 |
status | varchar | 255 | 是 | 否 | 状态 |
create_time | varchar | 255 | 是 | 否 | 创建时间 |
(2)投诉信息表(ts)
该表用来储存小区负责人的投诉信息,表结构如表3-2所示。
表3-2 投诉信息表(ts)
列名 | 数据类型 | 长度 | 允许空 | 是否主键 | 说明 |
id | int | 11 | 否 | 是 | 投诉ID |
name | varchar | 255 | 是 | 否 | 投诉标题 |
content | varchar | 255 | 否 | 否 | 投诉内容 |
username | varchar | 255 | 否 | 否 | 投诉人 |
(3)垃圾站信息表(room)
该表用来保存垃圾站相关配置和信息,包括了垃圾站活动创建时间、垃圾站介绍、垃圾站负责人和垃圾站序号。表结构如表3-3所示。
表3-3 垃圾站信息表(room)
列名 | 数据类型 | 长度 | 允许空 | 是否主键 | 说明 |
Id | int | 11 | 否 | 是 | 垃圾站ID |
name | datetime | 0 | 是 | 否 | 垃圾站创建时间 |
house | text | 0 | 是 | 否 | 垃圾站介绍 |
size | varchar | 255 | 是 | 否 | 垃圾站负责人 |
(4)垃圾分类信息表(house)
该表用来保存各种垃圾的分类数据,包括了垃圾类名、类型、序号和垃圾站编号。如表3-4所示。
表3-4 垃圾分类信息表(house)
列名 | 数据类型 | 长度 | 允许空 | 是否主键 | 说明 |
id | int | 11 | 否 | 是 | 垃圾分类ID |
name | varchar | 255 | 是 | 否 | 垃圾分类名 |
ceng | varchar | 255 | 是 | 否 | 垃圾分类类型 |
room | varchar | 255 | 是 | 否 | 垃圾站编号 |
(5)用户与角色对应关系表(sys_user_role)
用户与角色对应关系表表结构如表3-5所示。
表3-5 用户与角色对应关系表(sys_user_role)
列名 | 数据类型 | 长度 | 允许空 | 是否主键 | 说明 |
userId | int | 11 | 否 | 是 | 用户与角色对应ID |
roleId | varchar | 255 | 是 | 否 | 角色id |
Id | varchar | 255 | 是 | 是 | 外键 |
(6)垃圾站信息表(room)
垃圾站信息表表结构如表3-6所示。
表3-6 垃圾站信息表(room)
列名 | 数据类型 | 长度 | 允许空 | 是否主键 | 说明 |
id | int | 11 | 否 | 是 | 垃圾站ID |
name | int | 11 | 否 | 否 | 垃圾站名 |
house | varchar | 255 | 是 | 否 | 垃圾分类编号 |
size | varchar | 255 | 是 | 否 | 负责人 |
(7)垃圾运输信息表(record)
垃圾运输信息表主要用于保存垃圾运输记录信息,主要字段包括:ID、垃圾名、价格、运输时间、小区、垃圾类型、状态、结束时间。表结构如表3-7所示。
表3-7 垃圾运输信息表(record)
列名 | 数据类型 | 长度 | 允许空 | 是否主键 | 说明 |
id | int | 11 | 否 | 是 | 垃圾运输ID |
name | varchar | 255 | 是 | 否 | 垃圾名 |
price | varchar | 255 | 是 | 否 | 价格 |
time | datetime | 0 | 是 | 否 | 运输时间 |
user | varchar | 255 | 是 | 否 | 小区 |
remark | varchar | 255 | 是 | 否 | 垃圾类型 |
state | datetime | 0 | 是 | 否 | 状态 |
gmtTime | int | 11 | 否 | 否 | 结束时间 |
3.4.2 用户登录用例实现
用户登录用例的实现顺序图如图3-5所示。
图3-5用户登录用例顺序图
用户先要先输入自己的账号密码,然后还要输入给出图片的随机不区分大小写的验证码,然后点击登陆按钮,后台比较用户名密码正确后,会跳转到该用户的主操作界面。
管理员业主管理用例顺序图如图3-6所示。
图3-6管理员业主管理用例顺序图
管理员用户登录之后,在页面中找到小区管理,然后选择小区管理,就可以管路小区负责人的信息,后台自动更新数据。
管理员管理垃圾站信息用例的实现顺序图如图3-7所示。
图3-7管理员垃圾站信息用例顺序图
管理员用户登录之后,在页面中找到垃圾站信息,然后选择垃圾站信息,刷新出垃圾站信息,可以对其进行管理,后台自动更新数据。
管理员管理垃圾分类信息用例的实现顺序图如图3-8所示。
图3-8 管理员管理垃圾分类信息用例顺序图
管理员用户登录之后,从上往下数第二个就是垃圾分类信息管理,进入该功能,垃圾分类有任何变化都可以及时管理补充新类型垃圾或去除,后台自动更新数据。
管理员管理报修信息用例的实现顺序图如图3-9所示。
图3-9管理员管理报修信息用例顺序图
管理员用户登录之后,从上往下数第五个就是报修信息管理,选择报修信息,就可以管理这些信息了,后台自动更新数据。
本系统由几个模块共同运作来完成最终功能,它们间依赖关系如图3-10所示。
图3-10模块依赖关系图
业务实体包括了几个部分,它们之间的关系如图3-11所示。
图3-11业务实体及实体间关系图
(1)获取数据界面
小区负责人在登录界面输入自己负责的小区名,密码,正确的话就可以进入系统了,如图4-1所示。
图4-1普通用户登录界面原型图
(2)实现过程
用户在输入小区名密码后,点击登录按钮,login参数以及小区名密码传入后台,并被实体类传递,对比库中数据是否是一致的,最后返回参数授权登录或信息错误登录失败。
(3)核心代码
小区负责人登录的代码如下所示。功能为查看并对比数据库的相关操作,比对和存储的账号数据是否一致,根据结果返回不同操作。
(1)获取数据界面
用户在登录之后,点击垃圾分类功能,跳转到垃圾分类界面如图4-2所示,选中其中一行后,可以查看该类垃圾的详情。
图4-2普通用户查看垃圾分类功能界面原型图
用户在登录系统后,选择垃圾分类,后台接收参数传入,将信息更新到页面中。
(3)核心代码
用户垃圾分类代码如下:
(1)获取数据界面
管理员用户在登录之后,选择垃圾分类,进入垃圾分类页面如图4-3所示,然后点击修改,就可以管理垃圾分类,修改页面如图4-4所示。
图4-3管理员查看垃圾分类列表界面原型图
图4-4 管理员管理垃圾分类界面原型图
(1)获取数据界面
管理员在登录之后,选择报修管理模块,然后跳转到如图4-5所示,找到要管理的那一条,左边框选后就可以调整进度信息。
图4-5管理员用户报修界面原型图
为了完善本垃圾分类管理系统的功能,排除一些底层逻辑或代码错误导致的功能问题,以下对垃圾分类管理系统的最初成品进行功能测试。
内容说明:测试了主要的一些功能,根据结果决定通过与否。
兼容性测试用例如表5-1、表5-2所示。
测试用例名称 | 测试操作系统 |
兼容性_001 | Windows7 |
兼容性_002 | CentOS7 |
兼容性_003 | WindowsServer2012 |
表5-1 操作系统兼容性测试用例
表5-2 浏览器兼容性测试用例
测试用例名称 | 浏览器版本 |
兼容性_001 | IE 10 |
兼容性_002 | Chrome 62.0.3202.94 |
兼容性_003 | Firefox 57.0.0.6525 |
测试需要完善系统的功能,在功能方面没有什么异常,所有需求都可以实现后,才可以保证用户使用起来比之前效率明显高了很多,而不是很多漏洞,导致反而比人工管理还麻烦了很多。再努力完善也会有很多不足,我们根据对总功能影响程度,绘制各种大小bug的统计图。
按等级统计bug的结果,如图5-1所示。
图5-1 按等级统计bug数
按类型统计bug的结果,如图5-2所示。
图5-2 按类型统计bug数
各个bug最后都从编写代码中找到原因,其中有很多还是基础,所以我们在编写代码之前要仔细检查有没有什么问题,为排除这些问题节省更多的时间,开发程序这个过程其实修复错误的时间比编码的时间还要多得多,修复各种bug后本系统基本功能都可以正常实现,但是还有进步空间,比如运行效率还是不行,有很多人还是用的旧版win,所以还得从底层代码入手,为老台式机用户节省一笔开销,处理数据过多时会有卡顿情况,管理大地区还是有很大困难的。
测试需要完善系统的功能,在功能方面没有什么异常,所有需求都可以实现后,才可以保证用户使用起来比之前效率明显高了很多,而不是很多漏洞,导致反而比人工管理还麻烦了很多。再努力完善也会有很多不足,我们根据对总功能影响程度,绘制各种大小bug的统计图。
本文通过垃圾分类管理系统开发,结论如下:
- 要想系统更完善,网站界面必须美观友好,功能健全。由于经验不足,设计图形界面比较简单,只是对基本功能进行开发。
(2)开发系统,经验最重要,经验不足,难免会有许多考虑不周之处。
(3)这次开发,我参考很多垃圾分类系统例子,吸取一些其他信息系统长处,对自己毕业设计进行完善,不足之处,有待钻研。
6.2展望
实践证明,垃圾分类管理系统有着很好的发展前景,经测试运行。垃圾分类管理系统是一种新型的网络信息技术。近年来各方面产生的垃圾越来越多,该系统的作用一定会在以后更加凸显。更好地建设与管理垃圾分类的信息是我们不可推卸的责任。在毕业设计的过程让我体会到一个团队的重要性。
参考文献
- 黑马程序员. Java Web程序设计任务教程[M].人民邮电出版社:, 201701.431.
- 黑马程序员. JavaScript前端开发案例教程[M].人民邮电出版社:, 201802.343.
- 崔洋, 贺亚茹. MySQL数据库应用从入门到精通[M]. 中国铁道出版社, 2016. 80-98.
- 张少应, 陈庆荣. 基于Spring的数据库访问技术研究[J]. 信息技术, 2016(10):81-84.
- 李洋. SSM框架在Web应用开发中的设计与实现[J]. 计算机技术与发展, 2018, 26(12):190-194.
- 王大鹏. 软件工程系统结构模型的应用探究[J]. 青年时代, 2017(2):87-87.
- 张中宝, 韩同欣, 刘西洋. 从UML类图到Java代码自动生成技术研究[J]. 2016(16):125-127.
- 荣艳冬. 关于Mybatis持久层框架的应用研究[J]. 信息安全与技术, 2018, 6(12):86-88.
- 李展飞. Web软件系统开发框架设计在MVC模式的实现[J]. 电子技术与软件工程, 2017(8):61-69.
- Gupta P, Govil M C. Spring Web MVC Framework for rapid open source J2EE application development: a case study[J]. International Journal of Engineering Science & Technology, 2017, 2(6).
- Miri R, Tripathi P, Tandan S R, et al. Improved MVC for J2EE Architecture[J]. Software Engineering & Technology, 2018, 4(11).
- 杨辉.Spring技术内幕[M].北京:机械工业出版社,2012.93-96.
- 徐雯,高建华.基于SpringMVC及MyBatis的Web应用框架研究[J].微型电脑应用,2012,(07):60-75.
- 赵鸿雁.关于Java在软件开发中的误区分析[J].信息技术与信息化,2016,(04):56-58.
- 张海藩,牟永敏.软件工程[M].北京:清华大学出版社,2013.80-90.
- Rachit Mohan Garg,YaminiSood,BalajiKottana.A Framework Based Approach for the Development of Web Based Applications Waknaghat[J].Jaypee University of Information Technology,2011,1(1):1-4.