基于javaEE平台的城市重大活动监控毕业设计


    


    基Java EE台城市重活动客流监控系统设计实现


    越越现代化繁华城市中出行越越频繁文化需求越越政府者商家城市中举办种样类型活动流安全城市街道安装摄头红外等监控设备通算法流数实现间断分析者通手机信令进行统计分析数时候法更加直观设备监控体现出活动出现实时状况法更高效进行预警处理没达更监控效果
    文设计实现基JavaEE台城市活动监控系统项目采BS架构前端分离技术前端采数双Vue框架开发便类型数展示端采javaEE高效开发springboot框架数存储采读存数效率高redis数库符合监控数务数传递快速性系统数流分两部分:监控数视化活动员理监控数视化基监控数进行开发端读取redis数进行部分处理通http协议传前端展示活动员理者通前端填写数http协议返回端处理存储redis进行缓存通redisRDB进行持久化作者参台需求分析概设计独立完成开发系统业务功系统部署等(种原监控数系统展示期间通机模拟程序模拟具备真实性参考性)
    关键词:监控数视化活动员理前端分离JavaEE











    Abstract
    In a more and more modern and prosperous city people travel more and more frequently and their cultural needs are more and more The government or businesses hold various types of activities in the city In order to ensure the safety of people flow the city streets are equipped with cameras infrared and other monitoring devices and then people flow data is analyzed continuously through algorithms or statistical analysis is carried out through the signaling of mobile phones Analysis But sometimes these data can not be more intuitive from the device monitoring and the realtime situation of activities can not be more efficient warning and processing did not achieve better monitoring effectThe design and implementation of the paper is based on the Java EE platform urban activity monitoring system The project adopts the B S architecture frontend and backend separation technology the frontend adopts the data bidirectional Vue framework development which is convenient for various types of data display The backend adopts the springboot framework developed by Java EE with high efficiency and the data storage adopts the redis database with high efficiency which conforms to the monitoring data and task data transmission The system can be divided into two parts in terms of data flow monitoring data visualization and activity personnel management monitoring data visualization is developed based on monitoring data and the back end reads the data on redis for partial processing and then transmits it to the front end for display through HTTP protocol activity personnel management is the user fills in the data through the front end and the HTTP protocol returns to the back end for processing and storage It is stored in redis for caching and persisted through the RDB of redis The author participated in the requirement analysis and summary design of the platform independently completed the business functions and system deployment of the development system (due to various reasons the monitoring data was simulated by a random simulation program during the display of the system which did not have the authenticity and referentiality)
    Keywords Monitoring data visualization Activity personnel management Front and rear end separationJavaEE





    目录
    1 前言 1
    11国外概况 1
    12项目目标 1
    13文工作 2
    14文结构 2
    15章结 2
    2 相关技术 4
    21 Springboot 4
    22 Vue20 4
    23 axios 5
    24 JWT 6
    25 章结 7
    3系统需求分析 8
    31总体业务流程分析 8
    32系统户角色分析 8
    33数需求 9
    34功性需求分析 10
    341系统登录 10
    342 角色选择 10
    343 活动注册 11
    344 分监控点视化 12
    345 总监控点视化 13
    346 活动部门理 14
    347 监控历史回放 16
    348 舆舆控制 17
    349 预警配置响应更改活动详情 18
    35性需求分析 19
    36章总结 20
    4系统概设计 21
    41 系统总体架构设计 21
    411 前端架构说明 22
    412 端架构说明 23
    42 系统功模块设计 24
    43 数库设计 25
    431 REDIS 25
    44 监控数接口设计 35
    45 章结 37
    5系统详细设计 38
    51户理 38
    511 系统登录 38
    512 角色选择 40
    52部门理 45
    521 活动注册 45
    522 活动部门级理 47
    523 预警配置响应更改 50
    524 舆舆控制 52
    53监控视化 55
    531 分监控点视化 56
    532 总监控点视化 57
    533 活动历史回放 59
    54章总结 60
    6系统部署 61
    7系统测试 62
    71测试环境 62
    72测试方法 62
    73功性测试 62
    74章总结 65
    8总结 66
    参考文献 67
    谢 辞 68
    附 录 69
    程序源代码 69






















    1 前言
    11国外概况
    着全球济高速发展越越政府者商界举办型活动国外发生少恶性活动踩踏事件需进行活动理流进行实时监控城市活动客流监控系统
    国城市活动流监控基基种技术视频监控手机信令监控等流进行实时监控数化监控实现踪区域流密度评估流拥挤程度
    国外城市活动流监控基采感应器传感流进行踪监控精准获取流位置走实现活动流评估
    系统目标利获取监控数数进行视化结合城市活动理系统致力解决活动理带繁琐明确活动部门实施务活动目标灵活调整活动预警配置务活动部门进行务调整发挥流监控数效益
    12项目目标
    城市重活动流安全活动安全重中重着监控技术成熟越越监控数提供针目前活动部署监控数空白监控活动域明确活动监控分工明确级务部署清晰反馈时等等问题文旨利监控数活动部署进行结合设计监控数活动理结合活动监控台实现活动方案制订理部门级部门务达级部门意见反馈监控点明确分配部门理监控点分监控点数实时展示分监控点历史回放舆控制等功
    活动监控台功分两部分部分活动组织部进行合理分配活动方案制订部分监控数进行处理分类直观全面视化展示通监控数提供信息更加高效预警处理活动中突发事件
    系统部署理者踪需监控区域更加直观观察流变化时踪区域进行预警活动结束够通历史回放观察活动流车流变化趋势便更次活动中总结验弥补理者活动处理效率足法满足活动部署灵活性解决应活动突发事件活动组织部门臃肿缓慢信息传递查系统群众时知拥堵段理者通发布消息疏通群提供力帮助
    13文工作
    文基JavaEE开发重城市活动监控设计开发工作进行详细阐述作者参项目全部开发流程独立完成系统业务功模块:系统登录角色选择活动注册分监控点视化总监控点视化部门理等模块设计实现参系统部署等工作
    需求分析阶段作者介绍系统总体业务分析系统户角色分析数需求功需求概设计阶段作者介绍系统总体架构模块划分结合redis存储结构进行数结构设计接口设计进行详细阐述详细设计实现部分作者通时序图流程图系统模块设计实现进行详细介绍测试阶段通系统测试程中功测试展示部分测试例系统部署阶段作者介绍部署环境部署架构
    14文结构
    文分八章节详细城市重活动监控台设计实现进行阐述章节容:
    第章节前言介绍文背景项目研究容意义项目研究目标简单介绍文工作组织结构
    第二章节项目开发相关技术综述项目开发关键框架进行简概述项目开发工作理基础
    第三章节城市重活动监控台需求分析结合例图详细述系统功需求
    第四章节城市重活动监控台概设计详细介绍系统总体架构数库设计接口设计等
    第五章城市重活动监控台详细设计实现通时序图流程图等系统业务功模块设计实现进行详细阐述
    第六章城市重活动监控台系统部署介绍介绍部署系统部署
    第七章节城市重活动监控台系统测试针系统模块功设计测试例分析结果查缺补漏
    第八章结全文容进行总结提出足展处
    15章结
    章通介绍系统背景说明重城市活动监控活动理监控相结合重性确定文建设目标通介绍系统研究容实现目标进步
    说明系统实现意义介绍文组织结构





























    2 相关技术
    章节介绍城市重活动监控系统设计实现涉相关技术理前端开发数双vue框架结合tomcatspringmvcspring核心springboot数传递时需框架axios保证户安全签名jwt技术
    21 Springboot
    SpringbootJava微服务开发框架直接快速构建web应Java web开发高效框架[4]
    Springboot体Spring构成Spring核心控制反转(IOC)面切面编程(AOP)IOC旨方便项目维护测试提供种通Java反射机制Java象进行统配置理方法Spring框架利容器理象生命周期容器通扫描XML文件类特定Java注解配置象开发者通赖查找赖注入获象AOP基代理模式时运行时配置AOP框架针模块间交叉关注点进行模块化中通务安全事务日志等进行集中理外Spring类优秀框架进行集成极方便框架整合
    Springboot仅仅继承Spring框架优秀特性进步简化web应整搭建开发程[5]特征:
    1 创建独立Spring应程序基MavenGradle插件创建执行JARsWARs
    2 嵌TomcatJetty等Servlet容器
    3 提供动配置starter项目象模型(POMS)简化Maven配置
    4 动配置Spring容器
    5 提供准备特性指标健康检查外部化配置
    6 绝没代码生成需XML配置
    22 Vue20
    Vue套构建户界面渐进式Java框架核心包括数双绑定组件模块化开发模块化路图22简说明vue数双绑定原理[6]

    图 21 vue数双绑定数原理

    1 vue会先构造出虚拟DOM
    2 旦监测出数改变会通ObjectdefineProperty定义数拦截截取数变化
    3 截取变化数通watcher改变虚拟树DOM中具体数
    4 通更新虚拟DOM元素值改变渲染dom树值完成双绑定
    Vue模式mvvm模式(modelviewmodelView)通modelView作中间层(vm实例)进行双数绑定变化
    23 axios
    Axios年兴起http库易简洁高效性逐步取代ajax成受家欢迎http库支持node端浏览器端支持promise具丰富配置项[7]
    Axios通createInstance底层根默认设置 新建Axios象axios中请求部AxiosprototyperequestAxiosprototyperequest部this绑定新建axios象形成axios实例新建Axios象时会两拦截器request拦截器response拦截器
    请求拦截器作发送请求前进行操作例发送请求时加token
    响应拦截器接收响应进行操作例返回错误状态时需进行页面跳转
    Axios具体方法:
    1 axiosget(url[ config]) get请求列表信息查询
    2 axiosdelete(url[ config]) 删
    3 axiospost(url[ data[ config]]) post请求信息添加
    4 axiosput(url[ data[ config]]) 更新操作
    24 JWT
    Json web token (JWT) 网络应环境间传递声明执行种基JSON开放标准((RFC 7519)该token设计紧凑安全特适分布式站点单点登录(SSO)场景[8]JWT声明般身份提供者服务提供者间传递认证户身份信息便资源服务器获取资源增加额外业务逻辑必须声明信息该token直接认证加密
    传统session认证中户访问会伴sessionsession存入存中着户增加分布式应广泛session会暴露占存增加服务器负载均衡压力等问题限制应扩展[9]
    JWThttp协议样时状态需服务器端进行验证者保留信息样应扩展提供便利图JWT服务端客户端间操作

    图 22 JWT通讯原理
    1 户户名密码请求服务器
    2 服务器进行验证户信息
    3 服务器通验证发送户token
    4 客户端储存token次请求附token
    5 服务器验证token返回数
    25 章结
    章介绍开发城市重活动监控系统时springBootVueJWTaxios等开发框架相关理前端vue加axios网络安全Jwt端springboot续系统设计实现提供基础
























    3系统需求分析
    章城市重活动监控系统进行需求分析业务流程系统户角色进行分析详细介绍功性需求非功性需求城市重活动监控系统功需求分系统登录角色选择活动注册分监控点视化总监控点视化活动部门理监控历史回放舆舆控制预警配置响应更改等部分接利例模型详细介绍系统需求系统开发提供
    31总体业务流程分析
    城市重活动监控系统 针角色展示视图达监控活动分工图城市重活动客流监控系统总体业务流程图[10]


    图 31 城市重活动监控系统总体业务流程图

    户登录开始户进入角色选择选择角色进入角色视图中端服务器请求数程中端服务器根户角色请求解析参数数库获取监控数业务数端服务器数进行处理统计整理响应返回数web端进行监控数视化业务数展示
    32 系统户角色分析
    城市重活动监控系统户角色目前较简单分活动理者活动分部门员群众活动理者城市活动注册创建员拥创建活动绝阐述权活动理者活动中设置部门职务衍生出活动分部门员活动分部门员受活动理员控拥部分活动监控权级关系群众非活动理员监部分拥部分活动监控权舆权然受活动理员控制
    总说系统角色系统拥权限
    1 活动理者:(目前creator户成活动理者)活动详情分监控点实时数总监控点实时数汇总部门员分配情况员注册情况
    2 分部门员:部门属分监控点实时数部门详细情况员注册情况
    3 群众:活动总监控点数发表言查发布消息
    城市重活动客流监控系统角色关系图[8]

    图 32 城市重活动客流监控系统角色关系图


    33数需求
    城市重活动监控系统监控需监控数监控数道路街头监控特定活动监控区域者手机信令等监控数须监控点信息监控行面积道路类型:面道路坡道路坡道路监控点名称(实际点相关)监控具体数需监控点数车辆数时间监控数时间颗粒30s保证够时预警防止突发恶性事件发生
    34功性需求分析
    城市重活动监控系统分活动理包括部门理舆理监控视化功需求细分系统登录角色选择活动注册分监控点视化总监控点视化活动部门理监控历史回放舆舆控制预警配置响应更改等部分面功详细需求进行详细阐述
    341系统登录
    系统登录分登录注册
    注册需填写账号户名密码确认密码确认密码需密码致点击确定果账号没注册页面会显示注册成功输入账号密码进行登录
    登录需填写账号密码果密码错误者账号未注册法登录点击登录成功登录会显示角色选择界面根权限者需求选择角色
    系统登录非活动理者账号具登录时限果时间超30分钟非活动理者账号需重新登录活动理者账号没登录时限
    目前creator账号具活动理者角色权限户具权限户成群众者分部门员角色账号容许重复登录旦重复登录登录账号会强制返回首页进行重新登录
    342 角色选择
    登录成功进入角色选择界面三种角色选择:活动理者活动分部门员(驻场员)群众
    1 选择成活动理者页面滑动活动理者界面界面中左边补充完整信息:选择添加更改头更改名字补充者更改电话号码填写者更改性签名更改者填写完毕点击发送钮更改成功页面会更改成功提示界面右边:已创建活动注册活动注册监控选择已创建活动点击进入活动监控理界面点击注册活动进入活动注册界面果想监控数进入活动注册监控填写监控名称选择面类型填写监控面积点击确定钮会提示监控点注册成功求者时开发者联系导入数监控名称面类型够空否会注册失败
    2 选择成分部门员(驻场员)界面左边需求右边界面:选择注册活动选择已注册活动选择注册活动输入活动密码点击确认继续选择部门部门职业点击确定提示已注册成功选择已注册活动点击进入进入分部门监控界面
    3 选择成群众界面左边界面右边选择已注册活动点击进入群众界面
    图角色选择系统登录例图

    图 33 角色选择系统登录例图

    343 活动注册
    活动注册参考广州东站站汽车客运站群拥挤踩踏事专项应急预案设计中需详细填写活动名称活动密码活动开始时间活动事发生类型活动危险性分析包括总体分析根原诱发素事处置基原信息报告程序包括普通信息报告事信息报告选择监控点预警群密度危险群密度预警变化率行政单位划分添加相关外部单位联系电话方案配置加载方案活动名称密码活动时间均空否注册失败
    行政部门划分:填写部门名称添加职务添加职务做务务开始时间添加部门级响应措施部门二级响应措施部门三级响应措施扩应急响应措施填写部门电话图填写行政单位例图


    图 34 填写行政单位例图

    生成方案:填写方案名称监控点单位进行行政单位划分员分配分配部门分配部门职务数
    点击加载方案查填写活动情况图活动注册例图

    图 35 活动注册例图

    344 分监控点视化
    活动中监控点需监控点控制进行分开显示具体分监控点查监控数视化
    监控点查包括显示行面积监控点类型监控点名称监控点活动中分配数监视灯监视灯应预警流密度否处危险者安全状态监控灯显示绿色代表安全显示黄色代表达预警线显示红色代表达危险线提醒理者关注监控点点击监控点会显示实时监控数
    监控数视化流密度车流流密度变化率数折线图柱形图饼图表现形式分监控表示数视化
    1实时流密度折线图视化流密度时间颗粒30秒整显示50分钟实时流数监控次读取实时数100横坐标时间整图包含总时间50分钟进行数处理时年月日省略更显示数流密度数原基础x100车流数x10流密度单位m2*100车流密度辆*10鼠标悬停曲线会显示该点流密度车流时间信息折线图中两条线条红线代表流密度危险线条黄色代表流警告线直观预警流突发情况点击监控点钮会显示折线图面积更加直观流密度变化波动
    2流密度柱形图视化基折线图显示理
    3流密度变化率判断流拥挤重参考标准流密度变化率折线图单位r流密度末流密度初时间间隔*100样更显示数原单位x10流密度变化率时间段25分钟视图会直接显示变化率数值鼠标悬停曲线会出现该点时间段数值
    450分钟流数量车流数量组成饼图该图数没x100x10真实流车流数鼠标悬停时会显示该饼状部分数占率
    图分监控点视化例图



    图 36 分监控点视化例图
    345 总监控点视化
    活动中然监控点时候更需监控点结合起查总监控点监控点结合总监控点数监控点新数构成更新时间30s展现形式折线图饼图柱形图数单位分监控点致流密度单位面积*100车流单位辆*10
    1新总监控流密度车流折线图横坐标监控点名称样总监控点流监控线指标红线危险线黄线预警线鼠标悬停曲线流密度车流数值监控点名称
    2新总监控流密度饼图扇形区监控点名称数值监控点新流数鼠标悬停会显示选扇区数值名称值
    3新总监控流密度车流柱形图横坐标监控点名称鼠标悬停柱形图流密度车流数值监控点名称
    4新总监控车流饼图扇形区监控点名称数值监控点新车流数
    鼠标悬停会显示选扇区数值名称值
    图总监控视化例图


    图 37 总监控视化例图


    346 活动部门理
    活动注册时活动分监控点监控点分配部门职务组合部门该监控点负责活动理监控点核心部门辅理模式公司组模式类似具体图:


    图 38 活动职务划分图


    活动部门理模块中务达反馈意见反馈部门详情日志等子功
    1 部门详情活动理者界面中查分配点显示分配部门职务查详细部门显出部门电话部门名称部门职务务务开始时间查职务已注册职务账户分部门界面中显示部门名称属部门职务职务注册员已部署应急措施
    2 务达反馈活动理者指点监控点某部门达务务分紧急务普通务务设置模板方便次达达务属务部门员会收务务状态进行更改标记未完成正完成已完成三种标记系统默认未完成旦更改标记完成部门员理反馈理者务反馈中根容颜色进行区分未完成红色正完成黄色已完成绿色务反馈格式务类型+色容+时间
    3 意见反馈部门员部门名义理员提出意见反馈意见反馈格式容+时间
    4 日志理员者部门员操作会记录日志中达务务标记更改意见反馈等日志格式容+时间容标准:谁操作什日志序倒序
    面活动理例图:


    图 39 活动理者活动理例图



    图 310部门员活动理例图

    347 监控历史回放
    监控历史回放回放分监控点流密度车流活动前中实时监控50分钟监控时段历史回放回放开始记录记录结束段时间流密度车流变化理者需活动开始前进行记录活动结束时关闭记录保证历史数完整理者选择时间段监控记录甚调整时间颗粒进行查(颗粒30s)理者获取时间段数时天月全部监控数数段监控数理者查中意调整数颗粒数监控数显示折线图显示方式单位然分监控致图监控历史回放例图:


    图 311 监控历史回放例图

    348 舆舆控制
    舆:群众针监控发表言言格式头+容+时间言进行回复舆控制:理者查群众发表言格式容+时间理者禁止评禁止评群众法发表言理者开放评开发评群众评系统默认评开放理者发布消息消息格式通知+容发布消息理者消息群众发布消息图舆舆控制例图



    图 312 群众舆例图



    图 312 活动理者舆例图
    349 预警配置响应更改活动详情
    理者更改预警配置:更改流密度预警值更改流密度危险值更改流变化率预警值更改流变化率危险值更改预警值监控图中预警线会更改果理者认活动出现重状况启动紧急响应二三级响应扩级响应系统默认级响应旦更改级响应部门员会受响应指令启动响应方案理者查活动详情活动名称活动开始时间活动事发生类型活动危险性分析包括总体分析根原诱发素事处置基原信息报告程序包括普通信息报告事信息报告等图预警配置响应更改活动详情例图

    图 313 预警配置响应更改活动详情例图
    35性需求分析
    性需求指保证系统安全稳定效运行基硬件软件求系统旦部署求长期运行保证系统安全稳定运行项功效正确运行系统基需满足软件硬件求:
    服务器端基求:
    ü OS Windows 10 ProCentOS74
    ü Database Redis
    ü Web server Tomcat 7
    ü Development Platform IDEA JDK18
    ü Development Language JAVA
    ü Development Framework BS(browserserver)
    ü System Framework SpringBoot+Vue
    客户端基求:
    ü PC 带浏览器PC
    ü Browser:Google Chrome
    36章总结
    章首先城市重活动监控系统业务总体流程户角色进行分析时简单介绍系统开发数需求例模型分析城市重活动监控系统功点详细述系统开发功性需求进行性需求分析保证系统安全稳定效运行





























    4系统概设计
    章根需求分析结果城市重活动监控台进行概设计介绍系统总体架构设计出系统设计解决方案根需求分析出系统功模块划分时系统数库结构进行设计需求确定系统数结构端数接收接口进行设计实现监控台数基础
    41 系统总体架构设计
    系统基JavaEE台设计前端分离web应分前端端设计两部分前端数接口参考Restful风格接口设计数库部分考虑系统求读取数较频繁读取数数结构复杂系统读取redis存数库RDBredis进行持久化图系统架构图设计


    图 41 系统架构图
    411 前端架构说明
    城市重活动监控系统前端运行nodejs服务器基webpack模板vue项目中路跳转vuerouter控制方便开发基vue开发ui工具elementuiswiper监控数显示框架基vue封装echartvchart端进行数交互Axios数格式JSON
    Vue开发模式mvvm模式(modelviewmodelView)通modelView作中间层(vm实例)进行双数绑定变化axios中取数返回绑定dom数完成数视化实现图前端架构数流图


    图 42 前端架构数流图

    412 端架构说明
    城市重活动监控系统端整体采BS架构SpringBoot框架搭建开发环境Spring核心RestContorller前端数交互开发接RedisTemplate数库接口分层开发
    1 RedisTemplate存储容通redis数RDB数进行持久化
    2 Bean层操作数象
    3 Service层实现业务逻辑
    4 Contorller层实现前端数交互接口
    辅助流程开发包
    1Config开发时类进行赖注入配置更改
    2Util开发工具类
    3Interceptor拦截器 图端架构数流图


    图 43 端架构数流图
    42 系统功模块设计
    根章分析功需求结果功需求进行整合具体分户理模块部门理模块监控视化模块功模块图图示


    图 44 系统功模块图

    中户理分系统登录角色选择通户登录进行角色选择选择角色权限务致活动理者系统权限高户创建活动高权限拥全部监控权部门员仅仅属部门监控点权限群众总监控权限
    部门理模块分活动注册活动部门级理预警配置响应舆舆控制中活动部门级理中务达反馈意见反馈日志部门详情预警配置响应时包括整活动方案详情舆舆控制包括发表评禁止发表评消息发布
    监控视化模块分分监控点视化总监控点视化活动客流监控历史回放中分监控点视化包括实时流折线图实时流柱形图实时流密度变化率折线图流车流饼图总监控点视化包括新流总监控折线图新流总监控柱形图新流总监控饼图
    43 数库设计
    节讲述介绍系统数库考虑系统读取数频繁数结构复杂采存数库redisredisRDB进行持久化面详细介绍数库设计
    431 REDIS
    REmote Dictionary Server (Redis)Salavatore Sanfilippo写keyvalue存储系统redis支持丰富数类型String类型Lists类型Hashes类型Sets类型Ordered Sets数类型操作
    面数库er图

    图 45 系统ER图

    系统分三数模块设计活动数模块户数模块监控数模块进行存储代表数组{}代表象


    活动数模块:

    1活动数{
    户数(创建者)标记
    活动状态
    活动评:{
    户数标记

    时间}

    活动名称
    活动开始时间
    活动密码
    活动事发生类型
    活动危险性分析{
    总体分析
    根原
    诱发原}
    处置基原
    信息报告程序{
    普通信息报告
    事信息报告
    }
    相关外部单位联系表{
    单位名称
    联系电话
    }
    预警口密度
    合理口密度
    危险口密度
    预警变化率
    合理变化率
    危险变化率
    单位规划{
    部门名称
    职务{
    职务名称
    属职业户数
    户标记
    务{
    务容
    务开始时间
    }}
    部门级响应
    部门二级响应
    部门三级响应
    扩应急响应
    部门联系电话
    级务{
    务类型
    务容
    务标记
    }
    意见反馈{
    意见容
    }}(单位规划)
    日志{
    日志容
    日志时间
    }
    分配点{
    监控点标记
    统计{
    部门标记
    职务标记
    需数
    }}
    }
    监控数模块:

    2监控点{
    监控名称
    监控数{
    时间

    }
    面类型
    监控面积
    }
    户数模块:

    3户数{
    户名称
    户账号
    户密码
    户头
    创建活动{
    活动标记}
    活动部门员{
    活动名称
    属部门
    应职务
    }
    联系电话
    }







    面系统详细数字典
    表 41活动数表

    activity







    字段名


    属性

    描述


    name


    String

    活动名称


    state


    String

    活动状态


    dateTime1


    String

    开始时间


    password


    String

    密码


    schems


    List

    方案


    id


    String

    id


    departments


    List

    部门


    accidengtType


    String

    事件类型


    dangerReason




    危险原


    basicPrinciple


    String

    基原


    InformationReport




    信息回复程序


    logsKey


    String

    存放日志key


    chatsKey


    String

    存放聊天容


    externalPhone


    list

    外部电话


    activityConfig


    String

    活动配置key


    endTime


    String

    结束时间


    creator


    String

    创建者Key


    announce


    String

    消息Key

    活动数keyString类型保存

    表 42 日志数表

    log







    字段名


    属性

    描述


    id


    String

    id


    label


    String




    time


    String

    时间

    日志数keyLists类型保存

    表 43 活动指标配置表

    config







    字段名


    属性

    描述


    emergencyState


    String

    响应级


    warningPNum


    int

    预警流密度


    warningRate


    String

    预警流变化率


    dangerPNum


    int

    危险流密度


    dangerRate


    int

    危险流变化率


    id


    String

    id

    活动指标配置keyString类型保存

    表 44 活动注册者表

    ActivityRegister







    字段名


    属性

    描述


    activityName


    String

    活动名称


    department


    int

    部门标


    post


    int

    职务标


    id


    String

    id

    活动注册者keyString类型保存

    表 45 活动分监控点表

    bro







    字段名


    属性

    描述


    monitorPoint


    String

    监控点名称


    distrbutions


    List

    分配员


    value


    String

    唯值


    start


    int

    开始记录时间


    end


    int

    结束记录时间

    分配监控点活动数中

    表 46 聊天记录表

    chat







    字段名


    属性

    描述


    head


    String

    头址


    name


    String

    名字


    loginName


    String

    账号


    content


    String




    time


    String

    发表时间

    聊天记录keyLists类型保存

    表 47 危险性分析表

    DangerReason







    字段名


    属性

    描述


    id


    String

    id


    overallAnalysis


    String

    总体分析


    rootCause


    String

    根原


    IndcingFactors


    String

    诱导原

    危险性分析活动数中

    表 48 意见反馈表

    DcallBack







    字段名


    属性

    描述


    id


    String

    id


    label


    String




    time


    String

    时间

    意见反馈keyLists类型保存

    表 49 部门数表

    Department







    字段名


    属性

    描述


    name


    String

    部门名字


    posts


    List

    职务


    firstW


    List

    级响应措施


    secondW


    List

    二级响应措施


    thirdW


    List

    三级响应措施


    eers


    List

    扩级响应措施


    phoneNumber


    String

    电话号码


    value


    String

    唯标识


    dcallBackKey


    String

    意见反馈Key


    dTasksKey


    String

    务Key

    部门数活动数中

    表 410 分配具体部门表

    Distribution







    字段名


    属性

    描述


    department


    int

    部门标


    post


    int

    职务标


    value


    String

    唯值


    number


    int



    分配具体部门职务数活动数中

    表 411 级务表

    DTask







    字段名


    属性

    描述


    id


    String

    id


    state


    String

    务状态


    type


    String

    类型


    label


    String




    time


    String

    时间

    务keyLists类型保存

    表 412 外部单位表

    ExtenalPhone







    字段名


    属性

    描述


    name


    String

    外部单位名字


    value


    String

    唯值


    number


    String

    电话号码

    外部单位活动数中

    表 413 信息报告表

    InformationReport







    字段名


    属性

    描述


    id


    String

    id


    generalReport


    String

    常规回复


    accidentReport


    String

    事回复

    信息报告活动数中

    表 414 职务务表

    PostMission







    字段名


    属性

    描述


    value


    String

    唯值


    startTime


    String

    开始时间


    label


    String



    职务务活动数中

    表 415 监控点表

    Monitor







    字段名


    属性

    描述


    name


    String

    监控名称


    dataKey


    String

    监控数Key


    area


    long

    行面积


    type


    String

    面类型


    id


    String

    id

    监控点Stringkey类型保存





    表 416 监控数表

    MonitorData







    字段名


    属性

    描述


    numberPeople


    int

    数量


    numberCar


    int

    车数量


    time


    String

    时间

    监控数StringLists类型保存

    表 417 职务表

    Post







    字段名


    属性

    描述


    name


    String

    职务名称


    missions


    List

    职务务


    value


    String

    唯值


    usersKey


    String

    userskey

    职务数活动数中

    表 418 方案表

    Scheme







    字段名


    属性

    描述


    value


    String

    唯值


    bros


    List

    监控点


    name


    String

    方案名字

    方案数活动数中

    表 419 户表

    UserBean







    字段名


    属性

    描述


    loginName


    String

    账号


    id


    String

    id


    password


    String

    密码


    personal


    String

    性签名


    activityHaveKey


    String

    已开创活动


    head


    String

    头址


    activityRegisterKey


    String

    已注册活动


    phoneNumber


    String

    电话号码


    name


    String

    名字


    time


    String

    新登录时间

    户数keyString类型保存

    44 监控数接口设计
    前端视化流数通接口端数处获取端数负责提供数前端调接口设计形式url形式设计
    前端先调监控点数接口获取监控点数面介绍获取监控点数接口

    1 获取监控点名称
    表 420 监控点名称接口表
    接口编号

    MList

    接口url

    域名+monitorsList get

    接口说明

    获取监控点名称

    输入数

    ListKey(TestMonitor)

    输出数

    监控点名称


    2 获取监控点数
    表 421 监控点数接口表
    接口编号

    MM


    接口url

    域名+monitorget


    接口说明

    获取具体监控点数


    输入数

    监控点名称


    输出数

    具体监控点数




    3 获取监控数100颗粒数
    表 422 监控数接口表
    接口编号

    MData01



    接口url

    域名+MonitorDataPeopleget



    接口说明

    获取监控流密度车流



    时间粒度

    50min



    输入数

    监控点Key:(xxxx监控点)
    监控面积:(20)


    输出数

    获取流车流监控数




    4 获取新监控数
    表 423 新监控数接口表
    接口编号

    MData02



    接口url

    域名+NewMonoitorData



    接口说明

    获取新监控流密度车流



    时间粒度

    30s



    输入数

    监控点Key:(xxxx监控点)
    监控面积:(20)


    输出数

    获取新流车流监控数




    5 获取历史监控数
    表 424 历史监控数接口表
    接口编号

    MData03




    接口url

    域名+HistoryData




    接口说明

    获取历史流密度车流数




    时间粒度

    根选择




    输入数

    监控点Key:(xxxx监控点)
    监控面积:(20)
    记录开始时间:(0)
    记录结束时间:(100)
    选择类型: 0 选择天















    输出数

    果记录时间0没数时间
    结束时间0结束时间新时间
    0新时间新时间
    根标记选择流车流监控时间块







    45 章结
    章城市重活动客流监控系统进行概设计首先系统总体架构进行设计系统总体架构进行设计系统总体功结构进行划分然数模块入手分析系统设计数模块出详细数字典介绍监控数接口设计系统详细设计提供
























    5系统详细设计
    51户理
    户理具系统登录角色选择两模块系统登录分登录注册
    角色选择分完善户资料注册监控点注册部门员选择活动进入面详细介绍模块设计实现细节
    511 系统登录
    系统登录分登录功注册功登录功需填写账号密码登录成功跳转角色选择界面注册功需填写账号名称密码确认密码点击界面显示注册成功
    系统登录模块类设计图


    图 51 系统登录模块类图

    系统前端分离开发前端indexvue系统端涉类LoginController类UserServiceImpl类UserBean类RedisUtil类等中LoginController类系统登录模块控制器负责处理前端传http请求处理结果返回该类实现RestController实现Restful风格控制器GetMappingPostMapping处理get请求post等请求LoginController类控制业务流程中调UserServiceImpl类完成业务处理UserServieImpl实现UserService接口UserService调时会调RedisUtil方法访问数库根数类型保存数UserBean作户信息类类中定义账号密码等详细户信息具体查前数字典UserServiceImpl中封装传递参数面详细讲述LoginController系统登录功模块中作
    LoginController1获取注册户数判断数否合法果合法保存数库2获取登录账号密码数库判断否合法果合法生成token保存数库返回token合法消息面详细时序图分表现功实现程
    面登录功时序图


    图 52 系统登录模块时序图













    面注册时序图

    图 53 系统登录模块时序图

    图系统登录图

    图 54 系统登录模块页面

    512 角色选择
    角色选择分完善户资料注册监控点注册部门员选择活动进入中完善户资料选择户头更改姓名修改电话号码性签名注册监控点需填写监控点名称面积类型等注册部门员需选择需注册活动输入密码选择需注册部门职务注册完成进入部门监控界面
    面角色选择功模块部分类图

    图 55 角色选择模块类图

    controller样restful风格根controller返回数ActivityHaveListController类LoginController类ActivityController类MonitorController类ImageController类ActivityRegisterController类PostUserController类JwtInterceptor拦截器中省略Service层类持久化RedisUitlJwtInterceptor拦截器检查http包中否包含tokentoken否合法面具体讲述控制器角色选择功模块中作
    ActivityHaveListController返回前端户已注册活动名称ImageController获取户传头保存指定文件夹返回文件路径MonitorController获取注册监控点数数保存数库中ActivityController1返回活动名称2返回部门选择活动数3检查活动否活动密码相匹配根匹配结果返回否合法消息LoginController1返回户详细数2(更新)获取户已修改户数保存数库ActivityRegisterController1获取activityRegister数数保存数库PostUserController获取PostUser数数保存数库





    面部门员注册时序图

    图 56 角色选择模块时序图

    图知index2vue发起checkActivity请求JwtInterceptor进行拦截检查token
    查询数库活动名称密码否匹配果匹配发送activity请求ActivityControllerActivityController通service层RedisUtil获取活动数通获取活动数种key值针key值发送activityRegisteruserPost回服务器ActivityRegisterControllerUserPostController控制器进行保存完成部门注册


    图 57 角色选择模块页面1


    图 58 角色选择模块页面2

    图 59 角色选择模块页面3


    图 510 角色选择模块页面4











    52部门理
    部门理模块活动注册活动部门级理预警配置响应更改舆舆控制中活动部门级理分意见反馈务达日志等面详细介绍具体容
    521 活动注册
    活动注册填写活动详细数活动名称活动时间活动密码监控点选择分配活动点进行方案配置部门职务填写等等
    面介绍活动注册涉类图
    图 511 活动注册模块类图

    图中涉控制器MonitorControllerActivityControllerActivityConfigControllerActivityHaveListController中Service层RedisUtil省略活动注册需获取者提交monitorsListactivityHaveactivityactivityConfig数里介绍控制器活动注册模块中作MonitorController返回监控点名称ActivityController活动数数库保存活动数ActivityConfigController活动配置数源数库保存活动配置数AcitivityHaveList获取活动名称活动名称保存指点key数库中





    面详细活动注册时序图

    图 512 活动注册模块时序图

    图知registerActivityvue发送monitorList请求获取监控点名称数活动注册进行选择填写活动配置发送activityConfig请求活动配置数传输ActivityConfigController控制器通控制器service层保存数库填写活动数完毕发送activity请求数传输ActivityController控制器通控制器service层数保存数库确定建立活动获取户中activityHaveKey发送activityHave请求通ActivityHaveList控制器数保存数库中













    面活动注册图

    图 513 活动注册模块页面
    522 活动部门级理
    活动部门级理包括务达意见反馈日志面介绍活动部门级理类图介绍

    图 514 活动部门级理模块类图

    活动部门级理JwtInterceptor类DepartmentTaskController类DempartmentCallBackController类ActivityLogController类中JwtInterceptor拦截器功检查token合法性DepartmentTaskController 类DempartmentCallB
    ackController类ActivityLogController类控制器中省略service层RedisUtil面介绍控制器作DempartTaskController1获取务容务数保存指定key数库中2返回指定key务数DempartmentCallB
    ack1获取意见反馈信息意见反馈信息保存指定key数库中2返回指定key意见返回数ActivityLogController1获取活动日志数活动日志保存指定key数库中2返回指定key活动日志数
    面活动部门级理时序图


    图 515 活动部门级理模块时序图

    面理图片

    图 516 活动部门级理模块页面



















    523 预警配置响应更改
    预警配置响应更改修改预警配置者活动时响应级进行更改面介绍预警配置响应更改类图


    图 517 预警配置响应更改模块类图

    预警配置响应更改类JwtInterceptor类ActivityConfigController类ActivityConfigServiceImpl类Restutil类中JwtInterceptor类拦截器检查token否合法ActivityConfig类控制器ActivityConfigServiceImplActivityConfigService接口实现类Redisutil类redis数库持久化类ActivityConfig控制器获取前端活动配置数数交Service层ActivityConfigServiceImpl控制器数交Redisutil进行keyvalue数库中保存





    图具体预警配置响应更改时序图


    图 518 预警配置响应更改模块时序图

    面配置响应更该配置图

    图 519 预警配置响应更改模块页面








    524 舆舆控制
    舆舆控制进行评消息发布评否进行控制面舆舆控制类图


    图 520 舆舆控制类图


    舆舆控制功类WebSocketServer类ChatController类ChatServiceImpl类RedisUtil类中WebSocketServer类实现webSoceket通讯类ChatController类控制器ChatServiceImplChatService实现类面详细介绍类作WebSocket配置WebScoketConfig连接次httptcp进行通讯socket进行评收发然通RedisUtil进行保存ChatController控制器获取聊天记录发布消息请求通ChatServiceImpl类传递RedisUtil类读取聊天记录发布消息然传递前端








    面具体舆舆控制功时序图

    图 521 舆舆控制时序图

    面舆舆控制图

    图 522 舆舆控制页面1


    图 523 舆舆控制页面2





















    53监控视化
    监控视化分分监控点视化总监控点视化历史回放中分监控点视化分监控灯显示监控数图形化里展示监控数具体流程


    图 524 监控视化流程图

    数模拟器传递数redis数库进行缓存通端读取redis中数通数处理数密度计算时间截断等通JSON格式发送前端进 行视化监控视化端读取数流程类似监控视化类图基致
    面监控视化端类图

    图 525 监控视化类图
    类图中JwtInterceptor类MonitorController类MonitorServiceImpl类MonitorDataPeopleController类MonitorDataPeopleServiceImpl类RedisUtil类中
    JwtInterceptor类拦截器检查token合法性MonitorControllerl类MonitorDataPeopleController类控制器MonitorDataPeopleServiceImpl类MonitorServ
    erImpl类MonitorDataPeopleServiceMonitorService实现类
    面详细介绍模块设计实现细节
    531 分监控点视化
    分监控点视化分监控灯监控图形化端提供数前端数进行视化面前端端获取分监控数时序图

    图 526 分监控视化时序图

    图知前端发送url'monitorDataPeople'JwtInterceptor检查token证实效MonitorDataPeopleController调getMonitorDataPeople方法MonitorDataPeopleServiceImpgetMonitor()方法中RedisUtil中调lget()方法获取数通MonitorDataPeopleServiceImpl方法处理返回list数前端
    前端chartData1显示折线图柱形图chartData2显示流变化率折线图chartData3显示饼图前端axios获取数改变象rows数组值实时改变显示数数组监控点数保存起方便时读取通新监控数值获取活动配置预警值改变monitorButton数监控灯改变状态






    面分监控点图

    图 527 分监控视化页面

    532 总监控点视化
    总监控点分监控点总体显示监控点新数样分监控点开发模式致端获取数前端进行处理显示面前端端获取分监控点新数时序图


    图 528 总监控视化时序图

    图知前端发送'newMonitorData'请求JwtInterceptor检查token合法性证实效MonitorDataPeopleController调getNewMonitorDataPeople()方法MonitorDataPeopleServiceImplgetNewMonitor方法中RedisUtil调get()获取新数通MonitorDataPeopleServiceImpl方法处理数返回Object数包装成JSON返回前端
    前端showTotalChart1显示折线图柱形图showTotalChart2显示流密度饼图showTotalChart3显示车流饼图前端axios获取数改变象rows数组值更新视图变化通活动配置预警值显示视图
    面总监控图

    图 529 总监控视化页面












    533 活动历史回放
    活动历史回放通回放监控点流密度车流完成系统功选择时回放数天回放数月回放数全部回放数里回放数基记录开始时间结束时间面详细端读取数时序图


    图 530 活动历史回放时序图

    图知前端发送'historyData'JwtIntercepetor检查token否合法证实效发送keytagMonitorDataPeopleControllertag指获取数段(tag0时tag1天tag2月tag3全部)MonitorDataPeopleController调getHistoryData()参数传递MonitorData PeopleService中通RedisUtil调lget()获取数MonitorDataPeopleServiceImpl中处理数list装成JSON格式返回前端
    前端historyPeopleData进行数展示端获取数更改historyPeopleDatarows数组值改变视化界面视化界面allhistoryPeopleData数组数保存起便监控点间切换历史数
    面活动历史回放图

    图 531 活动历史回放时序图

    54章总结
    章根第三章需求分析第四章概设计城市重活动客流监控系统详细设计述进行详细介绍户理活动部门理监控视化类设计进行进行展示详细介绍涉类功类关系功点出发结合时序图功进行阐述模块实现展示完成整系统详细设计开发



























    6系统部署
    系统开发完毕需系统部署云服务器更进行展示面详细介绍部署细节
    系统运营商:腾讯云服务器
    系统ID名称:insh7wkxom activitycvm20200407
    状态:运行中
    区:广州四区
    实例规格:标准型S2|S2SMAlL2
    IPv4公网IP:11123017310
    IPv4网IP:17216017
    操作系统:CentOs76 64位
    CPU:1核
    存:2g
    公网宽带:1Mbps
    部署框架:docker
    访问网址:http11123017610index





















    7系统测试
    系统需求分析概设计详细设计实现正式前需进行严格测试工作验证系统开发功否达预期需求章首先介绍系统测试环境方法然通系统功性测试例系统测试工作进行介绍
    71测试环境
    测试版系统开发语言版位Java18vue20Redis12131等测试程中系统部署64位window10系统64位CentOS76系统中户端测试Chrome
    72测试方法
    系统测试采黑盒测试白盒测试法系统中模块功测试采黑盒测试系统监控视化系统登录功部门理功舆舆控制预警配置响应更改等功测试模块中已实现功模块否正确运行符合预期效果系统中功实现流程测试白盒测试检验方法执行程中否存逻辑错误者足处
    73功性测试
    系统功测试程中首先需数接口功进行测试检测调接口否预期结果返回正确数检验通系统功点进行详细例测试面部分测试例描述例介绍系统功性测试
    分监控监控点数接口测试验证前端调服务器接口时端否正确数返回前端测试例描述

    表 71 分监控点数接口测试例
    测试例编码

    ITC01




    测试例名称

    分监控点数接口测试
    测试例级

    功测试
    测试优先级


    测试流程

    (1)启动服务器输入分监控点key


    (2)调url接口域名+MonitorDataPeople
    预期结果

    接口调成功成功返回数
    实际结果

    获分监控点数


    实际结果预期致测试通

    新监控点数接口测试验证前端调服务器接口时端否正确数返回前端测试例描述

    表 72 新监控点数接口测试例
    测试例编码

    ITC02




    测试例名称

    新监控点数接口测试
    测试例级

    功测试
    测试优先级


    测试流程

    (1)启动服务器输入分监控点key


    (2)调url接口域名+NewMonoitorData
    预期结果

    接口调成功成功返回数
    实际结果

    获新监控数


    实际结果预期致测试通

    历史监控数接口测试验证前端调服务器接口时端否正确数返回前端测试例描述

    表 73 历史监控数接口测试例
    测试例编码

    ITC03




    测试例名称

    历史监控数接口测试
    测试例级

    功测试
    测试优先级


    测试流程

    (1)启动服务器输入分监控点key时间标记


    (2)调url接口域名+HistoryData
    预期结果

    接口调成功成功返回数
    实际结果

    获历史监控数


    实际结果预期致测试通

    角色选择功测试验证进行户资料修改注册监控点注册部门员否显示执行正确具体例描述

    表 74 角色选择测试例
    测试例编码

    FTC01




    测试例名称

    角色选择测试
    测试例级

    功测试
    测试优先级


    测试流程

    (1)登录户进入角色选择界面


    (2)传头头否显示正常


    (3)填写资料刷新查资料否正常显示


    (4)点击注册活动否进入活动注册界面


    (5)选择已创建活动点击进入否进入界面


    (6)注册监控点点击发送否显示正确消息


    (7)选择活动输入密码否会部门出现


    (8)选择部门职务点击注册否会提示


    (9)选择活动点击进入否会进入响应界面
    预期结果

    角色选择项功实现效果需求分析致
    实际结果

    功点均正常实现


    实际结果预期致测试通

    务达测试例验证理者达务部门员否收改变务状态面具体测试例

    表 75 务达功测试例
    测试例编码

    FTC02




    测试例名称

    务达功测试
    测试例级

    功测试
    测试优先级


    测试流程

    (1)登录理者户进入理者界面


    (2)选定部门填写达务点击发送


    (3)登录部门户查务修改务状态


    (4)理者界面务状态修改
    预期结果

    务达项功实现效果需求分析致
    实际结果

    功点均正常实现


    实际结果预期致测试通

    意见反馈测试例验证部门发起意见反馈时理部门收面具体测试例

    表 77 意见反馈功测试例
    测试例编码

    FTC03




    测试例名称

    意见反馈功测试
    测试例级

    功测试
    测试优先级


    测试流程

    (1)登录部门户进入部门界面


    (2)填写反馈意见点击发送


    (3)登录理者户进入理者界面


    (4)理者界面查反馈务
    预期结果

    意见反馈项功实现效果需求分析致
    实际结果

    功点均正常实现


    实际结果预期致测试通

    74章总结
    章城市重活动客流监控系统测试工作进行简单阐述首先介绍系统测试环境测试方法然结合测试例系统功测试进行详细描述通系统测试验证系统设计实现符合预期求









    8总结
    着济发展越越城市活动举办越越监控出现城市角落利监控城市活动进行效监控预警提前做出效控措施文针活动理监控结合设计实现系统进行详细阐述
    文介绍城市重活动客流监控项目背景通没专性独特性监控系统进行较分析明确文研究容系统实现目意义然文组织结构进行简单介绍
    文介绍城市重活动客流监控系统涉理技术基础分通SpringSpringBootaxiosJwt等技术简单介绍阐述系统功实现技术基础开发系统提供坚实理基础
    接系统进行需求分析通结合例模型户需求进行分析总结系统登录角色选择活动注册分监控点视化总监控点视化活动部门理监控历史回放舆舆控制预警配置响应更改等方面系统功性需求
    根系统需求分析结果
    系统功结构进行划分系统分户理活动部门理监控视化等功模块基础系统总体架构进行设计提出系统设计方案然结合数结构模块介绍系统数模块关系完成系统数库设计监控数视化接口进行设计
    完成系统需求分析概设计文基础详细阐述系统设计实现程首先通结合类图时序图详细阐述户理部门理功模块类设计业务实现流程然通结合流程类时序图监控视化程进行介绍
    系统详细设计实现完毕window开发机部署腾讯云服务器进行测试
    通系统功测试例描述简单介绍系统测试工作验证系统开发成果
    城市活动客流监控系统够结合活动理监控数视化帮助理员监控活动流车流变化时调整配置通知级员时调整务通知群众员拥堵区域进行封锁
    城市活动客流监控系统活动理模式够样化细节做够严谨功够监控视化数类型少没者提供更加直观监控流程未需加力度改进方面
    参考文献
    [1] 百度百科vue开发设计 [OL] httpsbaikebaiducomitemE4BBB6&fromid16514
    [2] 李焘金龙哲马英楠朱伟 型活动客流监测预警方法研究 [D] (1.北京科技学土木环境工程学院北京100083) (2.北京城市系统工程研究中心北京100089)
    [3] 赵卓君等 Java 程序设计基础教程 [M] 北京:北京交通学出版社清华学出版社2010
    [4] Craig Larman著 李洋等译 UML模式应 北京:机械工业出版社2006
    [5] 王英瑛乔燕吕延华等编著JSP Web开发案例教程 [M]北京:清华学出版社2013
    [6] 韩万江姜立新 软件项目理案例教程(第3版)[M]北京:清华学出版社2013
    [7] 梁芳李莉莉等编著网页设计制作(第2版)[M]北京:清华学出版社2011
    [8] 储久良Web 前端开发技术 [M] 北京:清华学出版社2013
    [9] 万常选廖国琼吴京慧刘喜等编著数库系统原理设计(第2版)[M] 北京:清华学出版社2012
    [10] 许令波 深入分析Java Web技术幕(修订版)[M]北京:电子工业出版社2014










































    附 录

    附录1
    程序源代码

    @ServerEndpoint(webServer{chatId}{userName})
    @Component
    public class WebSocketServer {
    public static ChatService chatService
    private static ConcurrentHashMap> webSocketMap new ConcurrentHashMap<>()
    private static int onlineCount 0
    private Session session
    private String chatId
    private String userName
    private String tag
    private CopyOnWriteArraySet room
    @OnOpen
    public void onOpen(Session session@PathParam(userName) String userName @PathParam(chatId) String chatId) {
    thissession session
    thischatId chatId
    thisuserName userName
    if(webSocketMapcontainsKey(chatId)){
    room webSocketMapget(chatId)
    for(WebSocketServer maproom){
    if(maptagequalsIgnoreCase(0)){
    thistag 0
    try{
    thissendMessage(评功已关闭)
    }catch (Exception ex){
    exprintStackTrace()
    roomremove(room)
    }
    break
    }else {
    thistag 1
    break
    }
    }
    }else{
    room new CopyOnWriteArraySet()
    webSocketMapput(chatIdroom)
    thistag 1
    }
    roomadd(this)
    addOnlineCount()
    Systemoutprintln(userName+ +chatId+进入房间)
    }

    **
    * 连接关闭调方法
    *
    @OnClose
    public void onClose() {
    try{
    Systemoutprintln(离开房间)
    roomremove(this)
    subOnlineCount()
    }catch (Exception ex){
    exprintStackTrace()
    }
    }

    **
    * 收客户端消息调方法
    *
    * @param message 客户端发送消息*
    @OnMessage
    public void onMessage(String message Session session) {
    try {
    JSONObject obj JSONparseObject(message)
    if(objgetString(announce) null) {
    for (WebSocketServer map room) {
    mapsendMessage(message)
    }
    Systemoutprintln(objgetString(announce))
    thischatServicesetAnnounceRedis(objgetString(announce) message)
    }
    if(objgetString(tag) null ){
    if(thistagequalsIgnoreCase(1)) {
    if (objgetString(announce) null) {
    for (WebSocketServer map room) {
    mapsendMessage(message)
    }
    Systemoutprintln(objgetString(announce))
    thischatServicesetAnnounceRedis(objgetString(announce) message)
    } else {
    Systemoutprintln(message)
    Systemoutprintln(roomsize())
    for (WebSocketServer map room) {
    mapsendMessage(message)
    }
    Systemoutprintln(thischatId)
    thischatServicesetRedis(thischatId message)
    }
    }
    }else {
    if(objgetString(tag)equalsIgnoreCase(0)){
    Systemoutprintln(评功已关闭)
    for(WebSocketServer maproom){
    mapsendMessage(评功已关闭)
    maptag 0
    }
    }else {
    Systemoutprintln(评功已开启)
    for(WebSocketServer maproom){
    mapsendMessage(评功已开启)
    maptag 1
    }
    }

    }
    }catch (Exception ex){
    exprintStackTrace()
    }
    }

    **
    *
    * @param session
    * @param error
    *
    @OnError
    public void onError(Session session Throwable error) {
    Systemoutprintln(thisuserName + 发生错误)
    errorprintStackTrace()
    }
    **
    * 实现服务器动推送
    *
    public void sendMessage(String message) throws IOException {
    thissessiongetBasicRemote()sendText(message)
    }


    **
    * 发送定义消息
    * *
    public static void sendInfo(String message@PathParam(userId) String userId) throws IOException {
    }

    public static synchronized int getOnlineCount() {
    return onlineCount
    }

    public static synchronized void addOnlineCount() {
    WebSocketServeronlineCount++
    }

    public static synchronized void subOnlineCount() {
    WebSocketServeronlineCount
    }

    }

    模拟器核心代码
    public ScheduleExecutor(String key int people int car int area int flag) {
    thiskey key
    thispeople people
    thiscar car
    thisarea area
    thisflag flag
    }

    public void run() {
    ShardedJedis jedis JedisPoolUtilgetJedis()
    Random r new Random()
    Date d new Date()
    int tag1 rnextInt(10)
    int tag2 rnextInt(10)
    int peoplefloating rnextInt(20)
    int carfloating rnextInt(5)
    int reasonable area
    int dangerous 8*area
    int warning 4*area
    SimpleDateFormat sdf new SimpleDateFormat(yyyyMMdd HHmmss)
    String time sdfformat(d)
    int time1 IntegerparseInt(timesubstring(1113))
    Systemoutprintln(前时间: + time)
    Systemoutprintln(前时: + time1)
    if(time1>0 && time1<5){
    if(tag1>4){
    people people peoplefloating
    if(people < 0){
    people 0
    }
    }else {
    if(dangerous flag 1
    }
    if(reasonable>people){
    flag 0
    }
    if(flag 1){
    people people peoplefloating
    }else {
    people people + peoplefloating
    }

    }
    if(tag2>3){
    car car carfloating
    if(car < 0) {
    car 0
    }
    }else {
    car car + carfloating
    }
    }

    if(time1>6 && time1<15){
    if(tag1>3){
    if(dangerous flag 1
    }
    if(reasonable>people){
    flag 0
    }
    if(flag 1){
    people people peoplefloating
    }else {
    people people + peoplefloating
    }
    }else{
    people people peoplefloating
    if(people < 0){
    people 0
    }
    }
    if(tag2>3){
    car car + carfloating
    }else{
    car car peoplefloating
    if(car < 0){
    car 0
    }
    }
    }

    if(time1>16 && time1<23){
    if(tag1>3){
    if(dangerous flag 1
    }
    if(reasonable>people){
    flag 0
    }
    if(flag 1){
    people people peoplefloating
    }else {
    people people + peoplefloating
    }
    }else {
    people people peoplefloating
    if(people < 0){
    people 0
    }
    }
    if(tag2>5){
    car car + carfloating
    }else{
    car car peoplefloating
    if(car < 0){
    car 0
    }
    }
    }
    Systemoutprintln(+people)
    Systemoutprintln(车+car)

    }
    }


    文档香网(httpswwwxiangdangnet)户传

    《香当网》用户分享的内容,不代表《香当网》观点或立场,请自行判断内容的真实性和可靠性!
    该内容是文档的文本内容,更好的格式请下载文档

    下载文档到电脑,查找使用更方便

    文档的实际排版效果,会与网站的显示效果略有不同!!

    需要 5 香币 [ 分享文档获得香币 ]

    下载文档

    相关文档

    基于JavaEE平台的城市公交便利度系统

    城市公交便利度分析系统(Analysis system of urban public transport convenience)是一个以深圳公交巴士为例的便利度分析系统,系统地对比深圳不同地...

    3年前   
    547    0

    基于JavaEE平台的设计资源交易平台的设计与实现

    中国因改革开放政策实施的缘故,社会经济水平与日俱增,人民的消费水平也随之升高,中国正在经历前所未有的消费升级,越来越多的消费者在满足基本物质需求的基础上追求精致生活。

    3年前   
    487    0

    基于Java EE平台的公交车辆运行监控系统的设计与实现

    随着经济和城市化地高速发展,市民有多种的出行方式,其中最为重要的是公交车出行。城市公交车需求的数量在快速地增长,它每天会产生大量的实时运行数据急需计算机系统做及时的处理。由于公交车的实时情况需要...

    3年前   
    690    0

    基于Android的志愿活动平台的设计与实现

     基于Android的志愿活动平台的设计与实现 ...

    11个月前   
    467    0

    基于安卓手机平台的视频播放器的设计与实现毕业设计

    本科毕业设计 题目:基于安卓手机平台的视频播放器的设计与实现 Title:Design and implementation of the Android mobile phone p...

    5年前   
    1273    0

    解析基于IP网络城市联网报警解决方案(上)-安防监控金融监控方案解决方案

    解析基于IP网络城市联网报警解决方案(上)-安防监控金融监控方案解决方案  随着社会经济的发展,城市建设速度和规模也逐渐加大,但是相应产生的城市安全问题也倍受人们的关注,城市的发展需要很多外来...

    11年前   
    548    0

    基于Android的中国象棋毕业设计

    基于Android的中国象棋毕业设计 摘 要 现在智能操作系统迅速发展,使得智能手机和其他的智能移动设备得到广泛普及,因此,智能操作系统的应用软件开发及其需要的服务将有广阔的发展前景...

    5年前   
    1210    0

    基于安卓系统的点餐系统毕业设计

     本科毕业论文(设计) 题 目: 基于安卓系统的点餐系统 专 业: 姓 名: 指导教师: ...

    5年前   
    1687    0

    基于单片机智能小车毕业设计

    毕 业 设 计(论 文)设计(论文)题目: 基于单片机的智能小车 ...

    6个月前   
    199    0

    基于PYNQ平台的手写数字识别

    PYNQ全称为Python Productivity for Zynq,即在原有Zynq架构的基础上,添加了对python的支持。Zynq是赛灵思公司推出的行业第一个可扩展处理平台系列,在芯片中...

    5年前   
    8721    0

    物流车辆监控平台管理方案

    物流车辆监控平台方案目录一、 项目情况 2二、 项目引用标准及规范 4三、 系统设计目标及设计原则 43.1 设计目标 43.2 设计原则 53.3系统设计说明 63.3.1系统组成 63.3...

    2年前   
    363    0

    毕业设计资料管控平台设计与实现

     毕业设计资料管控平台设计与实现Design and Implementation of Graduation Design Information Management and Contro...

    3年前   
    542    0

    基于Action的数据分析大数据平台

     基于Action的用户行为分析大数据平台Action-based user behavior analytics big data platform内容摘要电商平台作为当前最受欢迎,热度最...

    10个月前   
    238    0

    市“城市大脑”平台建设方案

    为高效贯通汇聚政务数据资源,科学统筹推进智慧城市建设和应用提速提效,提升城市治理体系和治理能力现代化水平,根据《XX市数字经济发展三年行动方案》(X委办发〔XXXX〕X号)“数字政务提升行动”既定方向

    1个月前   
    87    0

    基于Java EE的城市公交线路仿真系统

    城市公交线路仿真系统是应用科技手段提升公交管理水平和调度技能,如开发动态线路仿真系统,运用当代通讯技术研发科技公交。随着社会经济的高速发展以及城镇化进程的加快,人们对于公共交通的质量与效率的追求...

    3年前   
    625    0

    重大危险源安全监控责任书

    重大危险源安全监控责任书                 危险源安全责任书 工程名称:上海浦东国际机场三期扩建工程港湾机坪场道及附属设施工程(一标段)                  ...

    2年前   
    598    0

    重大危险源监控管理制度

    **市高要区通达汽车运输有限公司   重大危险源监控管理制度   第一条为全面及时掌握本公司经营管辖范围重大危险源的数量、状况及分布,加强对重大危险源的监控管理,建立重大危险源早期预控...

    6年前   
    2879    0

    关于加强动物重大疫情监控的紧急通知

    关于加强动物重大疫情监控的紧急通知  目前花垣县经湖南省畜牧疫情检测中心确定,发生疑似禽流感疫情,为避免疑似禽流感疫情传播、扩散和蔓延到本镇,经镇政府研究决定,现将动物重大疫情监控工作紧急通知...

    11年前   
    425    0

    重大危险源监控管理检查表

      重大危险源监控管理检查表重大危险源名称:顺 序 检查内容 是 否 备 注 1重大危险源场所应设置警示标志、警示牌(危险物质名称、数量、主要理化特性、参数、危害、防护方法等)  是  2单位...

    4年前   
    1147    0

    基于电力仪表的智能电力监控系统设计与选型方案_

    基于电力仪表的智能电力监控系统设计与选型方案陆晓君 上海安科瑞电气股份,上海 嘉定 2021011 概述目前,供配电产业的开展及可靠性对国民经济的开展起着举足轻重的作用,全国各地重点工程工程...

    2年前   
    446    0

    文档贡献者

    爱***享

    贡献于2021-09-06

    下载需要 5 香币 [香币充值 ]
    亲,您也可以通过 分享原创文档 来获得香币奖励!
    下载文档

    该用户的其他文档