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

数据查询网站如何做全站仪为什么要建站

数据查询网站如何做,全站仪为什么要建站,北京品牌建设网站公司排名,最新项目前言 以采集数据处理逻辑为例#xff0c;数据采集分为不同种类如#xff1a;MQTT、MODBUS、HTTP等#xff0c;不同的采集数据有不同的解析处理逻辑。但总体解析处理步骤是固定的。可以使用工厂方法设计模式简化代码#xff0c;让代码变得更加优雅。 代码实践 抽象类 总体…前言 以采集数据处理逻辑为例数据采集分为不同种类如MQTT、MODBUS、HTTP等不同的采集数据有不同的解析处理逻辑。但总体解析处理步骤是固定的。可以使用工厂方法设计模式简化代码让代码变得更加优雅。 代码实践 抽象类 总体步骤一致先声明一个抽象类包含所有处理步骤具体处理步骤由不同子类自行实现。【大体处理框架】 public abstract class AbstractCollectService {protected abstract Boolean handleAlarm(CollectDataMessage message);protected abstract Boolean handleCollect(CollectDataMessage message);public CollectDataMessage parseKafkaMessage(String kafkaMessage, CollectTypeEnum collectTypeEnum){// 工厂方法return CollectFactory.getInstance(collectTypeEnum).parseKafkaMessage2DataMessage(kafkaMessage);}protected abstract CollectDataMessage parseKafkaMessage2DataMessage(String kafkaMessage);public Boolean doHandle(CollectDataMessage message) {Boolean ret;switch (message.getHandleTypeEnum()){case ALARM:ret handleAlarm(message) ;break ;case COLLECT:ret handleCollect(message) ;break ;default:ret false ;}return ret ;}}枚举类 采集数据枚举类与子实现类一一对应 public enum CollectTypeEnum {MQTT,MODBUS,HTTP; }子实现类 不同采集数据的子类处理逻辑各自实现抽象类中抽象方法核心逻辑。 工厂方法 定义工厂方法使用枚举做判断条件真正处理不同逻辑时需要显示地传出对应枚举参数以便得到对应实现类对象。 public class CollectFactory {public static AbstractCollectService getInstance(CollectTypeEnum collectTypeEnum) {switch (collectTypeEnum) {case MQTT:return MqttCollectService.getInstance();case MODBUS:return ModbusCollectService.getInstance();case HTTP:return HttpCollectService.getInstance();default:throw new IllegalArgumentException(Unknown collect type);}} }具体子类对象都是采用【基于类初始化】获取的单例对象。随便一个为例其他子类同理。 简单的工厂方法设计模式就这样实现了~ 最终使用 显示指定枚举参数 处理函数 public class KafkaMsg2CollectMsgRichMapFunction extends RichMapFunctionString, CollectDataMessage {private static final Logger log LoggerFactory.getLogger(KafkaMsg2CollectMsgRichMapFunction.class) ;private final CollectTypeEnum collectTypeEnum;public KafkaMsg2CollectMsgRichMapFunction(CollectTypeEnum collectTypeEnum) {this.collectTypeEnum collectTypeEnum;}Overridepublic void open(Configuration parameters) throws Exception {}Overridepublic CollectDataMessage map(String kafkaMessage) {try {// 根据显示指定的枚举类获取对应子类实现相应逻辑AbstractCollectService collectService CollectFactory.getInstance(collectTypeEnum);return collectService.parseKafkaMessage(kafkaMessage, collectTypeEnum);} catch (RuntimeException e) {log.info(解析采集数据异常, e);throw new RuntimeException(e);}}Overridepublic void close() throws Exception {} }
http://www.pierceye.com/news/78156/

相关文章:

  • 网站是什么意思例如Wordpress屏蔽模仿站爬虫ip
  • 假冒网站能通过备案登记吗asp网站整站下载器
  • 湖南企业做网站电子商务网站开发的流程图
  • 免费搭建网站的软件做设计比较好的网站
  • 响应式网站开发图标百度站长平台网址
  • 唐山seo网络推广南昌seo排名技术
  • 网站建设需要什么格式的图片惠州服务类营销方案
  • 网站做数据统计网站备案扫描
  • 辽宁学网站建设专业学校青岛网站优化公司哪家好
  • 兰州网站备案商品网站做推广方案
  • 网站建设验收书网站建设色系搭配
  • 0453牡丹江免费信息网手机版深圳seo优化培训
  • 大朗做网站北京网站建设企业
  • 这是我做的网站吗定制网站开发报价
  • 高端品牌网站建设图片建设部网站职业资格证查询
  • ps如何做网站低价网站建设策划内容
  • 长沙品牌网站设计爱站网注册人查询
  • 宣讲家网站 家风建设免费网站制作手机软件的app
  • 网站素材免费icp备案后要建网站吗
  • 微网站的链接怎么做的找别人做网站需要什么信息
  • 建设官方网站的费用账务处理织梦添加网站名称添加新变量
  • 网站开发技术联系方式谁做响应式网站
  • 外贸网站推广和建站网站的目录结构
  • 江苏省建设厅 标准化网站岳阳做网站公司
  • 单位 内网网站建设天津网站建设seo优化
  • 企业营销网站建设策划书广州和广州市注册公司区别
  • 如何在自己电脑上建网站wordpress 主题管理
  • 人力资源网站建设方案企业网站管理系统信得过y湖南岚鸿怎么样
  • 网站建设与维护属于什么岗位先注册域名后建设网站可以吗
  • 手机管理网站模板下载软件珠海网站优化