当前位置: 首页 > article >正文

基于Spring Boot的停车场管理系统的设计与实现

文未可获取一份本项目的java源码和数据库参考。

1、前言

随着我国现代经济步入快车道,人民生活质量不断提高,城市化建设得到了快速推进, 使得人们对代步工具有了更高的要求、国家对汽车行业的扶持政策、政府部门对道路交通基础设施的投资加大, 这一系列的举措促使了近年来机动车的持有量迅猛增长。

车辆的不断增长使得停车问题已成为考核一个城市发展能力的重要标志。为了满足日益增长的停车需求,因此,大量的停车场馆应运而生,大型、超大型停车场不断涌现,相应的收费管理系统也应运面生,但随着停车场规模的增大,传统停车场收费管理方式已不能满足管理需求。

近年来,随着我国经济的不断发展,管理系统的管理制度越来越多。系统管理也都将通过计算机进行整体智能化操作,对于停车场管理系统所牵扯的管理及数据保存都是非常多的,举例像所有系统管机构管理、用户管理、车场管理、报表查询等,这给管理者的工作带来了巨大的挑战,面对大量的信息,传统的停车场管理系统查询体系已经无法满足用户的需求。

为此开发了本停车场管理系统,为用户提供一个停车场收费信息查看的平台,同时方便管理员对用户车辆信息进行处理。该系统满足了不同权限用户的需求,即管理员、用户,管理相关信息可以及时、准确、有效地进行,系统化、标准化和有效的工作。

2、国内外研究现状

国外停车场管理系统经过了多年的发展,现在已经基本进入了无人智能化的管理阶段,一般都采用制造精良高稳定性的专业设备实现自动收费操作,国外最明显的就是收费方式的改变,现在全部都是采用无纸化的电子收费方式,更加注重人性化和智能化。在一些发达国家好多年以前就已经有汽车暴增的现象了,所以这些国家早就开始关注停车问题[1]。很多年前停车场及管理问题被美国、日本等一些国家花重金来研究,在停车场的智能化管理方面,国外有许多值得我国借鉴的地方。目前不论是在国外还是在国内,停车场管理中研究的热点问题都是应用智能系统。停车场中车辆的自动识别、自动计费/收费、自动停车诱导、自动开关道闸等都属于停车管理系统智能方面的应用,是停车场管理系统中研究的主要技术,有些技术在国外的停车场中已经投入使用,相对己经成熟。

目前国外停车场使用的最新技术包括:超声波技术、咪表停车收费、停车诱导系统、视频车辆底盘检测技术、车牌识别技术、网络摄像机车位定位检测、出口自动收费机。国外的许多停车设备生产厂家也在研发基于“网络化停车”的停车场系统[2]。系统依据一个国家的多个停车场随意停车,通过获取用户当前所处的位置,查找到距离最近的停车场的停车位,实现统一调配资源快速停车,同时也支持在家里使用互联网或者手机网络预订停车位、缴纳停车费用。

目前我国的停车场内大部分管理是以人工为主,还很落后,大多是在一块闲置的空地上画好车位界线,然后简单地设立一块收费牌,形成一个简易的停车场。虽然国内有很多以计费为中心的停车场,收费系统比较完善,但是对停在停车位的车辆实时情况了解不够,对车辆的安全性重视程度不够[3]。有的停车场釆用高速球型摄像机,通过摄像头的定时转动进行视频监控,实时观察停车场的情况。采用这样的监控方法提高了停车场车辆的安全系数,使停车场的工作人员对车辆的实时情况有所了解,但是在视频监控过程中可能出现监控死角,在一定的时间段内使一些地方处于监控的盲区,对于大型的停车场这个问题尤其突出。

我国的停车场收费系统大多采用接触式IC卡进行收费管理,虽然采用接触式IC卡收费具有准确度高、保密性好、灵敏度高、使用寿命长等优点,但这种收费管理只有用户在停车场出入口停车才能操作,耗时较长,当出入停车场车辆较多时很容易出现车辆排队的现象。车辆进入停车场后由人工完成车位的引导工作,增加了管理成本,且运行效率较低,造成人力资源浪费[4]。

