【《室内环境污染水平检测与评价系统软件设计案例分析》3600字】_第1页
【《室内环境污染水平检测与评价系统软件设计案例分析》3600字】_第2页
【《室内环境污染水平检测与评价系统软件设计案例分析》3600字】_第3页
【《室内环境污染水平检测与评价系统软件设计案例分析》3600字】_第4页
【《室内环境污染水平检测与评价系统软件设计案例分析》3600字】_第5页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

室内环境污染水平检测与评价系统软件设计案例分析目录TOC\o"1-3"\h\u45861.1系统服务器的设计与实现 1199231.1.1SSM框架 218811.1.2数据传输Server端 228711.1.2数据库端 3178561.1.3系统服务器部署环境 5321091.2室内环境监测管理系统设计与实 5131811.3环境检测APP客户端设计 83091.4小结 101.1系统服务器的设计与实现服务器端是系统实现数据交互、数据存储和数据分析的平台,是系统的重要组成部分,主要由数据传输Server端、数据库端、室内环境监测管理系统部分和基于K近邻的Stacking集成学习算法四个部分组成。系统服务器的代码实现使用Java语言,在IDEA平台进行开发,通过Tomcat8.0部署网络服务器,使用花生壳软件将内网映射成公网,实现TCP通信,并供多用户使用该系统。服务器端的示意图如图5-1所示。图5-1服务器端各组成部分示意图1.1.1SSM框架SSM是常见的一种MVC模式的框架,使用Spring框架整合SpringMVC框架和MyBatis框架,将软件系统分为了持久层、业务层、控制层和表现层ADDINNE.Ref.{0B7EC4B0-1556-47D0-84BD-024C7C5BD243}[67]。通过使用SSM框架能够很好地整合室内环境检测管理系统、数据库以及数据通信Server端和室内环境污染等级算法,其中数据通信Server端和室内环境污染等级算法不属于SSM框架中的任何一层,通过将算法与Server端封装为对象的方式在业务层进行调用,从而相应功能。持久层属于MyBatis框架ADDINNE.Ref.{B0D6A963-E180-4C68-A4CD-BC20E3F6A213}[68],用于连接数据库、获取数据信息。MyBatis是一种基于对象关系映射的持久层框架,使用XML或注解形式配置数据库相关参数,使用关系映射的方式获取数据,具有使用简单方便的特点。业务层属于Spring框架,负责业务模块的逻辑应用设计。Spring是一个轻量级的容器框架,由控制反转(IOC)和面向切面(AOP)构成,其中控制反转(IOC)是SSM框架的核心之一。Spring通过提供一个容器,帮助创建对象和管理对象之间的依赖关系,支持AOP编程,使得软件系统可以进行权限拦截,可以和其他框架联用,降低了对象之间的耦合度、方便系统维护管理。控制层和表现层都属于SpringMVC框架,其中控制层主要负责各个业务模块的流程控制,表现层主要负责前端页面的展示,需要和控制层结合开发,即前端页面发送请求,控制层接收请求并处理,处理结果返回至前端,由此实现前端页面的某一业务。1.1.2数据传输Server端本系统使用TCP协议传输数据,环境检测终端的Wi-Fi模块作为TCP协议的客户端,以对象的形式封装并实现TCP协议的服务端,并在业务层中进行调用,实现环境检测终端与服务器端之间的连接与数据传输功能。TCP协议是一种基于面向连接的、安全的、基于字节流的传输层通信协议,是最基本也是最常见的通信协议,能够保证网络数据及时、完整地传输。本系统中环境检测终端作为TCP协议的Client端,服务器端作为TCP协议的Server端,TCP协议使用三次握手协议建立连接,首先,Client端将标志位SYN置1,随机产生一个值j赋予seq,并将该数据包发送给服务端,此时Client端进入SYN-SEND状态,等待Server端确认。然后,Server端收到数据包,有标志位为1可知Client端请求建立连接,随后Server端将标志位SYN和ACK都置1,将j+1赋给ack,随机产生一个k值赋予seq,并将该数据包发送给Client端以确认连接请求,此时Server端进入SYN-RCVD状态。最后,Client端收到确认后检查ack是否为j+1,ACK是否为1,若检查结果正确则将标志位ACK置1,ack=k+1,将该数据包发送至Server端,同样Server端收到数据包后检查ack是否为k+1,ACK是否为1,若检查结果正确则建立建立成功,此时Client端和Server端均进入ESTABLISHED状态,完成三次握手,开始传输数据。图5-2TCP协议Server端程序设计流程图程序设计流程图如图5-2所示。首先,服务器端开启并监听8088端口,连接Redis数据库,用于存储在线设备信息与实时检测数据。然后,环境检测终端中的无线WiFi模块使用TCP协议与数据通信Server端建立连接,连接成功后服务器端开始接收环境检测终端发送的实时数据,并使用室内环境污染等级评价算法进行评价,获得当前环境污染等级评价结果。最后,将原始检测数据与对应的评价结果存储至MySQL数据库,并返回至室内环境监测管理系统和APP端。1.1.2数据库端本系统采用MySQL数据库与Redis数据库联用的方式存储数据,其中MySQL数据库用于存储管理员用户信息、设备信息和历史数据等持久化数据ADDINNE.Ref.{F671AFFD-3D12-4DFF-9BF2-F44DDCD228A7}[69],Redis数据库用于存储实时接受数据、当前在线设备编号和当前在线用户等缓存型数据ADDINNE.Ref.{9CC4FB3F-EAE3-4D0E-AEC4-4443C0628FA4}[70]。相关数据库表如下所示。MySQL数据库中管理员信息表与用户信息表相似。以用户信息表的表头信息为例,如表5-1所示。表SEQ表\*ARABIC5-1用户信息表表头名称数据类型说明u_idint用户名IDu_namevarchar用户名u_pwdvarchar用户登录密码u_gendervarchar性别u_ageint年龄phonevarchar手机号码MySQL数据库中用于存储历史数据的数据表的表头信息,如表5-2所示。表5-2历史检测数据表表头名称数据类型说明idint数据IDtempvarchar温度值humivarchar湿度值ch2ovarchar甲醛浓度值pm25varcharPM2.5浓度值pm10varcharPM10浓度值nh3varchar氨气浓度值resvarchar污染等级locationvarchar设备地理位置device_idvarchar设备编号Redis数据库用于存储在线设备编号的数据表的表头信息,如表5-3所示。表5-3在线设备标识表键(key)类型键(key)名称值(value)类型说明stringOnlineDeviceset集合在线设备的设备编号Redis数据库用于存储当前在线用户信息的数据表的表头信息,如表5-4所示。表5-4在线用户信息表键(key)类型键(key)名称值(value)类型说明stringOnlineUserstring集合在线用户的用户名Redis数据库用于存储实时检测数据的数据表的表头信息,如表5-5所示。表5-5实时检测数据表键(key)类型键(key)名称值(value)类型说明string在线设备的设备编号string集合存储在线设备的实时检测数据1.1.3系统服务器部署环境Web应用服务器使用Tomcat8.0实现ADDINNE.Ref.{7593E8F3-B3AB-4B87-8D71-BD1406B516D2}[71],使用JAVA编程语言,开发平台为IDEA,主要部署流程如下:1)在PC端下载并安装Tomcat8.0,并在IDEA平台中添加服务配置,即TomcatServer;2)将Tomcat中的HTTP端口配置为8080,访问路径URL配置为http://localhost:8080/,若部署成功,则该访问路径显示Tomcat首页;3)将项目部署在Tomcat中,并启动Tomcat;4)在浏览器中输入http://localhost:8080/ssm_war_exploded/,即可访问本系统的web应用;5)使用花生壳软件将内网映射至外网,供外网用户访问该系统,配置信息如图5-3所示。配置完成后,将Tomcat的访问路径更改为http://22j83589a2.iok.la:29015/ssm_war_exploded/,可以使任意用户通过该访问路径访问web应用服务器,即室内环境检测管理系统首页。图5-3花生壳映射外网配置图1.2室内环境监测管理系统设计与实室内环境监测管理系统是一个web端应用,使用典型的SpringMVC框架ADDINNE.Ref.{9F3B1BDB-98E5-40F6-9C08-A2B0B82CBBF4}[72],并部署在Web应用服务器(Tomcat8.0)上,从而实现该管理系统,实现对整个系统的数据管理以及硬件设备的实时监测。室内环境监测管理系统主要实现信息的可视化展示,使用基于B/S架构的MVC模式实现,主要有用户模块、管理员模块、设备模块和数据模块。室内环境监测管理系统功能结构图如图5-4所示。图5-4室内环境监测管理系统结构图用户模块主要对用户信息进行查看、修改、删除等,通过对数据库中用户信息表进行增、删、改、查实现,如图5-6所示。图5-6用户信息详情管理员模块主要有管理员登录与注册、管理员信息查询等,如图5-7和5-8所示。图5-7管理员登录图5-8管理员信息详情设备模块主要查看设备的在线/离线状态和设备使用情况等,通过调去redis数据库中在线设备的标识符获取设备在线/离线状态,如图5-9所示。图5-9设备管理数据模块主要是历史数据显示、实时数据显示等,通过调取MySQL数据库中的历史数据表获取历史数据,调取当前处于连接状态的TCP协议Server端中redis的实时数据表进行实时数据显示如图5-10所示。图5-10历史详细数据1.3环境检测APP客户端设计本系统关于APP软件采用MVP(Model-View-Presenter)模式ADDINNE.Ref.{F99BC2E8-EA8E-4B02-99E0-E9606AF7B040}[73]进行开发,其中Model负责提供数据,View负责显示页面,Presenter负责处理逻辑,除此之外还需要ViewInterface实现View层的接口,从而和Presenter进行交互。MVP模式下表现层的特点如下:1)View与Model完全隔离。只要接口不变,View层与Model层之间就不会相互影响,因此Model层的业务逻辑灵活性和可重用性更好。2)Presenter和View的实现技术无关。Model层可兼容多种技术构建的View层。3)可以进行View的模拟测试。具有开发、测试更加方便的特点。根据本系统的功能需求,使用MVP模式开发环境检测APP,主要有用户管理、检测和历史数据查询等功能。环境检测APP功能结构图如图5-11所示。图5-11环境检测APP功能结构图环境检测APP的用户与登录功能是基础,登录界面和注册界面如图5-12所示。APP通过服务器端连接MySQL数据库中的user表(用于保存用户信息),查找是否存在当前用户名并判断用户名与密码是否一致,一致则成功登录并跳转至主页面,否则弹出用户名与密码不正确的弹窗。a)APP登录页面b)APP注册页面图5-12APP端用户登录与注册环境检测APP的主要功能是通过扫描环境检测终端的二维码,获取权限,并查看当前检测终端的实时检测数据。用户登录APP跳转到主页面,主页面含有高德地图定位功能和扫一扫功能,使用主页面中扫一扫的功能,获取扫描设备的设备编号与开始查看指令,APP的Presenter层获取到当前设备编号,检查设备是否处于在线状态,只有当前设备处于在线状态时,APP端才能从服务器端中TCP协议服务端获取到实时检测数据和评价结果,并以数值形式显示。扫描设备和实时数据显示如图5-13所示。a)APP扫描页面b)APP检测结果页面图5-13APP端查看实时检测数据1.4小结本章针对室内环境污染等级检测与评价系统的软件设计展开了相关论述,主要从系统服务器端、室内环境检测管理系统和环境

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论