System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 节点仪状态数据实时入库方法和装置制造方法及图纸_技高网

节点仪状态数据实时入库方法和装置制造方法及图纸

技术编号:41240676 阅读:6 留言:0更新日期:2024-05-09 23:53
本申请公开了节点仪状态数据实时入库方法和装置。根据本申请,通过JavaStruct、MP、MQTT等技术,将5G智能节点的状态数据(通常为48字节数据)快速解析成Java所能操作的实体类属性,而不需要一一截取并逐个转换一个节点信息的多个属性。采用本申请,能显著简化了5G智能节点处理数据的步骤,更加快速便捷地使5G智能节点从48字节数据成为可视化数据,实现效率高,并有利于合理占用资源。

【技术实现步骤摘要】

本专利技术属于5g节点数据采集,更具体地,涉及节点仪状态数据实时入库方法和装置


技术介绍

1、现有技术中,通常通过mqtt消息队列订阅获取到5g节点仪实时状态数据,该状态数据主要是由48个16进制的字节(byte)组成。然后根据实际要转换的属性类型所对应的字节长度,进行分段截取,接着将截取到的字节,分别通过多种类型的转换方法解析出所代表的属性值,最后再将转换后的属性值存入mysql数据库中。使用该技术去对5g节点实时状态数据做解析转换,一个节点信息的多个属性要一一截取,并且进行逐个转换,效率较慢,步骤繁杂,对于后期的批量节点数据解析来说,严重影响了节点状态数据处理速度和效率。


技术实现思路

1、有鉴于此,本申请提供一种能高效解析节点仪状态数据的方法。本申请还提出了相应的装置、电子设备和介质。

2、第一方面,本申请实施例提供了一种节点仪状态数据实时入库方法,所述方法包括:

3、步骤1,在本地建立mqtt订阅端,通过5g网络远程实时接收节点仪的状态数据;

4、步骤2,设置javastruct转换类,通过unpack小端将接收的所述状态数据进行小端转换,以转换为javastruct对象的属性值;

5、步骤3,将javastruct对象的属性值转换为节点数据类对象的属性值,节点数据类为数据库映射实体类,节点数据类对象的属性类型与数据库中对应列一致;

6、步骤4,将节点数据类对象的属性值导入数据库中对应列。

7、在一些可能的实施方式中,所述方法还包括:

8、所述节点仪将所述状态数据发送至socket服务器;

9、socket服务器将所述状态数据传送至mqtt服务器,mqtt服务器通过所述5g网络将所述状态数据发送至mqtt订阅端。

10、在一些可能的实施方式中,所述方法还包括:

11、创建mqtt配置类,并通过所述配置类设置mqtt连接的url以及主题;

12、将mqtt订阅端和mqtt服务器的qos参数均设置为0。

13、在一些可能的实施方式中,所述步骤3具体包括:

14、建立类型转换方法,用于把javastruct对象的部分指定属性值转换成与数据库的对应列类型一致的值,javastruct对象的所述部分指定属性的类型是字节,并将类型转换方法的参数设置成javastruct转换类;

15、调用所述类型转换方法,将每个解析好的javastruct对象当做参数传入所述类型转换方法,以将javastruct对象的所述部分指定属性值转换成数据库所映射的节点数据类对象的属性所能接收的值,然后将javastruct对象的所述部分指定属性值赋予节点数据类对象的对应属性。

16、在一些可能的实施方式中,所述步骤4具体包括:

17、导入mybatis-puls依赖,并且设置所对应的节点数据映射的类型,所述节点数据映射继承mybatis-puls的基础映射;

18、通过节点数据映射的对象调用插入方法,将节点数据类对象的属性值插入数据库中对应列。

19、在一些可能的实施方式中,在所述步骤2之前,所述方法还包括:

20、根据所述状态数据的节点编号信息,在工区表查询是否存在所述节点编号信息对应的记录;

21、如果存在,则进入步骤2,对所述状态数据进行小端转换;

22、如果不存在,则丢弃所述状态数据。

23、第二方面,本申请实施例还提供了一种电子设备,所述电子设备包括:

24、存储器,存储有可执行指令;