3、相关技术

3.1 B/S架构  

B/S架构是服务器/浏览器架构模式,随着互联网热度的提升,地位也在水涨船高,网民最常用的就是登录浏览器端查看信息,B/S用综合客户端的方式,以服务器端为大头来主要处理所要实现的业务,客户端的主要作用就是作为功能的显示面并跟数据库来进行对接[5]。B/S架构在使用中的好处:

  1. 操作性更为舒适,且易学好懂。
  2. 具有分布的特点,且可随意进入查看和修改。
  3. 系统维护的工作更容易开展。
  4. 便于开拓业务,网站的新增就能新增功能。

由此可见,B/S架构的操作更为方便,对业务的开展更为适合,对维护所需的系统更容易上手,且对开发新功能更是便捷。本项目就是在需求分析后的综合考虑下使用此架构。

3.2 Spring Boot技术简介

 Spring Boot是由Pivotal团队研发开始在2013年、初代的羽量级开源框架在2014年开始发布[6]。它基于Spring 4.0设计,拥有之前Spring框架的几乎所有功能,而且还由优化配置信息来进行优化。它即拥有Spring的开发方式和搭建过程[7]。此外Spring Boot通过集成大量的框架使得依赖包的版本冲突,还有不同版本兼容性的问题也得到了很好的解决办法[7]

Spring Boot拥有的特点如下:

  1. 代码无需生成,XML配置也不需要。
  2. 提供自动配置的“starter”项目对象模型(POMS)以简化Maven配置。
  3. 里面会自动带有Tomcat或Jetty等Servlet容器。
  4. 尽可能的自动配置Spring容器。
  5. 自行准备配置好的特性,如指标、健康检查和外部化配置。
  6. 可设置特有的的Spring应用程序,并且基于其Maven或Grendel插件,可以创建可执行的JARs和WARs[8]

3.3 Mysql简介

MySQL数据库是世界上最流行的关系型数据库管理系统之一,它可以工作在许多平台(Unix,Linux,Windows)上,它是具有客户机/服务器体系结构的分布式数据库管理系统,而且MySQL数据库所使用的语言是数据库中最常用最标准化的语言。MySQL数据库是瑞典的MySQL AB公司开发的[9]。mysql数据库它主要是适用于网络,并且它具开源代码软件,用其建造的数据库可在任何电脑平台上进行访问,相对于其他数据库而言,MySQL数据库具有运行速度快、可靠性高、安全保密性强等优点,大大降低了总体成本,非常适合中小型网站的开发[10]。

Mysql数据库它的主要优点就是让人们在学习的过程当中容易、简单的去学习也方便进行操作。对于我们在使用mysql数据库的情况下将它的功能要进行代码的编写。对于mysql数据库来说我们只要编写一小段的代码就能实现功能。

参考文献

[1] Paul Deck. Spring MVC学习指南(第二版)[M]. 人民邮电出版社. 2017.5

[2] 克雷格.沃斯. Spring Boot实战[M]. 人民邮电出版社. 2016.9

[3] 刘亚军,高莉莎. 数据库原理与应用[M]. 清华大学出版社. 2015.2

[4] Alexander Tarlinder. 程序开发人员测试指南 构建高质量的软件[M]. 人民邮电出版社. 2018.5

[5] Craig Walls. Spring Boot in Action[M]. Manning Publications. 2016.1

[6] 张振华. Spring Data JPA从入门到精通[M].清华大学出版社. 2018.5

[7] Martin Fowler. 重构 改善既有代码的设计[M]. 人民邮电出版社. 2015.8

[8] 王松.Spring Boot+Vue全栈开发实战[M]. 清华大学出版社. 2018.12

[9] 张旭刚,张昕,高若寒.基于Spring Boot与MyBatis框架构建动态读写分离模型 [J].微型电脑应用. 2021(02)

[10] 朱智胜.Spring Boot技术内幕[M].机械工业出版社.2020

2.本课题要研究的内容、解决的问题和拟采用的研究手段(途径)等:

