obix协议在java中的配置和使用详解

  

  

本文主要给大家介绍的是关于obix协议在java中的配置和使用,分享出来供大家参考学习、下面话不多说了,来一起看看详细的介绍吧。

  


  

  

简单来讲,obix是一种XML通讯协议,使用Http请求/Post方式进行数据通讯。所有数据通过可读字符进行传送,一个obix对象可以有唯一的一个URL识别。

  


  

  

首先数据储存在尼亚加拉的服务平台上,我们需要做的是从尼亚加拉获取数据,并且储存在InfluxDB中。下面是实现的流程方法。

  
      <李>加粗Ctrl + B   <李>斜体Ctrl +我李   <李>引用Ctrl + Q   <李>插入链接Ctrl + L   <李>插入代码Ctrl + K   <李>插入图片Ctrl + G李   <李>提升标题Ctrl + H   <李>有序列表Ctrl + O   <李>无序列表Ctrl + U   <李>横线按Ctrl + R   <李>撤销Ctrl + Z   <李>重做Ctrl + Y   
  

我们都需要定义哪些类以及变量?

  

           类/接口名   用途               计算器         DiscoverEngine   搜索工具         FactorInfo   定义所采集元素的信息         FactorNameDecoderInterface   元素名称解码接口         FactorNameDecoderObixUrlImpl         NewValueInterface         NewValueInterfaceImpl         ObixClientMgr         ObixClient         ObixFetcher   循环抓取obix传输的数据            

  

1,遍历各个点

  

 obix协议在java中的配置和使用详解

  

2,先遍历各个设备,将相同的类型id的设备存入同一个hashmap中

  

 obix协议在java中的配置和使用详解

  

3,开始执行主程序,先从数据库中查询出项目名称

  

 obix协议在java中的配置和使用详解

  

4,开始搜索!

        公共类ObixFetcher实现JobInterface {//这个是接口的抽象方法   公共空间cycleOnce () {//从数据库中取出项目信息   Listps=刀。selectByExample(新ProjectExample ());//遍历项目信息,如果项目信息的关键信息不为null   (项目p: ps) {   如果(p.getObixBaseAddress() !=零,,p.getObixUsername () !=null   ,,p.getObixPassword () !=null) {//开启探索工具(应该还是一个内部类),将关键项目信息传入探索工具,   DiscoverEngine de=new DiscoverEngine (p.getObixBaseAddress (),   p.getObixUsername (), p.getObixPassword ());//从构建数据库中将数据取出,存入bulidNameToId(同样还是构造方法)//从设备数据库中将数据取出,存入deviceNumberToId(同样还是构造方法)   de.setNewValueInterface(新NewValueInterfaceImpl (p.getId (), deviceService, deviceDao, deviceTypeDao, buildDao));//返回回来一个FactorInfo   de.setFactorNameDecoderInterface(新FactorNameDecoderObixUrlImpl ());   de.run ();   }   }   }   }      

以下是上文DiscoverEngine de的构造方法

        公开课DiscoverEngine {   baseUrl公共DiscoverEngine(字符串,字符串的用户名,字符串密码){   这一点。baseUrl=baseUrl;   obixClient=new obixClient (baseUrl,用户名、密码);   }   }      

以下是上文<代码> obixClient=new obixClient (baseUrl,用户名、密码)的构造方法

        公开课ObixClient {   baseUrl公共ObixClient(字符串,字符串的用户名,字符串密码){      这一点。baseUrl=baseUrl;   这一点。用户名=用户名;   这一点。密码=密码;      init ();   }//uri中存放着路由地址,然后传给会话,会话会在后面用的到   私人空间init () {   Uri Uri=new Uri (baseUrl);   会话=new ObixSession (uri,用户名、密码);   }   }      

这就是说这个类的当前这个对象,也就是构造方法产生的对象。
  

  

以下信息好像并没有用到
  

        公共类NewValueInterfaceImpl实现NewValueInterface {   Integer> HashMap<字符串;buildNameToId=new HashMap<字符串,Integer> ();   Integer> HashMap

obix协议在java中的配置和使用详解