25、处理器,所述处理器运行所述存储器中的所述可执行指令,以实现如上所述的节点仪状态数据实时入库方法。

26、第三方面,本申请实施例还提供了一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,该计算机程序被处理器执行时实现如上所述的节点仪状态数据实时入库方法。

27、第四方面,本申请实施例还提供了一种节点仪状态数据实时入库装置,所述装置包括:

28、状态数据接收单元,用于在本地建立mqtt订阅端,通过5g网络远程实时接收节点仪的状态数据;

29、小端转换单元,用于设置javastruct转换类,通过unpack小端将接收的所述状态数据进行小端转换,以转换为javastruct对象的属性值;

30、数据库映射实体类转换单元,用于将javastruct对象的属性值转换为节点数据类对象的属性值,节点数据类为数据库映射实体类,节点数据类对象的属性类型与数据库中对应列一致;

31、入库单元,用于将节点数据类对象的属性值导入数据库中对应列。

32、在一些可能的实施方式中,所述数据库映射实体类转换单元具体用于:

33、建立类型转换方法,用于把javastruct对象的部分指定属性值转换成与数据库的对应列类型一致的值,javastruct对象的所述部分指定属性的类型是字节,并将类型转换方法的参数设置成javastruct转换类;

34、调用所述类型转换方法,将每个解析好的javastruct对象当做参数传入所述类型转换方法,以将javastruct对象的所述部分指定属性值转换成数据库所映射的节点数据类对象的属性所能接收的值,然后将javastruct对象的所述部分指定属性值赋予节点数据类对象的对应属性。

35、本申请公开的上述实施例,在本地建立mqtt订阅端,通过5g网络远程实时接收节点仪的状态数据,并设置javastruct转换类,通过unpack小端将接收的所述状态数据转换为javastruct对象的属性值,进一步将javastruct对象的属性值转换为节点数据类对象的属性值,节点数据类对象的属性类型与数据库中对应列一致,然后将节点数据类对象的属性值导入数据库中对应列,从而通过javastruct、mp、mqtt等技术,将5g智能节点的状态数据(通常为48字节数据)快速解析成java所能操作的实体类属性,而不需要一一截取并逐个转换一个节点信息的多个属性。采用本申请,能显著简化了5g智能节点处理数据的步骤,更加快速便捷地使5g智能节点从48字节数据成为可视化数据,实现效率高,并有利于合理占用资源。

36、本专利技术的其它特征和优点将在随后具体实施方式部分予以详细说明。

本文档来自技高网...

【技术保护点】

1.一种节点仪状态数据实时入库方法,其特征在于,所述方法包括:

2.根据权利要求1所述的方法,其特征在于,所述方法还包括:

3.根据权利要求1所述的方法,其特征在于,所述方法还包括:

4.根据权利要求1所述的方法,其特征在于,所述步骤3具体包括:

5.根据权利要求1所述的方法,其特征在于,所述步骤4具体包括:

6.根据权利要求1所述的方法,其特征在于,在所述步骤2之前,所述方法还包括:

7.一种电子设备,其特征在于,所述电子设备包括:

8.一种计算机可读存储介质,其特征在于,该计算机可读存储介质存储有计算机程序,该计算机程序被处理器执行时实现权利要求1-6中任一项所述的节点仪状态数据实时入库方法。

9.一种节点仪状态数据实时入库装置,其特征在于,所述装置包括:

10.根据权利要求9所述的装置,其特征在于,所述数据库映射实体类转换单元具体用于:

【技术特征摘要】

1.一种节点仪状态数据实时入库方法,其特征在于,所述方法包括:

2.根据权利要求1所述的方法,其特征在于,所述方法还包括:

3.根据权利要求1所述的方法,其特征在于,所述方法还包括:

4.根据权利要求1所述的方法,其特征在于,所述步骤3具体包括:

5.根据权利要求1所述的方法,其特征在于,所述步骤4具体包括:

6.根据权利要求1所述的方法,其特征在于,在所述步骤2之前...

【专利技术属性】
技术研发人员:杨文广赵改善宋志翔
申请(专利权)人:中国石油化工股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1