Windows环境下Elasticsearch相关软件安装
Windows环境下Elasticsearch相关软件安装
本文将介绍在 windows 环境下安装 Elasticsearch 相关的软件。
1、安装Elasticsearch
1.1 安装jdk
ElasticSearch是基于lucence开发的,也就是运行需要java jdk支持,所以要先安装JAVA环境。
由于ElasticSearch 5.x 往后依赖于JDK 1.8的,所以现在我们下载JDK 1.8或者更高版本。
这里将不再介绍JDK的安装,如果有需要请参考JDK的安装。
下载JDK1.8,下载完成后安装。
1.2 安装Elasticsearch
1.2.1 ElasticSearch下载
下载地址: https://www.elastic.co/downloads/elasticsearch
根据需要点击View past releases →
选择不同的版本,这里我选择的是7.12.1
。
1.2.2 解压
1.2.3 启动Elasticsearch
进入bin目录下,双击执行elasticsearch.bat
看到started
说明启动成功
1.2.4 测试
打开浏览器输入http://localhost:9200
进行测试,结果如下:
1.3 安装Elasticsearch-head插件
1.3.1 安装node环境
网址:https://nodejs.org/en/download/
下载Windows版msi的,下载完直接安装,一直确定。
这里选择的安装包是 node-v16.13.1-x64.msi
安装完后cmd查看版本node-v
1.3.2 安装grunt
grunt是一个很方便的构建工具,可以进行打包压缩、测试、执行等等的工作,5.x里之后的head插件就是通过
grunt启动的,因此需要安装grunt。
npm install -g grunt-cli
查看版本号 grunt -version
1.3.3 下载head插件
从 https://github.com/mobz/elasticsearch-head
网站下载安装包,解压安装包
进入head文件夹下,执行命令:npm install
(此处是为安装pathomjs)
如果安装速度慢,设置成淘宝的镜像重新安装
npm config set registry https://registry.npm.taobao.org
或者在https://npm.taobao.org/dist/phantomjs/
下载
1.3.4 启动
安装完成之后npm run start
或grunt server
,启动head插件
访问http://localhost:9100
发现集群健康值是未连接,下面进行配置的修改。
1.3.5 修改es使用的参数
编辑elasticsearch-7.12.1\config\elasticsearch.yml
文件
# 增加新的参数,这样head插件可以访问es
http.cors.enabled: true
http.cors.allow-origin: "*"
# 注意,设置参数的时候后面要有空格
1.3.6 重启es
修改完配置将es重启,浏览器访问 http://localhost:9100
到此,Elasticsearch和ElasticSearch-head已经装好了。
1.4 Elasticsearch安装为Windows服务
elasticsearch的bin目录下有一个elasticsearch-service.bat
cmd 进入bin目录下执行: elasticsearch-service.bat install
原因是使用了系统环境变量中的jdk(1.8),而es7要求的jdk版本为11。
打开elasticsearch-env.bat
,找到:
rem comparing to empty string makes this equivalent to bash -v check on env var
rem and allows to effectively force use of the bundled jdk when launching ES
rem by setting JAVA_HOME=
if defined ES_JAVA_HOME (set JAVA="%ES_JAVA_HOME%\bin\java.exe"set JAVA_TYPE=ES_JAVA_HOME
) else if defined JAVA_HOME (rem fallback to JAVA_HOMEecho "warning: usage of JAVA_HOME is deprecated, use ES_JAVA_HOME" >&2set JAVA="%JAVA_HOME%\bin\java.exe"set "ES_JAVA_HOME=%JAVA_HOME%"set JAVA_TYPE=JAVA_HOME
) else (rem use the bundled JDK (default)set JAVA="%ES_HOME%\jdk\bin\java.exe"set "ES_JAVA_HOME=%ES_HOME%\jdk"set JAVA_TYPE=bundled JDK
)
设置ES_JAVA_HOME
环境变量:
重新执行:
查看电脑服务es已经存在了
elasticsearch-service.bat
的常用命令:
install: 安装Elasticsearch服务
remove: 删除已安装的Elasticsearch服务(如果启动则停止服务)
start: 启动Elasticsearch服务(如果已安装)
stop: 停止服务(如果启动)
manager: 启动GUI来管理已安装的服务
1.5 Elasticsearch分词器Elasticsearch-Analysis-ik安装
1、进入Elasticsearch安装目录下的bin目录下执行下面命令(只支持 v5.5.1以上)
elasticsearch-plugin install https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v5.5.3/elasticsearch-analysis-ik-5.5.3.zip
2、进入 Elasticsearch安装目录,新建plugins/ik文件夹
从 https://github.com/medcl/elasticsearch-analysis-ik/releases
找到对应的版本下载zip包,然后
解压放入上面目录重启elasticsearch就可以了。
3、分词测试
默认分词测试
ik_max_word
ik_smart
2、安装ElasticHD
可执行程序的下载地址:https://github.com/360EntSecGroup-Skylar/ElasticHD/releases/
下载时需要下载对应的版本:
下载解压后,就会有一个ElasticHD.exe 的可执行文件,我们来继续看官方说明:
Step1: Download the corresponding elasticHD version,Double click zip package to unzip
Step2: exec elastichd ./ElasticHD -p 127.0.0.1:9800
意思是说我们要用cmd命令去启动它,在启动的时候去指定它的访问端口。
CMD命令:
cd 文件目录
ElasticHD -p 127.0.0.1:9800
如果你觉得每次都这样启动麻烦,可以用个记事本写下来,然后把记事本后缀名改成.bat ,这样就双击启动了。
然后,我们浏览器访问下(如果你启动的服务想要别的电脑访问,就不要使用127.0.0.1 ,要使用局域网IP或者外网
的固定IP)。
当然,这个工具还有其它的一些特色功能,如果你们有需要,就自己去研究吧。
3、安装Kibana
下载地址:https://artifacts.elastic.co/downloads/kibana/kibana-7.12.1-windows-x86_64.zip
下载完成后解压:
先去运行es启动完毕后,在进入bin目录后点击Kibana.bat就能运行Kibana。
浏览器输入localhost:5601
就能访问Kibana。
点击Explore on my own
和Dismiss
左侧下拉列表菜单:
选择Dev Tools
这样就可以执行相关的语句,这里做了一下小测试,用起来比head插件方便,head插件需要去安装node.js,相
比来说比较麻烦。
Kinana如果启动出错,进行如下操作:
curl -X DELETE http://localhost:9200/.kibana*
{"acknowledged":true}
4、安装Logstash
logstash 安装,下载最新版本的logstash: https://www.elastic.co/fr/downloads/logstash
根据自己的需要,点击View past releases →
下载相应的版本,这里我下载的是这个版本logstash-7-12-1
https://www.elastic.co/cn/downloads/past-releases/logstash-7-12-1
解压到磁盘根目录下:
启动脚本在 logstash-7.12.1>bin
logstash使用
1、进入目录logstash-7.12.1 > config
,打开:logstash-sample.conf
,设置如下内容:
# Sample Logstash configuration for creating a simple
# Beats -> Logstash -> Elasticsearch pipeline.input {beats {port => 5044}
}output {elasticsearch {hosts => ["http://localhost:9200"]index => "%{[@metadata][beat]}-%{[@metadata][version]}-%{+YYYY.MM.dd}"#user => "elastic"#password => "changeme"}
}
2、进入bin目录,cmd启动
logstash.bat -f C:\zsxsoftware\logstash-7.12.1\config\logstash-sample.conf
启动成功
3、浏览器访问
4.1 Logstash同步数据库配置案例
在C:\zsxsoftware\logstash-7.12.1
路径下新建一个sync
文件夹用来进行操作。
新建一个logstash-db-sync.conf
文件,文件的内容为:
input {jdbc {# 设置 MySql/MariaDB 数据库url以及数据库名称jdbc_connection_string => "jdbc:mysql://localhost:3306/logstash-db?useUnicode=true&characterEncoding=UTF-8&autoReconnect=true"# 用户名和密码jdbc_user => "root"jdbc_password => "root"# 数据库驱动所在位置,可以是绝对路径或者相对路径jdbc_driver_library => "C:\zsxsoftware\logstash-7.12.1\sync\mysql-connector-java-5.1.41.jar"# 驱动类名jdbc_driver_class => "com.mysql.jdbc.Driver"# 开启分页jdbc_paging_enabled => "true"# 分页每页数量,可以自定义jdbc_page_size => "10000"# 执行的sql文件路径statement_filepath => "C:\zsxsoftware\logstash-7.12.1\sync\logstash.sql"# 设置定时任务间隔 含义:分、时、天、月、年,全部为*默认含义为每分钟跑一次任务schedule => "* * * * *"# 索引类型type => "_doc"# 是否开启记录上次追踪的结果,也就是上次更新的时间,这个会记录到 last_run_metadata_path 的文件use_column_value => true# 记录上一次追踪的结果值last_run_metadata_path => "C:\zsxsoftware\logstash-7.12.1\sync\track_time"# 如果 use_column_value 为true, 配置本参数,追踪的 column 名,可以是自增id或者时间tracking_column => "updated_time"# tracking_column 对应字段的类型tracking_column_type => "timestamp"# 是否清除 last_run_metadata_path 的记录,true则每次都从头开始查询所有的数据库记录clean_run => false# 数据库字段名称大写转小写lowercase_column_names => false}
}
output {elasticsearch {# 如果是7.x不设置该属性会失败document_type => "_doc"# es地址hosts => ["127.0.0.1:9200"]# 同步的索引名index => "logstash-test"# 设置_docID和数据相同。itemId与sql同步脚本中的itemId保持一致document_id => "%{itemId}"# document_id => "%{id}"# 定义模板名称template_name => "myik"# 模板所在位置template => "C:\zsxsoftware\logstash-7.12.1\sync\logstash-ik.json"# 重写模板template_overwrite => true# 默认为true,false关闭logstash自动管理模板功能,如果自定义模板,则设置为falsemanage_template => false}# 日志输出stdout {codec => json_lines}
}
logstash.sql
文件内容
SELECTi.id as itemId,i.item_name as itemName,i.sell_counts as sellCounts,ii.url as imgUrl,tempSpec.price_discount as price,i.updated_time as updated_time
FROMitems i
LEFT JOINitems_img ii
oni.id = ii.item_id
LEFT JOIN(SELECT item_id,MIN(price_discount) as price_discount from items_spec GROUP BY item_id) tempSpec
oni.id = tempSpec.item_id
WHEREii.is_main = 1andi.updated_time >= :sql_last_value
--:sql_last_value是记录的最后的一个值
logstash-ik.json
文件内容
{"order": 10,"version": 1,"index_patterns": ["*"],"settings": {"index": {"refresh_interval": "5s"}},"mappings": {"_default_": {"dynamic_templates": [{"message_field": {"path_match": "message","match_mapping_type": "string","mapping": {"type": "text","norms": false}}},{"string_fields": {"match": "*","match_mapping_type": "string","mapping": {"type": "text","norms": false,"analyzer": "ik_smart","fields": {"keyword": {"type": "keyword","ignore_above": 256}}}}}],"properties": {"@timestamp": {"type": "date"},"@version": {"type": "keyword"},"geoip": {"dynamic": true,"properties": {"ip": {"type": "ip"},"location": {"type": "geo_point"},"latitude": {"type": "half_float"},"longitude": {"type": "half_float"}}}}}},"aliases": {}
}
track_time
文件内容
--- 1970-01-01 00:00:00.000000000 Z
进入cmd启动
logstash.bat -f C:\zsxsoftware\logstash-7.12.1\sync\logstash-db-sync.conf
启动成功
{"@version":"1","itemName":"【天天吃货】澳洲大龙虾 餐桌霸气大菜 聚会有面子","imgUrl":"http://122.152.205.72:88/foodie/seafood-1004/img1.png","type":"_doc","price":7840,"@timestamp":"2022-06-12T04:08:00.102Z","itemId":"seafood-1004","sellCounts":206}
{"@version":"1","itemName":"美味三文鱼 寿司 聚会必备","imgUrl":"http://122.152.205.72:88/foodie/seafood-138/img1.png","type":"_doc","price":26800,"@timestamp":"2022-06-12T04:08:00.103Z","itemId":"seafood-138","sellCounts":3051}
{"@version":"1","itemName":"【天天吃货】武汉鸭胗 卤味齐全 香辣麻辣","imgUrl":"http://122.152.205.72:88/foodie/snacks-1002/img1.png","type":"_doc","price":22500,"@timestamp":"2022-06-12T04:08:00.104Z","itemId":"snacks-1002","sellCounts":147}
{"@version":"1","itemName":"新鲜卤辣香菇 香甜可口","imgUrl":"http://122.152.205.72:88/foodie/snacks-90/img1.png","type":"_doc","price":880,"@timestamp":"2022-06-12T04:08:00.104Z","itemId":"snacks-90","sellCounts":2652}
{"@version":"1","itemName":"儿童爱吃奶糖 休闲食品","imgUrl":"http://122.152.205.72:88/foodie/suger-116/img1.png","type":"_doc","price":1520,"@timestamp":"2022-06-12T04:08:00.105Z","itemId":"suger-116","sellCounts":2296}
{"@version":"1","itemName":"【天天吃货】精品碧螺春 居家必备茶叶 喝茶最佳","imgUrl":"http://122.152.205.72:88/foodie/tea-1003/img1.png","type":"_doc","price":17600,"@timestamp":"2022-06-12T04:08:00.106Z","itemId":"tea-1003","sellCounts":3100}
{"@version":"1","itemName":"养生茶必喝红茶 秋冬必备","imgUrl":"http://122.152.205.72:88/foodie/tea-148/img1.png","type":"_doc","price":22800,"@timestamp":"2022-06-12T04:08:00.108Z","itemId":"tea-148","sellCounts":2331}
索引已经新建,查看索引的信息:
索引的字段和数据库的查询字段是相互对应的。
查看数据:
搜索测试:
结果一切正常。
4.2 通过Logstash导入演示数据到ElasticSearch
1、准备数据
从https://grouplens.org/datasets/movielens/
上下载数据
下载ml-latest-small.zip
文件:
https://files.grouplens.org/datasets/movielens/ml-latest-small.zip
解压后得到movies.csv
文件
2、logstash配置文件
在logstash-7.12.1/conf
目录下拷贝一份logstash-sample.conf
文件, 命名为:logstash-movies.conf
,
内容如下:
# Sample Logstash configuration for creating a simple
# Beats -> Logstash -> Elasticsearch pipeline.input {file {path => "C:/zsxsoftware/logstash-7.12.1/movies/movies.csv"start_position => "beginning"sincedb_path => "C:/zsxsoftware/logstash-7.12.1/movies/null.txt"}
}filter {csv {separator => ","columns => ["id", "content", "genre"]}mutate {split => { "genre" => "|"}remove_field => ["path", "host", "@timestamp", "message"]}mutate {split => { "content" => "(" }add_field => { "title" => "%{[content][0]}"}add_field => { "year" => "%{[content][1]}"}}mutate {convert => {"year" => "integer"}strip => ["title"]remove_field => ["path", "host", "@timestamp", "content"]}
}output {elasticsearch {hosts => ["http://localhost:9200"]index => "movies"document_id => "%{id}"#user => "user"#password => "password"}stdout {}
}
3、执行导入
logstash.bat -f C:\zsxsoftware\logstash-7.12.1\config\logstash-movies.conf
执行需要等一会,而后控制台输出内容,如下:
4、kibana检查数据是否导入index
4.3 Logstash实现数据读取
Logstash 配置文件有两个必需元素,输入(inputs)和输出(ouputs),以及一个可选元素 filters。输入插件配
置来源数据,过滤器插件在你指定时修改数据,输出插件将数据写入目标。
我们首先需要创建一个配置文件,配置内容如下图所示:
创建配置文件 weblog.conf
配置内容如下:
input {tcp {port => 9900}
}filter {grok {match => { "message" => "%{COMBINEDAPACHELOG}" }}mutate {convert => {"bytes" => "integer"}}geoip {source => "clientip"}useragent {source => "agent"target => "useragent"}date {match => ["timestamp", "dd/MMM/yyyy:HH:mm:ss Z"]}
}output {stdout { }elasticsearch {hosts => ["localhost:9200"]}
}
在上面,我们同时保留两个输出:stdout 及 elasticsearch。事实上,我们可以定义很多个的输出。stdout 输出对
于我们初期的调试是非常有帮助的。等我们完善了所有的调试,我们可以把上面的 stdout 输出关掉。
启动logstash:
logstash.bat -f C:\zsxsoftware\logstash-7.12.1\streamconf\weblog.conf
发送数据:
看logstash的后台输出:
这一次,我们打开 Kibana,执行命令,成功看到 es 中的这条记录。
5、安装Filebeat
5.1 下载安装包
https://www.elastic.co/cn/downloads/beats/filebeat
根据自己的需要,点击View past releases →
下载相应的版本,这里我下载的是这个版本filebeat-7-12-1
5.2 解压
5.3 修改配置文件
编辑filebeat.yml
配置文件:
1、配置 filebeat:inputs:path
,这里的路径是所要收集日志的路径。
2、配置 enabled: true
这个配置很重要,只有配置为true之后配置才可生效,否则不起作用。
3、配置Outputs ,这里的Outputs有elasticsearch,logstash。按照配置文件下面的示例配置即可,只能配置一
个输出,默认是ElasticSearch。
5.4 启动
.\filebeat -e -c filebeat.yml
正常情况下,应该有个链接ES的过程,将数据输出到es。
5.5 测试
用以下命令向beat.log
文件写入内容,以下内容是全量覆盖,不是追加往里面写内容,若想改成追加内容,把下
面的>
符号改成 >>
即可。
echo "2020-10-31 08:55:09,578 [8] INFO test.Logging - 2017-06-11 08:55:09--System.ArgumentOutOfRangeException" > beat.log
后台打印信息:
用kinaba
查看,多了一个索引:
默认情况下,Filebeat写事件到名为filebeat-7.12.1-yyyy.MM.dd
的索引,其中yyyy.MM.dd
是事件被索引的日
期。为了用一个不同的名字,你可以在Elasticsearch输出中设置index选项。
到目前为止,和Elasticsearch相关的一些常用的软件都介绍完毕。
相关文章:
Windows环境下Elasticsearch相关软件安装
Windows环境下Elasticsearch相关软件安装 本文将介绍在 windows 环境下安装 Elasticsearch 相关的软件。 1、安装Elasticsearch 1.1 安装jdk ElasticSearch是基于lucence开发的,也就是运行需要java jdk支持,所以要先安装JAVA环境。 由于ElasticSear…...
配置Jedis连接池
一、概述 Jedis本身是线程不安全的,并且频繁的创建和销毁连接会有性能损耗,因此推荐使用Jedis连接池代替Jedis的直连方式。 二、创建连接池 public class JedisConnectionFactory {private static final JedisPool jedisPool;static {//配置连接池Jedi…...
Windows 12 开源网页版
前言 Windows 12 网页版是一个开源项目,使用标准网络技术,例如 Html、CSS 和 Javascript, 希望让用户在网络上预先体验 Windows 12 Windows 12 网页版download Windows 12 网页版 gitlab项目Windows 12 网页版 downloadWindows 12 demo参考downloaddemo test 开始菜单 …...
circleMidpoint(scrPt c, GLint r) 未定义的标识符,openGL第四章例子 ,画饼状图。
以下是完整的例子。在第四版 《计算机图形学 with openGL》第四章的例子中,竟然只调用了circleMidpoint(scrPt &c, GLint r) ,没有实现,我认为是系统方法,怎么找都找不到。openGL 官方文档也没找到,这不会是自定义…...
RKNN模型评估-性能评估和内存评估
基于Python的模型评估 perf_debug:进行性能评估时是否开启debug 模式。在 debug 模式下,可以获取到每一层的运行时间,否则只能获取模型运行的总时间。默认值为 False。 eval_mem: 是否进入内存评估模式。进入内存评估模式后,可以…...
window mysql-8.0.34 zip解压包安装
window系统上安装mysql8 解压版 下载压缩包 https://cdn.mysql.com//Downloads/MySQL-8.0/mysql-8.0.34-winx64.zip安装 用解压软件解压刚下载的mysql-8.0.34-winx64.zip 的文件至d:\devs路径下。 创建配置文件my.ini到路径d:\devs\mysql-8.0.34-winx64下 [mysqld] # 设置…...
Mysql判断某个数据库中是否包含某个表,与pymysql工具函数
查看某个数据库中的全部表: SELECT table_name FROM information_schema.tables WHERE table_schema 数据库名因此查看某个库中的某个表可以使用: SELECT table_name FROM information_schema.tables WHERE table_schema 数据库名 AND table_name 表…...
快速掌握正则表达式
文章目录 限定符 Qualifier第一个常用限定符 ?第二个常用限定符 *第三个常用限定符 或运算符字符类元字符 Meta-characters\d 数字字符\w 单词字符空白符 \s.任意字符^ $ 行首行尾 贪婪与懒惰匹配 Greedy vs Lazy Match实例 1 :RGB颜色匹配实例 2 &…...
git: ‘lfs‘ is not a git command unclear
首先可以尝试 git lfs install 是否可以,不可以后就看这个连接:https://stackoverflow.com/questions/48734119/git-lfs-is-not-a-git-command-unclear。 我的是ubuntu,所以: 保证这个前提: git-lfs requires git ve…...
代码随想录--哈希--两个数组的交集
题意:给定两个数组,编写一个函数来计算它们的交集。 说明: 输出结果中的每个元素一定是唯一的。 我们可以不考虑输出结果的顺序。 import java.util.ArrayList; import java.util.HashMap; import java.util.List;public class SSS {public …...
基于腾讯文档进行应届生个人求职记录
1. 新建一个腾讯文档 电脑登录QQ,点击“腾讯文档”功能键。 2. 可以选择下载客户端,也可以直接进入网页版。(本人使用网页版) 3. 点击新建,选择在线表格。 4. 编辑表名,表内容。 5. 设置文档权限…...
计算机视觉实战项目(图像分类+目标检测+目标跟踪+姿态识别+车道线识别+车牌识别)
图像分类 教程博客_传送门链接:链接 在本教程中,您将学习如何使用迁移学习训练卷积神经网络以进行图像分类。您可以在 cs231n 上阅读有关迁移学习的更多信息。 本文主要目的是教会你如何自己搭建分类模型,耐心看完,相信会有很大收获。废话不…...
(18)线程的实例认识:线程的控制,暂停,继续,停止,线程相互控制,协作
话不多,但比较中肯,本文参照c# 线程暂停继续的实现方式_哔哩哔哩_bilibili 一、老方式 1、这是一个老的实现方式,基本不推荐,背后控制的原理需要了解。 界面:三个button一个textbox …...
c#动态保留小数位数的数值格式化方法实例----从小数点后非零数字保留两位进行四舍五入
c#动态保留小数位数的数值格式化方法实例----从小数点后非零数字保留两位进行四舍五入 功能介绍代码案例输出结果封装扩展方法控制台调用 其他方法地址 功能介绍 1. 输入的数字是整数,则直接返回整数部分的字符串表示。 2. 如果输入的数字是小数,则执行…...
大数据精准营销大数据平台应用场景有哪些,平台优势有哪些?
精准营销大数据平台应用场景有很多种,比如在银行领域,我通过相应的客户数据,也可以给客户推广一些银行业务。还可以运用于证券行业,除此之外还可以运用于保险或者信托行业,借助精准营销大数据平台可以进行主动营销。那…...
Pyspark案例综合(数据计算)
数据计算 map方法 map算子 map算子(成员方法)接受一个处理函数,可用lambda快速编写,对RDD内的元素一一处理,返回RDD对象 链式调用 对于返回值是新的RDD的算子,可以通过链式调用的方式多次调用算子 &q…...
电路电子技术1--关联参考方向及功率的计算
1.判断 电流由元件的低点位端流向高电位端的参考方向称为关联参考方向。() 考点:电流、电压的参考方向 解释:在一些复杂的电路中,往往不能预先确定某段电路上的电流、电压的实际方向,所以引进了 “关联参考方向”。为了能够解决问…...
【C++】AVL树的插入操作实现以及验证是否正确(带平衡因子)
文章目录 前言一、AVL树结点的定义二、AVL树的插入(Insert)插入完整代码:1.左单旋(RotateL)2.右单旋(RotateR)3.先右单旋再左单旋(RotateRL)1.保存的bf为02.保存的bf为13…...
【Linux-Day10-信号量,共享内存,消息队列】
信号量 信号量描述 信号量是一个特殊的变量,一般取正数值。它的值代表允许访问的资源数目,获取资源 时,需要对信号量的值进行原子减一,该操作被称为 P 操作。 当信号量值为 0 时,代表没有资源可用,P 操作…...
使用IntelliJ IDEA本地启动调试Flink流计算工程的2个异常解决
记录:471 场景:使用IntelliJ IDEA本地启动调试Flink流计算时,报错一:加载DataStream报错java.lang.ClassNotFoundException。报错二:No ExecutorFactory found to execute the application。 版本:JDK 1.…...
对象及日期对象
对象 1.什么是对象 类是对象的抽象,对象是类的实例 程序算法数据结构 万物皆对象,对象是一个具体的事物,看到见摸得着,对象是一组无序相关属性和方法的集合(无序,所以对象没有length属性),所有事物都是对象,列如字符串,数值,数组,函数等. 属性:事物的特征,在对象中用属性表…...
鼠标滚轮编码器解析
文章目录 前言一、鼠标滚轮编码器逻辑?二、使用步骤 1.引入库2.读入数据总结 前言 鼠标滚轮编码器为三脚接入,一个COM脚C(一般是接地),两个脉冲波形输入脚A、B,转动滚轮编码器会在两个脉冲输入脚上产生脉冲…...
【PTA】攀拓(PAT)- 程序设计(甲级)2023年春季考试
个人学习记录,代码难免不尽人意。 今天又斥资买了今年春季的真题一试,呃,感觉尽力了,89分,在当年排名23,感觉还不错,没有出现读不懂的题目和没有思路的情况,扣的11分分别是第二题两个…...
Spring Cloud Gateway 实现原理
Spring Cloud Gateway是Spring Cloud生态系统中的一个组件,用于构建基于Spring Boot的微服务架构中的网关服务。它的主要目的是提供一种灵活的方式来路由、过滤和转换HTTP请求,从而允许您构建强大、高性能的微服务应用程序。 以下是Spring Cloud Gatewa…...
嘉泰实业:真实低门槛,安全有保障
在互联网金融大行其道的当下,无论用户是多么的青睐、喜爱这种便捷的理财方式,也一定得把资金安全放在心上。要投就投那些实力背景雄厚,诚信经营的平台,可以选择投资用户基数庞大的理财老品牌,也可以选择发展势头迅猛的…...
spring boot 2.7 -> 3.0升级指南
spring boot提供一个版本迁移指南 2.7 -> 3.0...
MQTT 连接优化指南
🌷🍁 博主猫头虎(🐅🐾)带您 Go to New World✨🍁 🦄 博客首页——🐅🐾猫头虎的博客🎐 🐳 《面试题大全专栏》 🦕 文章图文…...
算法和数据结构学习中的一些小的工具函数
算法和数据结构学习中的一些小的工具函数 作者:Grey 原文地址: 博客园:算法和数据结构学习中的一些小的工具函数 CSDN:算法和数据结构学习中的一些小的工具函数 提取一个数二进制最右侧的 1 比如二进制为:0100 0…...
解决2K/4K高分屏下Vmware等虚拟机下Kail Linux界面显示问题
问题现象 在我们日常使用VirtualBox、Vmware workstation、Hyper-V等虚拟机安装使用Kali系统,在2K/4K高分辨率电脑下Kali系统界面显示太小,包括各种软件及命令终端字体均无法很直观的看出,影响我们的正常测试及使用。 常规处理思路 很多人…...
【校招VIP】java语言考点之双亲委派模型
考点介绍: 双亲委派是校招面试中的高频考点之一。双亲委派机制定义: 当一个类加载器收到了类加载的请求的时候,他不会直接去加载指定的类,而是把这个请求委托给自己的父加载器去加载,只有父加载器无法加载这个类的时候࿰…...
莆田做网站建设/虞城seo代理地址
趁着公司不忙,抓紧充充电,开始可能会写的不好,但是每写一个都是一点进步,哈哈,加油 用js实现选项卡切换 1.获取元素 2.初始状态 3.通过循环清空元素状态 4.点击操作以及对应的内容切换 5.自定义索引(通过HT…...
wordpress中页面伪静态/安卓排名优化
下载地址:网盘下载 Spring Boot是目前Spring技术体系中炙手可热的框架之一,既可用于构建业务复杂的企业应用系统,也可以开发高性能和高吞吐量的互联网应用。Spring Boot框架降低了Spring技术体系的使用门槛,简化了Spring应用的搭建…...
淄博网站建设铭盛信息/男生短期培训就业
实现步骤 使用uTools软件的“内网穿透”插件配置vue项目配置内网穿透插件参数 一、下载uTools软件并安装内网穿透插件,如下图所示: 二、配置vue项目参数 在webpack.dev.conf.js文件下配置相关参数。三、配置内网穿透插件参数,如下图&#x…...
wordpress 微软雅黑/seo网站优化推广教程
首先,电子商务设计师属于软考中级,因此难度也不是特别大。但并不是说就完全没有难度,难度还是有的,像上午题一般把基本知识点掌握了,是没什么问题的,重点就在于下午题会比较难。 接下来我们来剖析一下考试…...
如何做网站的实时画面/美国疫情最新情况
本文首发于InfoQ。 Java 8在Lambda表达式、接口默认方式、新的日期API等方面引入的新特性广受关注,同时在并发编程方面也做出了大量改进。以往的几个Java版本都对java.util.concurrent做了不同程度的增强,比如Java 7的Fork/Join框架,而Java 8…...
wordpress文章关键词插件/免费友情链接平台
#include<iostream> using namespace std;//对""运算符重载,实现两个复数的相加 class Complex {public:Complex() //定义无参构造函数 {real0;imag0;}Complex(double r,double i):real(r),imag(i){}; //定义有参构造函数(构造函数重载&…...