org.springframework.boot
spring-boot-starter-data-elasticsearch
2.0.1.RELEASE
com.querydsl
querydsl-apt
4.2.2
com.querydsl
querydsl-jpa
4.2.2
ma.glasnost.orika
orika-core
1.5.2
相关性排序实现思路原理图:
=============
核心代码实现:
kibana:查询json
{
“function_score” : {
“query” : {
“bool” : {
“must” : [
{
“multi_match” : {
“query” : “产品描述”,
“fields” : [
“conent^1.0”,
“title^1.0”,
“version^1.0”
],
“type” : “best_fields”,
“operator” : “OR”,
“slop” : 0,
“prefix_length” : 0,
“max_expansions” : 50,
“zero_terms_query” : “NONE”,
“auto_generate_synonyms_phrase_query” : true,
“fuzzy_transpositions” : true,
“boost” : 1.0
}
}
],
“filter” : [
{
“terms” : {
“usage_scenarios_type” : [
“1”,
“12”
],
“boost” : 1.0
}
},
{
“terms” : {
“manual_type” : [
“2”,
“1”,
“4”
],
“boost” : 1.0
}
},
{
“terms” : {
“parentId” : [
“17”,
“12”,
“2”
],
“boost” : 1.0
}
}
],
“adjust_pure_negative” : true,
“boost” : 1.0
}
},
“functions” : [
{
“filter” : {
“bool” : {
“should” : [
{
“bool” : {
“must” : [
{
“query_string” : {
“query” : “17”,
“default_field” : “parentId”,
“fields” : [ ],
“type” : “best_fields”,
“default_operator” : “or”,
“max_determinized_states” : 10000,
“enable_position_increments” : true,
“fuzziness” : “AUTO”,
“fuzzy_prefix_length” : 0,
“fuzzy_max_expansions” : 50,
“phrase_slop” : 0,
“escape” : false,
“auto_generate_synonyms_phrase_query” : true,
“fuzzy_transpositions” : true,
“boost” : 29.0
}
}
],
“adjust_pure_negative” : true,
“boost” : 1.0
}
},
{
“bool” : {
“must” : [
{
“query_string” : {
“query” : “2”,
“default_field” : “manual_type”,
“fields” : [ ],
“type” : “best_fields”,
“default_operator” : “or”,
“max_determinized_states” : 10000,
“enable_position_increments” : true,
“fuzziness” : “AUTO”,
“fuzzy_prefix_length” : 0,
“fuzzy_max_expansions” : 50,
“phrase_slop” : 0,
“escape” : false,
“auto_generate_synonyms_phrase_query” : true,
“fuzzy_transpositions” : true,
“boost” : 29.0
}
}
],
“adjust_pure_negative” : true,
“boost” : 1.0
}
},
{
“bool” : {
“must” : [
{
“query_string” : {
“query” : “1”,
“default_field” : “usage_scenarios_type”,
“fields” : [ ],
“type” : “best_fields”,
“default_operator” : “or”,
“max_determinized_states” : 10000,
“enable_position_increments” : true,
“fuzziness” : “AUTO”,
“fuzzy_prefix_length” : 0,
“fuzzy_max_expansions” : 50,
“phrase_slop” : 0,
“escape” : false,
“auto_generate_synonyms_phrase_query” : true,
“fuzzy_transpositions” : true,
“boost” : 29.0
}
}
],
“adjust_pure_negative” : true,
“boost” : 1.0
}
},
{
“bool” : {
“must” : [
{
“query_string” : {
“query” : “12”,
“default_field” : “parentId”,
“fields” : [ ],
“type” : “best_fields”,
“default_operator” : “or”,
“max_determinized_states” : 10000,
“enable_position_increments” : true,
“fuzziness” : “AUTO”,
“fuzzy_prefix_length” : 0,
“fuzzy_max_expansions” : 50,
“phrase_slop” : 0,
“escape” : false,
“auto_generate_synonyms_phrase_query” : true,
“fuzzy_transpositions” : true,
“boost” : 14.0
}
}
],
“adjust_pure_negative” : true,
“boost” : 1.0
}
},
{
“bool” : {
“must” : [
{
“query_string” : {
“query” : “2”,
“default_field” : “manual_type”,
“fields” : [ ],
“type” : “best_fields”,
“default_operator” : “or”,
“max_determinized_states” : 10000,
“enable_position_increments” : true,
“fuzziness” : “AUTO”,
“fuzzy_prefix_length” : 0,
“fuzzy_max_expansions” : 50,
“phrase_slop” : 0,
“escape” : false,
“auto_generate_synonyms_phrase_query” : true,
“fuzzy_transpositions” : true,
“boost” : 14.0
}
}
],
“adjust_pure_negative” : true,
“boost” : 1.0
}
},
{
“bool” : {
“must” : [
{
“query_string” : {
“query” : “1”,
“default_field” : “usage_scenarios_type”,
“fields” : [ ],
“type” : “best_fields”,
“default_operator” : “or”,
“max_determinized_states” : 10000,
“enable_position_increments” : true,
“fuzziness” : “AUTO”,
“fuzzy_prefix_length” : 0,
“fuzzy_max_expansions” : 50,
“phrase_slop” : 0,
“escape” : false,
“auto_generate_synonyms_phrase_query” : true,
“fuzzy_transpositions” : true,
“boost” : 14.0
}
}
],
“adjust_pure_negative” : true,
“boost” : 1.0
}
},
{
“bool” : {
“must” : [
{
“query_string” : {
“query” : “12”,
“default_field” : “parentId”,
“fields” : [ ],
“type” : “best_fields”,
“default_operator” : “or”,
“max_determinized_states” : 10000,
“enable_position_increments” : true,
“fuzziness” : “AUTO”,
“fuzzy_prefix_length” : 0,
“fuzzy_max_expansions” : 50,
“phrase_slop” : 0,
“escape” : false,
“auto_generate_synonyms_phrase_query” : true,
“fuzzy_transpositions” : true,
“boost” : 9.0
}
}
],
“adjust_pure_negative” : true,
“boost” : 1.0
}
},
{
“bool” : {
“must” : [
{
“query_string” : {
“query” : “1”,
“default_field” : “manual_type”,
“fields” : [ ],
“type” : “best_fields”,
“default_operator” : “or”,
“max_determinized_states” : 10000,
“enable_position_increments” : true,
“fuzziness” : “AUTO”,
“fuzzy_prefix_length” : 0,
“fuzzy_max_expansions” : 50,
“phrase_slop” : 0,
“escape” : false,
“auto_generate_synonyms_phrase_query” : true,
“fuzzy_transpositions” : true,
“boost” : 9.0
}
}
],
“adjust_pure_negative” : true,
“boost” : 1.0
}
},
{
“bool” : {
“must” : [
{
“query_string” : {
“query” : “1”,
“default_field” : “usage_scenarios_type”,
“fields” : [ ],
“type” : “best_fields”,
“default_operator” : “or”,
“max_determinized_states” : 10000,
“enable_position_increments” : true,
“fuzziness” : “AUTO”,
“fuzzy_prefix_length” : 0,
“fuzzy_max_expansions” : 50,
“phrase_slop” : 0,
“escape” : false,
“auto_generate_synonyms_phrase_query” : true,
“fuzzy_transpositions” : true,
“boost” : 9.0
}
}
],
“adjust_pure_negative” : true,
“boost” : 1.0
}
}
],
“adjust_pure_negative” : true,
“boost” : 1.0
}
},
“weight” : 9999.0
},
{
“filter” : {
“bool” : {
“should” : [
{
“bool” : {
“must” : [
{
“query_string” : {
“query” : “17”,
“default_field” : “parentId”,
“fields” : [ ],
“type” : “best_fields”,
“default_operator” : “or”,
“max_determinized_states” : 10000,
“enable_position_increments” : true,
“fuzziness” : “AUTO”,
“fuzzy_prefix_length” : 0,
“fuzzy_max_expansions” : 50,
“phrase_slop” : 0,
“escape” : false,
“auto_generate_synonyms_phrase_query” : true,
“fuzzy_transpositions” : true,
“boost” : 29.0
}
}
],
“adjust_pure_negative” : true,
“boost” : 1.0
}
},
{
“bool” : {
“must” : [
{
“query_string” : {
“query” : “2”,
“default_field” : “manual_type”,
“fields” : [ ],
“type” : “best_fields”,
“default_operator” : “or”,
“max_determinized_states” : 10000,
“enable_position_increments” : true,
“fuzziness” : “AUTO”,
“fuzzy_prefix_length” : 0,
“fuzzy_max_expansions” : 50,
“phrase_slop” : 0,
“escape” : false,
“auto_generate_synonyms_phrase_query” : true,
“fuzzy_transpositions” : true,
“boost” : 29.0
}
}
],
“adjust_pure_negative” : true,
“boost” : 1.0
}
},
{
“bool” : {
“must” : [
{
“query_string” : {
“query” : “1”,
“default_field” : “usage_scenarios_type”,
“fields” : [ ],
“type” : “best_fields”,
“default_operator” : “or”,
“max_determinized_states” : 10000,
“enable_position_increments” : true,
“fuzziness” : “AUTO”,
“fuzzy_prefix_length” : 0,
“fuzzy_max_expansions” : 50,
“phrase_slop” : 0,
“escape” : false,
“auto_generate_synonyms_phrase_query” : true,
“fuzzy_transpositions” : true,
“boost” : 29.0
}
}
],
“adjust_pure_negative” : true,
“boost” : 1.0
}
},
{
“bool” : {
“must” : [
{
“query_string” : {
“query” : “12”,
“default_field” : “parentId”,
“fields” : [ ],
“type” : “best_fields”,
“default_operator” : “or”,
“max_determinized_states” : 10000,
“enable_position_increments” : true,
“fuzziness” : “AUTO”,
“fuzzy_prefix_length” : 0,
“fuzzy_max_expansions” : 50,
“phrase_slop” : 0,
“escape” : false,
“auto_generate_synonyms_phrase_query” : true,
“fuzzy_transpositions” : true,
“boost” : 14.0
}
}
],
“adjust_pure_negative” : true,
“boost” : 1.0
}
},
{
“bool” : {
“must” : [
{
“query_string” : {
“query” : “2”,
“default_field” : “manual_type”,
“fields” : [ ],
“type” : “best_fields”,
“default_operator” : “or”,
“max_determinized_states” : 10000,
“enable_position_increments” : true,
“fuzziness” : “AUTO”,
“fuzzy_prefix_length” : 0,
“fuzzy_max_expansions” : 50,
“phrase_slop” : 0,
“escape” : false,
“auto_generate_synonyms_phrase_query” : true,
“fuzzy_transpositions” : true,
“boost” : 14.0
}
}
],
“adjust_pure_negative” : true,
“boost” : 1.0
}
},
{
“bool” : {
“must” : [
{
“query_string” : {
“query” : “1”,
“default_field” : “usage_scenarios_type”,
“fields” : [ ],
“type” : “best_fields”,
“default_operator” : “or”,
“max_determinized_states” : 10000,
“enable_position_increments” : true,
“fuzziness” : “AUTO”,
“fuzzy_prefix_length” : 0,
“fuzzy_max_expansions” : 50,
“phrase_slop” : 0,
“escape” : false,
“auto_generate_synonyms_phrase_query” : true,
“fuzzy_transpositions” : true,
“boost” : 14.0
}
}
],
“adjust_pure_negative” : true,
“boost” : 1.0
}
},
{
“bool” : {
“must” : [
{
“query_string” : {
“query” : “12”,
“default_field” : “parentId”,
“fields” : [ ],
“type” : “best_fields”,
“default_operator” : “or”,
“max_determinized_states” : 10000,
“enable_position_increments” : true,
“fuzziness” : “AUTO”,
“fuzzy_prefix_length” : 0,
“fuzzy_max_expansions” : 50,
“phrase_slop” : 0,
“escape” : false,
“auto_generate_synonyms_phrase_query” : true,
“fuzzy_transpositions” : true,
“boost” : 9.0
}
}
],
“adjust_pure_negative” : true,
“boost” : 1.0
}
},
{
“bool” : {
“must” : [
{
“query_string” : {
“query” : “1”,
“default_field” : “manual_type”,
“fields” : [ ],
“type” : “best_fields”,
“default_operator” : “or”,
“max_determinized_states” : 10000,
“enable_position_increments” : true,
“fuzziness” : “AUTO”,
“fuzzy_prefix_length” : 0,
“fuzzy_max_expansions” : 50,
“phrase_slop” : 0,
“escape” : false,
“auto_generate_synonyms_phrase_query” : true,
“fuzzy_transpositions” : true,
“boost” : 9.0
}
}
],
“adjust_pure_negative” : true,
“boost” : 1.0
}
},
{
“bool” : {
“must” : [
{
“query_string” : {
“query” : “1”,
“default_field” : “usage_scenarios_type”,
“fields” : [ ],
“type” : “best_fields”,
“default_operator” : “or”,
“max_determinized_states” : 10000,
“enable_position_increments” : true,
“fuzziness” : “AUTO”,
“fuzzy_prefix_length” : 0,
“fuzzy_max_expansions” : 50,
“phrase_slop” : 0,
“escape” : false,
“auto_generate_synonyms_phrase_query” : true,
“fuzzy_transpositions” : true,
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数Java工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年Java开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Java开发知识点,真正体系化!
由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新
如果你觉得这些内容对你有帮助,可以添加V获取:vip1024b (备注Java)
总结
面试难免让人焦虑不安。经历过的人都懂的。但是如果你提前预测面试官要问你的问题并想出得体的回答方式,就会容易很多。
此外,都说“面试造火箭,工作拧螺丝”,那对于准备面试的朋友,你只需懂一个字:刷!
给我刷刷刷刷,使劲儿刷刷刷刷刷!今天既是来谈面试的,那就必须得来整点面试真题,这不花了我整28天,做了份“Java一线大厂高岗面试题解析合集:JAVA基础-中级-高级面试+SSM框架+分布式+性能调优+微服务+并发编程+网络+设计模式+数据结构与算法等”
且除了单纯的刷题,也得需准备一本【JAVA进阶核心知识手册】:JVM、JAVA集合、JAVA多线程并发、JAVA基础、Spring 原理、微服务、Netty与RPC、网络、日志、Zookeeper、Kafka、RabbitMQ、Hbase、MongoDB、Cassandra、设计模式、负载均衡、数据库、一致性算法、JAVA算法、数据结构、加密算法、分布式缓存、Hadoop、Spark、Storm、YARN、机器学习、云计算,用来查漏补缺最好不过。文章来源:https://www.toymoban.com/news/detail-855466.html
自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!**
因此收集整理了一份《2024年Java开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
[外链图片转存中…(img-lA7vE2sS-1711789656756)]
[外链图片转存中…(img-cYlAQ8vo-1711789656756)]
[外链图片转存中…(img-Z1KQEZeS-1711789656757)]
[外链图片转存中…(img-bjoAIAZ8-1711789656757)]
[外链图片转存中…(img-qb3VRynT-1711789656758)]
[外链图片转存中…(img-Ghr0GHxC-1711789656758)]
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Java开发知识点,真正体系化!
由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新
如果你觉得这些内容对你有帮助,可以添加V获取:vip1024b (备注Java)
[外链图片转存中…(img-ML8bVRP0-1711789656758)]
总结
面试难免让人焦虑不安。经历过的人都懂的。但是如果你提前预测面试官要问你的问题并想出得体的回答方式,就会容易很多。
此外,都说“面试造火箭,工作拧螺丝”,那对于准备面试的朋友,你只需懂一个字:刷!
给我刷刷刷刷,使劲儿刷刷刷刷刷!今天既是来谈面试的,那就必须得来整点面试真题,这不花了我整28天,做了份“Java一线大厂高岗面试题解析合集:JAVA基础-中级-高级面试+SSM框架+分布式+性能调优+微服务+并发编程+网络+设计模式+数据结构与算法等”
[外链图片转存中…(img-wOKkBFQr-1711789656759)]
且除了单纯的刷题,也得需准备一本【JAVA进阶核心知识手册】:JVM、JAVA集合、JAVA多线程并发、JAVA基础、Spring 原理、微服务、Netty与RPC、网络、日志、Zookeeper、Kafka、RabbitMQ、Hbase、MongoDB、Cassandra、设计模式、负载均衡、数据库、一致性算法、JAVA算法、数据结构、加密算法、分布式缓存、Hadoop、Spark、Storm、YARN、机器学习、云计算,用来查漏补缺最好不过。
[外链图片转存中…(img-Bq6CQMZm-1711789656759)]文章来源地址https://www.toymoban.com/news/detail-855466.html
到了这里,关于Springcloudalibaba整合es!实现相关性排序,集成完代码真香的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!