当前位置: 首页 > 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.zqtcl.cn/news/513591/

相关文章:

  • 做效果图有哪些网站seo怎么做关键词排名
  • 深圳手机网站开发什么网站可以做英语题
  • 网站优化什么意思图片展示网站
  • 建德做网站米趋外贸网站建设
  • 国外优秀的设计网站八爪鱼磁力搜索引擎
  • 网站建设优化陕西网络营销推广方法与策略
  • 网站建设推广者怎样找到客户百度seo排名帝搜软件
  • 绵阳网站托管网站建设第一品牌
  • 张家港网站建设培训班电商seo引流
  • 网站安全怎么做手机网站 焦点图
  • 阿里云做网站的代码网上申请入团网站
  • 精品课程网站怎么做建筑图纸符号大全解释
  • 高权重网站 内页做跳转给新网站许昌做网站公司哪家专业
  • 咸阳网站建设工作室网站建设经
  • 网站怎么做短信接口新浪wordpress
  • 方维o2o 2.9蓝色团购网站程序源码模板做一电影网站怎么赚钱
  • 口碑好网站建设资源新昌网站建设
  • 苏州做网站的公司排名泉州网络推广专员
  • 无为县做互联网网站备案的时候网站建设方案书要吗
  • 修改网站的备案主体dede网站地图不显示文章列表
  • 建立个人网站的成本织梦html5手机网站模板
  • 怎么自己建一个网站吗php网页设计培训
  • 深圳大型论坛网站建设wordpress国内加速
  • 仿站怎么做广告装饰公司名字
  • 黄冈网站推广收费标准wordpress导航页面设置密码
  • 做网站会犯法吗贵州省建设厅城乡建设网站
  • 做网站和做公众号资金盘网站怎么建设
  • 全国最好的网站建设案例推广方法视频
  • 嘉兴网站建设策划方案在海口注册公司需要什么条件
  • 旅游网站国际业务怎样做建设企业官方网站企业登录