Guice 案例(四)
(1).实现提供者(Provider) SyncOkHttpClientProvider,创建同步:OkHttpClient.
(1).实现提供者(Provider) SyncOkHttpClientProvider,创建同步:OkHttpClient.
(1). 定义接口```package help.lixin.guice.service;
(1). @ImplementedBy 该注解用于为接口指定指定实现类(注解在接口上). 例如,一个接口有多个实现类,希望为接口指定一个默认的实现类.
(1). 查看当前Chrome版本
(1). CDP源码目录“CDP Hello World”
(1). 概述 上一节分析到了:ChromeLauncher.launchChromeProcess为会将请求委托给:ProcessLauncherImpl进行处理,在这里我开始剖析:ProcessLauncherImpl.launch方法
(1). 概述 前面针对:websocket发送请求和websocket接受请求进行了剖析.这一节,主要剖析下:page.navigate(“http://github.com”),以及network.onLoadingFinished事件到底...
(1). DumpHtmlFromPageExample```package com.github.kklisura.cdt.examples;
(1). 概述 前面的内容,剖析到了:Network.enable会向Chrome发送报文(websocket传输体),那么,websocket又是如何处理revice的呢?又是如何改变:InvocationResult对象的呢? websoc...
(1). LogRequestsExample```final ChromeLauncher launcher = new ChromeLauncher();
(1). LogRequestsExample```final ChromeLauncher launcher = new ChromeLauncher();
(1). 源码下载并编译 Chrome Debug Protocol: https://chromedevtools.github.io/devtools-protocol/ Chrome Debug Protocol Java impl: h...
(1). LogRequestsExample```// … …final ChromeLauncher launcher = new ChromeLauncher();// ********************// 2. 调用launch,...
(1). LogRequestsExample```final ChromeLauncher launcher = new ChromeLauncher();
(1). 概述 前几节剖析到,会根据chrome的安装目录,创建一个chrome进程,并从chrome进程里获取到监听到的端口.然后委托给:ChromeService创建websocket请求.这一节,主要剖析:ChromeService相关的API
(1). LogRequestsExample```// … …// ********************// 2. 创建:ChromeLauncher// ********************final ChromeLauncher l...
(1). 下载ES源码lixin-macbook:GitRepository lixin$ pwd/Users/lixin/GitRepositorylixin-macbook:GitRepository lixin$ git clone -b ...
(1). 为ES创建数据目录```查看工作目录lixin-macbook:elasticsearch-7.1.0 lixin$ pwd/Users/lixin/Developer/elastic-search/elasticsearch-7.1.0
(1). URI Search URI Search就是通过URI进行Query. q : 指定查询的文本.df : 指定查询的字段(不指定会查询所有的字段). sort : 排序 from : 跳过...
(1). Reqeust Body Search(DSL) Reqeust Body Search是ES提供的DSL语言.
(0). 创建索引和Mapping信息请参考: https://www.lixin.help/2020/11/29/ElasticSearch-Mapping.html
(1). 概述 当使用嵌套对象时,每次更新数据时,都会触发整个文档重新建立索引,所以,在ES中提供了父子对象. 父文档和子文档是两个独立的文档.更新父文档无需重新索引子文档,子文档被添加,更新,删除也不会影响父文档和其它子文档.
(1). 创建Mappings```DELETE /order
(1). 需求 以订单和订单详细为模型,把数据同步到ES中,进行检索.
(1). 记录学习ES常用操作```批量插入POST _bulk{“index” : { “_index” : “books” , “_type” : “IT” , “_id” : “1”}}{ “id” : “1” , “title” : “J...
(1). 概述 范式设计:范式设计的最主要目标是:减少不必要的更新,相比反范式化设计还节省了磁盘空间(现在的存储空间越来越便宜了),自然,也存在缺陷:造成Join查询.反范式设计的:它把数据打平(Flattening),不使用关联关系,而是在文...
(1). Mapping ES在创建索引时,如果没有指定Mapping,那么在我们插入数据时,会自动进行类型的断判,但是,有时候我们需要进行明确的字段类型.自动判断类型的规则如下:
(1). 下载logstash(略) https://artifacts.elastic.co/downloads/logstash/logstash-7.10.0-darwin-x86_64.tar.gz
(1). 下载kibana(略) https://artifacts.elastic.co/downloads/kibana/kibana-7.1.0-darwin-x86_64.tar.gz 注意:kibana版本要和es版本是一致,否则,...
(1). 创建index和mapping信息 ik_max_word:是IK分词器.(请参照前面的内容,安装好)