ElasticSearch - SpringBoot整合ES:精确值查询 term
文章目录
- 00. 数据准备
- 01. ElasticSearch 结构化搜索是什么?
- 02. ElasticSearch 结构化搜索方式有哪些?
- 03. ElasticSearch 全文搜索方式有哪些?
- 04. ElasticSearch term 查询数字?
- 05. ElasticSearch term 查询会不会计算评分?
- 06. ElasticSearch term 查询为什么会返回一个评分?
- 07. ElasticSearch 字符串类型 text?
- 08. ElasticSearch 字符串类型 keyword?
- 09. ElasticSearch term 查询字符串?
- 10. SpringBoot整合ES实现term查询?
- 11. TermQueryBuilder 源码
00. 数据准备
PUT /my_index
{"mappings": {"properties": {"title": {"type": "keyword"},"content": {"type": "text"},"price":{"type": "long"}}}
}
PUT /my_index/_doc/1
{"title": "金都时尚情侣浪漫主题酒店","content": "山东省青岛市","price": 337
}PUT /my_index/_doc/2
{"title": "金都嘉怡假日酒店","content": "北京市","price": 337
}PUT /my_index/_doc/3
{"title": "金都欣欣24小时酒店","content": "安徽省淮北市","price": 200
}PUT /my_index/_doc/4
{"title": "金都自如酒店","content": "上海直辖市","price": 300
}PUT /my_index/_doc/5
{"title": "自如酒店","content": "江苏省南京市","price": 400
}
01. ElasticSearch 结构化搜索是什么?
ElasticSearch 的结构化搜索是一种基于数据结构的搜索方式,它可以根据数据的字段进行过滤、排序、聚合等操作,从而精确地查询数据。比如日期、时间和数字都是结构化的:它们有精确的格式,我们可以对这些格式进行逻辑操作。比较常见的操作包括比较数字或时间的范围,或判定两个值的大小。文本也可以是结构化的。如彩色笔可以有离散的颜色集合: 红 、 绿、蓝 。电商网站上的商品都有 UPCs 或其他的唯一标识,它们都需要遵从严格规定的、结构化的格式。
在结构化查询中,我们得到的结果总是非是即否,要么存于集合之中,要么存在集合之外。**结构化查询不关心文件的相关度或评分,它简单的对文档包括或排除处理。**这在逻辑上是能说通的,因为一个数字不能比其他数字更适合存于某个相同范围。结果只能是:存于范围之中,抑或反之。同样,对于结构化文本来说,一个值要么相等,要么不等。没有更似这种概念。
02. ElasticSearch 结构化搜索方式有哪些?
ElasticSearch 提供了多种结构化搜索方式,包括:
① 精确值查询:可以通过指定字段名和字段值来精确匹配数据,例如查询所有 age 字段等于 30 的文档。
② 范围查询:可以通过指定字段名和范围条件来查询数据,例如查询所有 age 字段大于等于 30 小于等于 40 的文档。
③ 模糊查询:可以通过指定字段名和模糊匹配条件来查询数据,例如查询所有 name 字段包含 “john” 的文档。
④ 布尔查询:可以通过组合多个查询条件来查询数据,例如查询所有 age 字段大于等于 30 并且 name 字段包含 “john” 的文档。
⑤ 聚合查询:可以对查询结果进行聚合操作,例如对所有 age 字段进行平均值计算。
⑥ 排序查询:可以通过指定字段名和排序方式来对查询结果进行排序,例如按照 age 字段升序排序。
⑦ 分页查询:可以通过指定查询结果的起始位置和数量来进行分页查询,例如查询第 10 到第 20 条数据。
以上是 ElasticSearch 常用的结构化搜索方式,可以根据具体的查询需求选择合适的方式来进行查询。
03. ElasticSearch 全文搜索方式有哪些?
ElasticSearch 提供了多种全文搜索方式,包括:
① 匹配查询:可以通过指定字段名和查询关键词来进行全文匹配查询,例如查询所有包含 “apple” 关键词的文档。
② 多字段查询:可以同时在多个字段中进行全文匹配查询,例如查询所有包含 “apple” 关键词的 title 和 content 字段的文档。
③ 短语匹配查询:可以通过指定字段名和短语关键词来进行短语匹配查询,例如查询所有包含 “apple pie” 短语的文档。
④ 前缀匹配查询:可以通过指定字段名和前缀关键词来进行前缀匹配查询,例如查询所有以 “app” 开头的文档。
⑤ 正则表达式查询:可以通过指定字段名和正则表达式来进行正则匹配查询,例如查询所有 content 字段中包含数字的文档。
⑥ 模糊查询:可以通过指定字段名和模糊匹配条件来进行模糊匹配查询,例如查询所有 content 字段中包含 “appl” 的文档。
⑦ 搜索建议:可以根据用户输入的关键词提供搜索建议,例如输入 “app” 后自动提示 “apple”。
以上是 ElasticSearch 常用的全文搜索方式,可以根据具体的查询需求选择合适的方式来进行查询。
04. ElasticSearch term 查询数字?
在 ElasticSearch 中,term 查询是一种用于查找指定字段中包含指定值的文档的查询方式。term 查询是一种精确匹配查询,它会精确地匹配指定字段中的值,不会对查询关键词进行分词处理。term 查询可以用它处理数字、布尔值、日期以及字符串。
当进行精确值查找时, 我们会使用过滤器(filters),过滤器很重要,因为它们执行速度非常快,不会计算相关度(直接跳过了整个评分阶段)而且很容易被缓存。
GET /my_index/_search
{"query": {"term": {"price": {"value": "337"}}}
}
{"took" : 1,"timed_out" : false,"_shards" : {"total" : 1,"successful" : 1,"skipped" : 0,"failed" : 0},"hits" : {"total" : {"value" : 2,"relation" : "eq"},"max_score" : 1.0,"hits" : [{"_index" : "my_index","_type" : "_doc","_id" : "1","_score" : 1.0,"_source" : {"title" : "金都时尚情侣浪漫主题酒店","content" : "山东省青岛市","price" : 337}},{"_index" : "my_index","_type" : "_doc","_id" : "2","_score" : 1.0,"_source" : {"title" : "金都嘉怡假日酒店","content" : "北京市","price" : 337}}]}
}
上述查询语句表示在 my_index 索引中查找 price字段中包含值为 “337” 的文档。如果查询成功,ElasticSearch 将返回所有符合条件的文档。
需要注意的是,term 查询是一种精确匹配查询,它不会对查询关键词进行分词处理。因此,如果查询关键词包含多个单词,term 查询可能无法匹配到任何文档。在这种情况下,可以考虑使用 match 查询或者 phrase 查询等其他查询方式。
GET /my_index/_search
{"query": {"term": {"title": {"value": "金都时尚"}}}
}
{"took" : 0,"timed_out" : false,"_shards" : {"total" : 1,"successful" : 1,"skipped" : 0,"failed" : 0},"hits" : {"total" : {"value" : 0,"relation" : "eq"},"max_score" : null,"hits" : [ ]}
}
05. ElasticSearch term 查询会不会计算评分?
ElasticSearch 的 term 查询不会计算评分,它是一种精确匹配查询,只会返回精确匹配的文档,不会对文档进行评分排序。
在 ElasticSearch 中,查询语句可以分为两种类型:查询(query)和过滤器(filter)。查询语句会对文档进行评分排序,而过滤器则不会对文档进行评分排序。term 查询属于过滤器类型的查询语句,它只会返回精确匹配的文档,不会对文档进行评分排序。
因此,如果需要对文档进行评分排序,可以使用查询语句(如 match 查询、bool 查询等),如果只需要返回精确匹配的文档,可以使用过滤器语句(如 term 查询、range 查询等)。
06. ElasticSearch term 查询为什么会返回一个评分?
在 ElasticSearch 中,虽然 term 查询是一种过滤器类型的查询语句,不会对文档进行评分排序,但是在某些情况下,term 查询仍然会返回一个评分。这是因为在 ElasticSearch 中,每个文档都有一个 _score 属性,表示该文档与查询条件的相关性得分。即使是过滤器类型的查询语句,ElasticSearch 仍然会计算每个文档与查询条件的相关性得分,并将其存储在 _score 属性中。
在 term 查询中,如果查询条件只匹配了一个文档,那么该文档的 _score 属性值将为 1.0,表示该文档与查询条件的相关性得分为最高。如果查询条件匹配了多个文档,那么所有匹配的文档的 _score 属性值都将为 1.0,表示它们与查询条件的相关性得分相同。
虽然 term 查询会返回一个评分,但是该评分并不会影响查询结果的排序。在 term 查询中,所有匹配的文档的 _score 属性值都相同,因此它们的排序顺序将根据其他因素(如文档的创建时间、更新时间等)来确定。
GET /my_index/_search
{"query": {"term": {"price": {"value": "337"}}}
}
{"took" : 1,"timed_out" : false,"_shards" : {"total" : 1,"successful" : 1,"skipped" : 0,"failed" : 0},"hits" : {"total" : {"value" : 2,"relation" : "eq"},"max_score" : 1.0,"hits" : [{"_index" : "my_index","_type" : "_doc","_id" : "1","_score" : 1.0,"_source" : {"title" : "金都时尚情侣浪漫主题酒店","content" : "青岛","price" : 337}},{"_index" : "my_index","_type" : "_doc","_id" : "2","_score" : 1.0,"_source" : {"title" : "金都嘉怡假日酒店","content" : "北京","price" : 337}}]}
}
07. ElasticSearch 字符串类型 text?
在 ElasticSearch 中,字符串类型 text 是一种用于存储文本的数据类型。text 类型会对文本进行分词处理,将文本分成一个个词条,然后将这些词条存储到倒排索引中,以便进行全文搜索。
由于text 类型会对文本进行分词处理,因此在进行查询时,需要使用全文搜索查询方式(如 match 查询、multi_match 查询等),而不能使用精确匹配查询方式(如 term 查询、terms 查询等)。
例如:根据我们构造的数据,content 字段为 text 类型,且数据库中存在数据:
PUT /my_index/_doc/1
{"title": "金都时尚情侣浪漫主题酒店","content": "山东省青岛市","price": 337
}
① 使用精确匹配 term 查询,查询结果为空:
GET /my_index/_search
{"query": {"term": {"content": {"value": "山东省青岛市"}}}
}
{"took" : 1,"timed_out" : false,"_shards" : {"total" : 1,"successful" : 1,"skipped" : 0,"failed" : 0},"hits" : {"total" : {"value" : 0,"relation" : "eq"},"max_score" : null,"hits" : [ ]}
}
② 使用全文检索 match查询,查询结果为:
GET /my_index/_search
{"query": {"match": {"content": "山东省青岛市"}}
}
{"took" : 4,"timed_out" : false,"_shards" : {"total" : 1,"successful" : 1,"skipped" : 0,"failed" : 0},"hits" : {"total" : {"value" : 5,"relation" : "eq"},"max_score" : 5.805786,"hits" : [{"_index" : "my_index","_type" : "_doc","_id" : "1","_score" : 5.805786,"_source" : {"title" : "金都时尚情侣浪漫主题酒店","content" : "山东省青岛市","price" : 337}},{"_index" : "my_index","_type" : "_doc","_id" : "3","_score" : 0.5889417,"_source" : {"title" : "金都欣欣24小时酒店","content" : "安徽省淮北市","price" : 200}},{"_index" : "my_index","_type" : "_doc","_id" : "5","_score" : 0.5889417,"_source" : {"title" : "自如酒店","content" : "江苏省南京市","price" : 400}},{"_index" : "my_index","_type" : "_doc","_id" : "2","_score" : 0.10522305,"_source" : {"title" : "金都嘉怡假日酒店","content" : "北京市","price" : 337}},{"_index" : "my_index","_type" : "_doc","_id" : "4","_score" : 0.08840232,"_source" : {"title" : "金都自如酒店","content" : "上海直辖市","price" : 300}}]}
}
因此,由于 text 类型会对文本进行分词处理,因此在进行查询时,需要使用全文搜索查询方式(如 match 查询、multi_match 查询等),而不能使用精确匹配查询方式(如 term 查询、terms 查询等)。
08. ElasticSearch 字符串类型 keyword?
在 ElasticSearch 中,字符串类型 keyword 是一种用于存储精确值的数据类型。keyword 类型不会对文本进行分词处理,而是将整个文本作为一个词条进行索引,以便进行精确匹配查询。
由于 keyword 类型不会对文本进行分词处理,因此在进行查询时,需要使用精确匹配查询方式(如 term 查询、terms 查询等),而不能使用全文搜索查询方式(如 match 查询、multi_match 查询等)。
例如:根据我们构造的数据,title 字段为 keyword 类型,且数据库中存在数据:
PUT /my_index/_doc/1
{"title": "金都时尚情侣浪漫主题酒店","content": "山东省青岛市","price": 337
}
使用精确匹配 term 查询,查询结果为:
GET /my_index/_search
{"query": {"term": {"title": {"value": "金都时尚情侣浪漫主题酒店"}}}
}
{"took" : 0,"timed_out" : false,"_shards" : {"total" : 1,"successful" : 1,"skipped" : 0,"failed" : 0},"hits" : {"total" : {"value" : 1,"relation" : "eq"},"max_score" : 1.3862944,"hits" : [{"_index" : "my_index","_type" : "_doc","_id" : "1","_score" : 1.3862944,"_source" : {"title" : "金都时尚情侣浪漫主题酒店","content" : "山东省青岛市","price" : 337}}]}
}
09. ElasticSearch term 查询字符串?
在 ElasticSearch 中,term 查询是一种用于精确匹配查询的查询方式,可以用于查询 keyword 类型的文本。term 查询会将查询关键词作为一个整体进行匹配,只有当查询关键词与文档中的词条完全匹配时,才会返回匹配的文档。
以下是一个使用 term 查询进行查询的示例:
GET /my_index/_search
{"query": {"term": {"title": {"value": "金都时尚情侣浪漫主题酒店"}}}
}
使用 term 查询对名为 “my_index” 的索引中的 “title” 字段进行查询,查询关键词为 “John Doe”。由于 “title” 字段的类型为 keyword,因此 term 查询会将查询关键词作为一个整体进行匹配,只有当文档中的 “title” 字段的值与查询关键词完全匹配时,才会返回匹配的文档。
由于 term 查询是一种精确匹配查询方式,因此在进行查询时,需要确保查询关键词与文档中的词条完全匹配,否则可能会导致查询结果不准确。
{"took" : 1,"timed_out" : false,"_shards" : {"total" : 1,"successful" : 1,"skipped" : 0,"failed" : 0},"hits" : {"total" : {"value" : 1,"relation" : "eq"},"max_score" : 1.3862944,"hits" : [{"_index" : "my_index","_type" : "_doc","_id" : "1","_score" : 1.3862944,"_source" : {"title" : "金都时尚情侣浪漫主题酒店","content" : "山东省青岛市","price" : 337}}]}
}
10. SpringBoot整合ES实现term查询?
GET /my_index/_search
{"query": {"term": {"price": {"value": "337"}}}
}
@Slf4j
@Service
public class ElasticSearchImpl {@Autowiredprivate RestHighLevelClient restHighLevelClient;public void searchUser() throws IOException {SearchSourceBuilder searchSourceBuilder = new SearchSourceBuilder();TermQueryBuilder termQueryBuilder = new TermQueryBuilder("price",337);searchSourceBuilder.query(termQueryBuilder);SearchRequest searchRequest = new SearchRequest(new String[]{"my_index"},searchSourceBuilder);SearchResponse searchResponse = restHighLevelClient.search(searchRequest, RequestOptions.DEFAULT);System.out.println(searchResponse);}
}
11. TermQueryBuilder 源码
public class TermQueryBuilder extends BaseTermQueryBuilder<TermQueryBuilder> {public static final String NAME = "term";private static final ParseField TERM_FIELD = new ParseField("term");private static final ParseField VALUE_FIELD = new ParseField("value");/** @see BaseTermQueryBuilder#BaseTermQueryBuilder(String, String) */public TermQueryBuilder(String fieldName, String value) {super(fieldName, (Object) value);}/** @see BaseTermQueryBuilder#BaseTermQueryBuilder(String, int) */public TermQueryBuilder(String fieldName, int value) {super(fieldName, (Object) value);}/** @see BaseTermQueryBuilder#BaseTermQueryBuilder(String, long) */public TermQueryBuilder(String fieldName, long value) {super(fieldName, (Object) value);}/** @see BaseTermQueryBuilder#BaseTermQueryBuilder(String, float) */public TermQueryBuilder(String fieldName, float value) {super(fieldName, (Object) value);}/** @see BaseTermQueryBuilder#BaseTermQueryBuilder(String, double) */public TermQueryBuilder(String fieldName, double value) {super(fieldName, (Object) value);}/** @see BaseTermQueryBuilder#BaseTermQueryBuilder(String, boolean) */public TermQueryBuilder(String fieldName, boolean value) {super(fieldName, (Object) value);}/** @see BaseTermQueryBuilder#BaseTermQueryBuilder(String, Object) */public TermQueryBuilder(String fieldName, Object value) {super(fieldName, value);}
}
相关文章:
![](https://www.ngui.cc/images/no-images.jpg)
ElasticSearch - SpringBoot整合ES:精确值查询 term
文章目录00. 数据准备01. ElasticSearch 结构化搜索是什么?02. ElasticSearch 结构化搜索方式有哪些?03. ElasticSearch 全文搜索方式有哪些?04. ElasticSearch term 查询数字?05. ElasticSearch term 查询会不会计算评分…...
![](https://img-blog.csdnimg.cn/9df6f08fd0a14a68adb3aff81b413aff.png#pic_center)
【GPT4】微软对 GPT-4 的全面测试报告(2)
欢迎关注【youcans的GPT学习笔记】原创作品,火热更新中 微软对 GPT-4 的全面测试报告(1) 微软对 GPT-4 的全面测试报告(2) 【GPT4】微软对 GPT-4 的全面测试报告(2)2. 多模态与跨学科的组合&…...
![](https://img-blog.csdnimg.cn/d2dbbc72515a4a48ae84336cb3e9721c.png)
Docker打包exe运行环境
Docker打包exe运行环境 本文运行环境 Window安装Docker环境 修改配置 点击Switch to Window containers OS/Arch 变为 windows/amd64 拉取window镜像 访问Nano Server找到需要的Window版本拉取镜像 运行镜像测试 进入到容器内部 其他内容就自由发挥啦~~ 参考内容…...
![](https://img-blog.csdnimg.cn/905723ce5608437e94bbec0a88a1e067.jpeg)
springboot+vue田径运动会成绩管理系统java
springboot是基于spring的快速开发框架, 相比于原生的spring而言, 它通过大量的java config来避免了大量的xml文件, 只需要简单的生成器便能生成一个可以运行的javaweb项目, 是目前最火热的java开发框架 田径运动会成绩管理系统,主要的模块包括首页、个人中心、赛…...
![](https://img-blog.csdnimg.cn/b89f3c9d464548389efc67e43f09ce19.png)
我能“C”——详解操作符(上)
目录 1.操作符的分类: 2. 算数操作符 3.移位操作符 4.位操作符 5.赋值操作符 6.单目操作符 7.关系操作符 8.逻辑操作符 THE END 1.操作符的分类: 操作符也叫运算符 算术操作符 移位操作符 位操作符 赋值操作符 单目操作符 关系操作符 逻辑…...
![](https://img-blog.csdnimg.cn/img_convert/4bf696b4b028a1236df0d842cd3612fe.png)
第一章Vue基础
文章目录前端发展史前端三要素JavaScript框架UI框架JavaScript构建工具三端合一什么是VueVue的好处什么是MVVM为什么要使用MVVM环境配置第一个Vue程序声明式渲染模板语法绑定样式数据绑定为什么要实现数据的双向绑定el与data的两种写法条件渲染事件驱动事件的基本用法事件修饰符…...
![](https://img-blog.csdnimg.cn/7e5f466f2c0447af9dfcf8deaf26bf0a.png)
【虚幻引擎UE】UE5核心效率插件推荐
一、UnrealEditorPythonScripts (基于UE5 的Python支持插件) 支持Python语言基于UE5进行开发 GIT地址:https://github.com/mamoniem/UnrealEditorPythonScripts 二、Haxe-UnrealEngine5 (基于UE5 的Haxe支持插件) Haxe是一门新兴的开源编程语言,是一种开源的编程语言。…...
![](https://img-blog.csdnimg.cn/dcd57b90d92e4d99bf0ef0b7daae5f0a.jpeg#pic_center)
记录丨阿里云校招生的成长经历
为了帮助大家更好地了解阿里云云原生应用平台团队同学的成长路径,我们采访了6位各个时间点加入阿里云的学长学姐们,希望他们的经历可以帮助到大家。 经历分享 钰诚丨2022年加入阿里云,校招 大家好,我叫钰诚,目前刚来…...
![](https://img-blog.csdnimg.cn/img_convert/2fe2e77646236870e46973c53de7ee08.png)
蓝桥杯第14天(Python版)
并查集的使用# 并查集模板 N400 fa[] def init(): # 初始化,默认自身为根接点for i in range(N):fa.append(i)def merge(x,y): # 发现可以合并,默认选x的根节点为根接点fa[find(x)]find(y)def find(x): # 相等就是根结点,不然就递归查找根…...
![](https://img-blog.csdnimg.cn/53ff54030e04470397939670ac88b903.png)
双指针常用方法
1.双指针介绍 双指针是解题时一种常见的思路,一般有两种用法。 1)两个指针反方向,分别从数组开头和结尾开始移动,例如对有序数组的搜索。 2)两个指针同方向移动,例如快慢指针,都是从数组开头…...
![](https://img-blog.csdnimg.cn/019a0e377141460fa51fee0cec3a4876.png)
人工智能大模型之ChatGPT原理解析
前言 近几个月ChatGPT爆火出圈,一路狂飙;它功能十分强大,不仅能回答各种各样的问题,还可以信写作,给程序找bug…我经过一段时间的深度使用后,十分汗颜,"智障对话"体验相比,…...
![](https://www.ngui.cc/images/no-images.jpg)
傅里叶谱方法-傅里叶谱方法的原理、快速傅里叶变换及其Matlab程序实现
第 3 章 傅里叶谱方法 本章介绍的求解偏微分方程(组)的方法都包含着周期性边界条件, 尽管周期性边界条件不属于数学物理方法中常见的传统三类边界条件, 但它并不脱离实际。某些科学问题的研究重点不受边界的影响, 如孤子之间的相互作用 (非线性薛定谔方程或 K d V \mathrm{…...
![](https://img-blog.csdnimg.cn/img_convert/47e3e7f58664eeecb27e096ca0e5b76b.jpeg)
11万字数字政府智慧政务大数据建设平台(大数据底座、数据治理)
本资料来源公开网络,仅供个人学习,请勿商用,如有侵权请联系删除。部分资料内容: 一.1.1 数据采集子系统 数据采集需要实现对全区各委办单位的数据采集功能,包括离线采集、准实时采集和实时采集的采集方式,根…...
![](https://img-blog.csdnimg.cn/60fd9e74bae64a7cb7c477d097921bd8.png)
Node.js学习笔记——Node.js模块化
一、介绍 1.1.什么是模块化与模板? 将一个复杂的程序文件依据一定规则(规范)拆分成多个文件的过程称之为模块化。 其中拆分出的每个文件就是一个模块,模块的内部数据是私有的,不过模块可以暴露内部数据以便其他模块…...
![](https://img-blog.csdnimg.cn/cdbf3eff4fdf40269d0749f0ac50f529.png)
【洛谷刷题】蓝桥杯专题突破-广度优先搜索-bfs(12)
目录 写在前面: 题目:P1746 离开中山路 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) 题目描述: 输入格式: 输出格式: 输入样例: 输出样例: 解题思路: 代码: …...
![](https://img-blog.csdnimg.cn/6de96e95c7ef4a59ab9a286c86605a39.png)
【数据结构】堆(堆的实现 堆向下调整算法 堆的创建 堆的插入 堆的删除 堆的代码实现 堆的应用)
文章目录堆的实现堆向下调整算法堆的创建堆的插入堆的删除堆的代码实现堆的应用堆的实现 堆是属于操作系统进程地址空间内存区域的划分。 我们下面实现数据结构中的堆。 堆是一个完全二叉树:分为小根堆和大根堆。 小根堆:任何一个节点的值都<孩子的…...
![](https://img-blog.csdnimg.cn/img_convert/a95283eb933aa74e8afd4d977f9fbf2c.png)
JDBC数据库驱动的下载与安装与连接
目录 JDBC数据库驱动下载 Intellij IDEA安装JDBC驱动 在使用 JDBC 之前,需要下载相应的 JDBC 驱动程序,该驱动程序应该与你使用的数据库的版本相对应。可以在数据库官网上找到相应的 JDBC 驱动程序。 JDBC数据库驱动下载 点击官方链接 MySQL :: MySQ…...
![](https://img-blog.csdnimg.cn/img_convert/81e5ca59d6636cf11a30ccde2b39373a.jpeg)
如何更改 PDF 背景颜色?
PDF 是用于简洁演示的文件格式,许多员工都参考它来演示文件。如果您想要 PDF 文本的最佳对比度方案,我们建议您更改PDF 背景颜色。您甚至可以更改 PDF 颜色的文本,但它不会有太大吸引力,而是尝试使用 PDF 背景更改器应用程序。如果…...
![](https://www.ngui.cc/images/no-images.jpg)
room数据库使用以及增加表的使用
依赖 "androidx.room:room-runtime:2.2.6" "androidx.room:room-compiler:2.2.6" 1.实体类 实体类需要保存到数据库的新类用Entity注解表示 tableName是数据库中表的名字,my_advert可以根据自己需要自定义 PrimaryKey,NonNull主键…...
![](https://img-blog.csdnimg.cn/img_convert/c5cd636d58dd8636bf6bcf37477c913b.png)
WiFi-交互过程分析
目录 1.802.11 标准简介 2.802.11 协议格式 2.1管理帧协议格式 2.1.1(Beacon (信标) 帧) 2.1.2(Probe Request (探测请求) 帧) 2.1.3(Probe Response (探测响应) 帧) 2.1.4(ATIM 帧) 2.1.5(Disassociation (解除关联) 与 Deauthentication (解除认证) 帧) 2.1.6(Assoc…...
![](https://img-blog.csdnimg.cn/f1672c93547b48b5b2c23e259f28ad71.png)
基于ZYNQ+linux+xenomai 的多轴运动控制平台关键技术研发-测试系统搭建(四)
本章搭建实验测试平台,对多轴运动控制平台的硬件功能和系统任务通信功能 进行测试。通过测试结果,进行平台硬件设计正确性验证和系统实时处理与同步控制 的功能与性能验证。 5.1 测试平台搭建 多轴运动控制系统的测试平台搭建如图 5.1 所示。测试平台由安…...
![](https://img-blog.csdnimg.cn/b01a55a1349d41ea8630a10fe59d089d.png)
初识操作系统
目录 1.操作系统是什么 2.为什么要有操作系统 3.操作系统的相关关系 1.驱动程序 2.系统调用接口 3.用户调用接口 4.用户程序 4.用具体的例子理解操作系统 1.操作系统是什么 (1)操作系统是一组管理计算机硬件与软件资源的计算机软件程序 。 (…...
![](https://img-blog.csdnimg.cn/a3a12516b5474953b87a0cc231b145eb.png)
#详细介绍!!!线程池
本篇详细: 1.介绍了什么是线程池 2.使用线程池有什么好处 3.线程池的工作流程 4.线程池的各个参数介绍 5.如何编写Java代码来创建线程池 6.使用线程池的注意事项 目录 一:什么是线程池 二:为什么使用线程池来管理线程 三:线程池…...
![](https://img-blog.csdnimg.cn/eeeea0cb7656447bb942a7fc8bec8463.png)
【嵌入式Linux学习笔记】基于Linux官方库的标准外设驱动
对于标准的外设如LED,KEY,PWM等,以及标准通信协议,Linux都自带有标准的驱动库,不需要我们自行编写,只需要配置好相应的GPIO属性和电气属性,即可匹配相应的驱动,在应用程序中直接使用…...
![](https://img-blog.csdnimg.cn/img_convert/cbc80650a21b4eb8bb4f4775c41c4c0e.png)
网络爬虫抓包工具
📚介绍:Charles是著名的抓包工具🐂,可以抓取移动端与pc端网络访问🕷的所有数据。我们将使用它抓取我们与小程序交互的所有信息。🎇我们可以百度搜索Charles官网下载适用于自己系统的Charles安装包…...
蓝桥杯倒计时 | 倒计时17天
作者🕵️♂️:让机器理解语言か 专栏🎇:蓝桥杯倒计时冲刺 描述🎨:蓝桥杯冲刺阶段,一定要沉住气,一步一个脚印,胜利就在前方! 寄语💓:…...
![](https://img-blog.csdnimg.cn/097ee54f4e284d6e8ca678eb8d357ee0.png)
【Spring Cloud Alibaba】7.Sentinel熔断器仪表盘监控
文章目录简介什么是 Sentinel控制台获取源码方式下载jar包方式启动访问服务配置项目,启用Sentinel完整配置测试简介 接下来我们通过Sentinel控制台来实现对服务消费者提供的熔断机制进行监控和控制,本操作先要完成之前的步骤,详情请参照【Sp…...
![](https://img-blog.csdnimg.cn/96ee384ed75b483ca3ce6629b6d5c33b.png)
个人博客系统项目测试报告
项目背景介绍 背景:当在学习一项技能的时候,我们总会习惯通过博客来记录所学的知识点,方便后期遗忘时随时查看和快速复习。本次开发的Web网站程序便是为了更加轻量和方便地记录自己的学习笔记 概述:一个Web网站程序,…...
![](https://img-blog.csdnimg.cn/85dd7fd8275b421a8b6118280fb85c11.png)
flutter安装自用笔记
参照文章: 开发环境搭建 Flutter环境配置步骤: 1.系统配置要求 2.Java环境 3.Flutter SDK 4.Android 开发环境一、系统配置要求 操作系统:Windows 7 SP1 或更高的版本(基于 x86-64 的 64 位操作系统) 磁盘空间&…...
![](https://img-blog.csdnimg.cn/5ea33350bea84024bacdd0eedbb0cb14.png)
tomcat线程池以及在SpringBoot中的启动过程
tomcat两大组件:连接器Connector,容器Container tomcat线程池 Tomcat线程池扩展了ThreadPoolExecutor,行为稍有不同 重写了ThreadPoolExecutor的execute方法 如果总线程数达到maximumPoolSize,不会立刻抛RejectedExecutionExcept…...
![](/images/no-images.jpg)
做的比较炫的网站/自己怎么做网页推广
三、佳能80D拍摄体验1、佳能80D基础测试佳能80D的传感器升级了,输出从原来70D的2020万像素升级到了2420万,ISO的峰值提升到了25600。不过按照像素级别来看,仍属于2000万级别,所以多出来的420万像素并没有扩大多少用途,…...
地方信息网站怎么做/2023第二波疫情已经到来了
转自:http://blog.sina.com.cn/u/48932504010005t9 PowerDesigner中,但修改了某个字段的name,其code也跟着修改,这个问题很讨厌,因为一般来说,name是中文的,code是字段名。 解决方法如下&#x…...
![](/images/no-images.jpg)
深圳网站建设联雅网络/郑州seo外包平台
【项目背景】 近年来,信息技术的飞速发展使人们获取、交流和处理信息的手段发生了巨大的变化,随着信息时代的到来,信息化发展也为公安工作带来了新的挑战和机遇。 随着全国电子政务进程的推进,国家提出了以“公安信息化工作”为核…...
![](https://img2018.cnblogs.com/blog/1102569/201811/1102569-20181121153039242-767639057.png)
德阳住房和城乡建设厅网站/qq群推广方法
IOS的逆向签名方法 1.将.ipa文件解压->Payload->右击.app文件,显示包内容->找到embedded.mobileprovision文件->将其拷贝出来,以便后面使用2.若没有安装homebrew,ruby,sign,则先依次安装3.homebrew的安装方式:curl -LsSf http://…...
![](/images/no-images.jpg)
电影网站建设基本流程/营销思路八大要点
ftp自动验证登录及自动传输文件在我们使用FTP 是都是需要输入用户名和密码进行验证登录,那么有没有不需要输入用户名密码的方法呢,下面请跟随我一起来见证!1、 配置本地用户认证的vsftpd服务:[rootlocalhost ~]# useradd stlong #…...
![](/images/no-images.jpg)
做外链网站有哪些/厦门网络推广
Dmol3概述目录3• Dmol 概述• 密度泛函理论原理概述3Dmol3指导 • Dmol 算法特色(Ver :1.00) • 算例1——结构优化陆春海 • 算例2——过渡态搜索• 算例3——性质计算1luchhi126.comQQ: 331428972 • 算例4——性质计算22010.5.253Dmol 概述• 密度泛函(DFT )量子…...