分享
这次面试我也做了一些总结,确实还有很多要学的东西。相关面试题也做了整理,可以分享给大家,了解一下面试真题,想进大厂的或者想跳槽的小伙伴不妨好好利用时间来学习。学习的脚步一定不能停止!
Spring Cloud实战
Spring Boot实战
面试题整理(性能优化+微服务+并发编程+开源框架+分布式)
org.elasticsearch
elasticsearch
7.3.1
org.elasticsearch.client
elasticsearch-rest-high-level-client
7.3.1
2.编写demo代码
这里由于不是Spring的包,不需要加什么xml配置文件了,直接使用即可,啥都不说了,都在代码里了!仔细阅读下方的注释,我就不在这里多BB了(划重点)
/**
-
查询phoneList
-
@param
-
@return
*/
@RequestMapping(value = “/selPhoneList”, produces = “text/html;charset=UTF-8”)
@ResponseBody
public JSONObject selPhoneList(String jmpt_name, String mobileLocation, String pageSize, String currentPage) {
// 引入client,配置按各自修改
RestHighLevelClient client = new RestHighLevelClient( RestClient.builder( new HttpHost(“127.0.0.1”, “9200”, “http”)));
JSONObject resJSON = new JSONObject();
JSONArray jsonArr = new JSONArray();
int currentPageInt = 0;
int pageSizeInt = 10;
// 提取分页参数
if (jmpt_name == null || “undefined”.equals(jmpt_name)) {
jmpt_name = “”;
}
if (mobileLocation == null || “undefined”.equals(mobileLocation)) {
mobileLocation = “”;
}
if (pageSize != null && !“”.equals(pageSize)) {
pageSizeInt = Integer.parseInt(pageSize);
}
if (currentPage != null && !“”.equals(currentPage)) {
currentPageInt = Integer.parseInt(currentPage) * pageSizeInt;
}
// 查询流程***(重要):子查询对象(QueryBuilder)–>父查询对象(BoolQueryBuilder)–>查询函数构造对象(SearchSourceBuilder)–>请求发起对象(SearchRequest )–>发起请求–>返回结果(SearchResponse)
// 创建父查询对象
BoolQueryBuilder srBuilder = QueryBuilders.boolQuery();
// 创建子查询对象
QueryBuilder jmpt_nameBuilder = null;
QueryBuilder locationBuilder = null;
// 创建查询函数构造对象
SearchSourceBuilder sourceBuilder = new SearchSourceBuilder();
System.out.println(“打印提交的DSL语句:sourceBuilder–:” + sourceBuilder);
// 参数注入到
if (!“”.equals(jmpt_name)){
jmpt_nameBuilder = QueryBuilders.queryStringQuery(jmpt_name).field(“jmpt_name”);// 根据字段平台名称(jmpt_name)进行查询
srBuilder.must(jmpt_nameBuilder);//子查询对象放入父查询对象中
}
if (!“”.equals(mobileLocation)){
locationBuilder = QueryBuilders.queryStringQuery(mobileLocation).field(“provience”);// 根据字段省份(field:provience)进行查询
srBuilder.must(locationBuilder);//子查询对象放入父查询对象中
}
sourceBuilder.query(srBuilder); // 把父查询对象放入函数构造对象中
sourceBuilder.from(currentPageInt); // 参数范围起
sourceBuilder.size(pageSizeInt); // 参数范围始
最后
金三银四到了,送上一个小福利!
心总结学习笔记+最新讲解视频+实战项目源码】](https://bbs.csdn.net/forums/4f45ff00ff254613a03fab5e56a57acb)收录**