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

手机怎么防止网站跳转/星沙网站优化seo

手机怎么防止网站跳转,星沙网站优化seo,深圳做积分商城网站设计,要怎样做网站发到百度上面1&#xff0c;源码重点 2&#xff0c;编译 编译成功之后将cep的包替换maven库对应的cep jar 1&#xff09;我们编译成功之后得到了cep的包&#xff1a; 2&#xff09;去本地库替换maven库里面的这个cep包 <dependency><groupId>org.apache.flink</groupId>&…

 

1,源码重点

2,编译

编译成功之后将cep的包替换maven库对应的cep jar

 1)我们编译成功之后得到了cep的包:

2)去本地库替换maven库里面的这个cep包

<dependency><groupId>org.apache.flink</groupId><artifactId>flink-cep_2.11</artifactId><version>${project.version}</version>
</dependency>

3,运行案例代码:

 

package org.apache.flink.streaming.examples.cep;

import org.apache.flink.api.java.tuple.Tuple3;
import org.apache.flink.cep.CEP;
import org.apache.flink.cep.PatternStream;
import org.apache.flink.cep.RichPatternSelectFunction;
import org.apache.flink.cep.listern.CepListener;
import org.apache.flink.cep.pattern.Pattern;
import org.apache.flink.cep.pattern.conditions.RichIterativeCondition;
import org.apache.flink.streaming.api.TimeCharacteristic;
import org.apache.flink.streaming.api.datastream.SingleOutputStreamOperator;
import org.apache.flink.streaming.api.environment.StreamExecutionEnvironment;
import org.apache.flink.streaming.api.functions.AssignerWithPunctuatedWatermarks;
import org.apache.flink.streaming.api.watermark.Watermark;
import org.apache.flink.streaming.api.windowing.time.Time;

import javax.annotation.Nullable;
import java.util.ArrayList;
import java.util.Map;

/**
 * @Description:
 * @Author: greenday
 * @Date: 2019/8/15 14:05
 */
public class Driver {
    public static void main(String[] args) throws Exception {
        StreamExecutionEnvironment env = StreamExecutionEnvironment.getExecutionEnvironment();
        env.setStreamTimeCharacteristic(TimeCharacteristic.EventTime);

//        数据源
        SingleOutputStreamOperator<Tuple3<String, Long, String>> source = env.fromElements(
              new Tuple3<String, Long, String>("a", 1000000001000L, "22")
            , new Tuple3<String, Long, String>("b", 1000000002000L, "23")
            , new Tuple3<String, Long, String>("c", 1000000003000L, "23")
            , new Tuple3<String, Long, String>("d", 1000000003000L, "23")
            , new Tuple3<String, Long, String>("change", 1000000003001L, "23")
            , new Tuple3<String, Long, String>("e", 1000000004000L, "24")
            , new Tuple3<String, Long, String>("f", 1000000005000L, "23")
            , new Tuple3<String, Long, String>("g", 1000000006000L, "23")
        ).assignTimestampsAndWatermarks(new AssignerWithPunctuatedWatermarks<Tuple3<String, Long, String>>() {
            long maxTimsStamp;
            @Nullable
            public Watermark checkAndGetNextWatermark(Tuple3<String, Long, String> stringLongStringTuple3, long l) {
                return new Watermark(maxTimsStamp - 1000);
            }

            public long extractTimestamp(Tuple3<String, Long, String> stringLongStringTuple3, long per) {
                long elementTime = stringLongStringTuple3.f1;
                if (elementTime > maxTimsStamp) {
                    maxTimsStamp = elementTime;
                }
                return elementTime;
            }
        });

        Pattern<Tuple3<String, Long, String>,?> pattern = Pattern
            .<Tuple3<String, Long, String>>begin("start").where(new RichIterativeCondition<Tuple3<String, Long, String>>() {
                @Override
                public boolean filter(Tuple3<String, Long, String> value, Context<Tuple3<String, Long, String>> ctx) throws Exception {
                    return value.f0.equals("a");
                }
            })
            .next("middle").where(new RichIterativeCondition<Tuple3<String, Long, String>>() {
                @Override
                public boolean filter(Tuple3<String, Long, String> value, Context<Tuple3<String, Long, String>> ctx) throws Exception {
                    return value.f0.equals("b");
                }
            })
            .within(Time.minutes(5));

        PatternStream patternStream = CEP.pattern(source, pattern);

        PatternStream patternstream = patternStream
//            更新逻辑
            .registerListener(new CepListener<Tuple3<String, Long, String>>(){
                @Override
                public Boolean needChange(Tuple3<String, Long, String> element) {
                    return element.f0.equals("change");
                }
                @Override
                public Pattern returnPattern() {
                    Pattern<Tuple3<String, Long, String>, ?> pattern = Pattern
                        .<Tuple3<String, Long, String>>begin("start").where(new RichIterativeCondition<Tuple3<String, Long, String>>() {
                            @Override
                            public boolean filter(Tuple3<String, Long, String> value, Context<Tuple3<String, Long, String>> ctx) throws Exception {
                                return value.f0.equals("e");
                            }
                        })
                        .next("middle").where(new RichIterativeCondition<Tuple3<String, Long, String>>() {
                            @Override
                            public boolean filter(Tuple3<String, Long, String> value, Context<Tuple3<String, Long, String>> ctx) throws Exception {
                                return value.f0.equals("f");
                            }
                        })
                        .next("end").where(new RichIterativeCondition<Tuple3<String, Long, String>>() {
                            @Override
                            public boolean filter(Tuple3<String, Long, String> value, Context<Tuple3<String, Long, String>> ctx) throws Exception {
                                return value.f0.equals("g");
                            }
                        })
                        .within(Time.minutes(5));
                    return pattern;
                }
            });

        patternstream.select(new RichPatternSelectFunction<Tuple3<String, Long, String>, Tuple3<String,String,String>>() {
            @Override
            public Tuple3 select(Map pattern) throws Exception {
                String start =  pattern.containsKey("start") ? ((ArrayList)pattern.get("start")).get(0).toString() : "" ;
                String middle = pattern.containsKey("middle") ? ((ArrayList)pattern.get("middle")).get(0).toString() : "" ;
                String end = pattern.containsKey("end") ? ((ArrayList)pattern.get("end")).get(0).toString() : "" ;
                return new Tuple3<String,String,String>(start,middle,end);
            }
        }).print();

        env.execute("cep");
    }
}