研究内容 

基于Spring Boot的停车场管理系统的开发基于Java平台,需要采用MySQL数据库和Spring Boot技术完成该系统的开发工作,主要功能如下:

1、个人中心:可以对个人账号、姓名、性别、身份证号码、手机号码、相片、车牌号等信息,进行查询、添加或删除。

2、车位信息管理:可以对车位编号、所居区域、楼层位置、地址、发布日期、相关图片、收费标准等信息,进行详情操作。

3、离场信息管理:可以对车位编号、所居区域、楼层位置、地址、收费标准、个人账号、姓名、车牌号、停车时间、离场时间、审核回复、审核状态等信息,进行查看操作。

4、停车信息管理:可以获取车位编号、所居区域、楼层位置、地址、收费标准、个人账号、姓名、车牌号、停车时间、审核回复、审核状态等信息,进行查看操作。

5、用户管理:管理员通过用户管理列表可以获取个人账号、姓名、性别、身份证号码、手机号码、相片、车牌号等内容,可以进行修改或删除操作。

6、 消费信息管理:管理员通过消费信息管理列表可以查看车位编号、所居区域、楼层位置、收费标准、个人账号、姓名、车牌号、累计时长、应付金额、日期、审核回复、审核状态等信息。

7、分类管理:可以对车位分类进行修改或删除、查看操作。

8、标签管理:可以对车位标签进行修改或删除、查看操作。

解决问题

1、用户注册与登录时密码安全性,提升网站安全性。

2、完成用户身份切换认证的功能,主要实现前台学生教学资料查看下载、后台对教学资料管理等功能。

3、实现数据库交互数据与存储数据功能。

拟用手段

1、需求分析:首先对同类型系统和文献进行调研,然后应用用例图和活动图等方法完成需求分析,以保证能清晰明确的确定系统需求。同时考虑性能需求,以满足日常需要。

2、软件设计阶段:在此阶段确定好系统及数据库的逻辑关系,确定好页面设计风格,应用类图、流程图等多种方式对系统进行准确完整的设计。

3、软件开发阶段:规范开发代码,采用统一的书写规则,代码编写过程中出现问题及时进行调试,注重代码的复用性。

4、软件测试阶段:设计多组测试用例,单元测试阶段测试方法拟采用黑盒测试的边界值测试和错误推测法来确定测试用例,然后采用白盒测试的方法进行测试,用来检验软件覆盖是否完善。


http://www.kler.cn/a/307281.html

相关文章:

  • FPGA学习(10)-数码管
  • MySQL:数据库的约束
  • React中 修改 html字符串 中某些元素的属性
  • 【IC每日一题:IC常用模块--RR/handshake/gray2bin】
  • 如何保护 Microsoft 网络免受中间人攻击
  • SQL集合运算
  • 【STL】 set 与 multiset:基础、操作与应用
  • Vue路由配置、网络请求访问框架项目、element组件介绍学习
  • 数据库连接池与Druid【后端 16】
  • STM32 HAL freertos零基础(十)软件定时器
  • Renesas R7FA8D1BH (Cortex®-M85)控制ISLS29035
  • Unity-Transform类-父子关系
  • 五、(JS)window中的定时器
  • PhotoZoom Pro / Classic 9.0.2激活版安装激活图文教程
  • 栈与队列(c语言实现)
  • GAMES101(2~3作业)
  • 【系统架构设计师】单例模式(Singleton Pattern)
  • PCIe进阶之TL:Common Packet Header Fields TLPs with Data Payloads Rules
  • MYSQL数据库基础篇——MYSQL的安装与使用
  • Go中如何找到哪里依赖了某个module,如何找到所有module的最大GoVersion
  • 【UE5 C++课程系列笔记】02——创建C++类的三种方式
  • 如何快速整理生成python项目依赖的库,提升自动化部署效率
  • jdk相关介绍
  • 【Linux下的cpp】编译调试(gcc、g++、gdb)
  • 工程师 - ACPI和ACPICA的区别
  • [Redis] Redis中的Hash类型和List类型