4,结果展示:

http://www.lbrq.cn/news/1314415.html

相关文章:

  • 郑州做网站好/重庆seo博客
  • 火车头wordpress5.0发布模块/seo服务公司上海
  • macromedia怎么做网站/网络营销竞价推广
  • 小米商城网页设计论文/网站建设优化
  • 廊坊网站制作服务/信息流优化师培训机构
  • 如何在百度做网站推广/廊坊seo
  • 好商网的网站可以做中英文切换吗/百度经验首页
  • 一个人可以做网站吗/网络营销案例
  • 国外网站代理/网站开发需要的技术
  • 多用户购物商城源码/石家庄seo关键词
  • 做招聘网站怎么赚钱/关键词搜索查询
  • 成都系统网站建设/百度新闻发布平台
  • 叮当快药网站谁做的/品牌推广
  • 新网站怎么做权重/中国十大互联网公司排名
  • 建设网站的技术难点/危机舆情公关公司
  • 派出所web网站建设策划案/微信引流推广
  • 网站被入侵后需做的检测 1/无锡网站优化公司
  • 家庭路由器建个人网站/怎么优化网站
  • wordpress怎么改后台/京东关键词优化技巧
  • 做动画 的 网站有哪些内容/百度怎么联系客服
  • 网站备案手机号/深圳电子网络推广查询
  • 新网站怎么做排名/seo查询系统
  • 一个做网站编程的条件/爱站工具下载
  • 郴州网站设计公司/win10优化大师好用吗
  • 网络公司网站模版/奉化网站关键词优化费用
  • 大型建站网站/百度免费推广平台
  • 全球云邮登陆网站/网页设计与制作作业成品
  • 线上网站制作/培训平台有哪些
  • 贵州住房和城乡建设委员会网站/山东建站
  • 哪些网站是做采购的/竞价关键词排名软件
  • 使用JS编写用户信息采集表单
  • 如何把手机ip地址切换到外省
  • AI-Compass LLM训练框架生态:整合ms-swift、Unsloth、Megatron-LM等核心框架,涵盖全参数/PEFT训练与分布式优化
  • 第十四章 Stream API
  • 前端同学,你能不能别再往后端传一个巨大的JSON了?
  • day40 训练和测试的规范写法