当前位置: 首页 > wzjs >正文

做网站引用别人的图片有域名怎么发布网站吗

做网站引用别人的图片,有域名怎么发布网站吗,营销型网站建设和平台建设,seo高手培训es 的 HighLevelClient存在es源代码的引用,结合springboot使用时,会存在es版本的冲突,这里记录下解决冲突和使用方式(es已经不建议使用这个了)。 注意es服务端的版本需要与client的版本对齐,否则返回数据可…

es 的 HighLevelClient存在es源代码的引用,结合springboot使用时,会存在es版本的冲突,这里记录下解决冲突和使用方式(es已经不建议使用这个了)。

注意es服务端的版本需要与client的版本对齐,否则返回数据可能会解析失败!!!

文档地址:Java High Level REST Client | Java REST Client [7.17] | Elastic

1、首先创建个java springboot项目

源码地址:https://github.com/a66245753/es-7-high-level-client.git

pom依赖文件如下,在 dependencyManagement 里解决springboot引起的版本冲突-

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>2.6.4</version><relativePath/> <!-- lookup parent from repository --></parent><groupId>com.david</groupId><artifactId>es-7-high-level-client</artifactId><version>1.0-SNAPSHOT</version><packaging>jar</packaging><name>es-7-high-level-client</name><properties><project.build.sourceEncoding>UTF-8</project.build.sourceEncoding><elastic.version>7.17.28</elastic.version></properties><dependencyManagement><dependencies><!--规定版本,解决springboot引起的版本冲突--><dependency><groupId>org.elasticsearch.client</groupId><artifactId>elasticsearch-rest-client</artifactId><version>${elastic.version}</version></dependency><dependency><groupId>org.elasticsearch.client</groupId><artifactId>elasticsearch-rest-high-level-client</artifactId><version>${elastic.version}</version></dependency><dependency><groupId>org.elasticsearch</groupId><artifactId>elasticsearch</artifactId><version>${elastic.version}</version></dependency></dependencies></dependencyManagement><dependencies><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-actuator</artifactId></dependency><dependency><groupId>org.elasticsearch.client</groupId><artifactId>elasticsearch-rest-high-level-client</artifactId></dependency><dependency><groupId>com.baomidou</groupId><artifactId>mybatis-plus-boot-starter</artifactId><version>3.4.1</version></dependency><dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><scope>runtime</scope></dependency><!-- Lombok 依赖 --><dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId><version>1.18.22</version><scope>provided</scope></dependency></dependencies>
</project>

2、配置es client为java bean

@Configuration
public class EsClientConfig {@Beanpublic RestHighLevelClient restHighLevelClient(){return new RestHighLevelClient(RestClient.builder(new HttpHost("localhost", 9200, "http")));}
}

2.1 es id查询数据

/*** id查询** @return* @throws IOException*/@PostMapping("/get")public ResponseEntity<Object> get() throws IOException {GetRequest getRequest = new GetRequest("ssp_ad_union_log_202403");getRequest.id("fcBZZZUBJ3krEJ13KbOG");GetResponse response = restHighLevelClient.get(getRequest, RequestOptions.DEFAULT);return new ResponseEntity<>(response.getSourceAsMap(), HttpStatus.OK);}

2.2 es 多个id查询数据

/*** ids查询** @return* @throws IOException*/@PostMapping("/getBatch")public ResponseEntity<Object> getBatch() throws IOException {MultiGetRequest multiGetRequest = new MultiGetRequest();multiGetRequest.add("ssp_ad_union_log_202403","fcBZZZUBJ3krEJ13KbOG");multiGetRequest.add("ssp_ad_union_log_202403","VsBZZZUBJ3krEJ13KbOG");MultiGetResponse multiGetItemResponses = restHighLevelClient.multiGet(multiGetRequest, RequestOptions.DEFAULT);return new ResponseEntity<>(multiGetItemResponses.getResponses(), HttpStatus.OK);}

2.3 search 分页

/*** 分页查询** @param request* @return* @throws IOException*/@PostMapping("/search")public ResponseEntity<EsSearchResult> search(@RequestBody EsSearchRequest request) throws IOException {SearchRequest searchRequest = new SearchRequest(request.getIndex());// 构建搜索请求SearchSourceBuilder sourceBuilder = new SearchSourceBuilder();sourceBuilder.trackTotalHits(true);sourceBuilder.from((request.getPageIndex() - 1) * request.getPageSize());sourceBuilder.size(request.getPageSize());searchRequest.source(sourceBuilder);BoolQueryBuilder queryBuilder = QueryBuilders.boolQuery();if (request.getEqualsParams() != null && !request.getEqualsParams().isEmpty()) {for (Map.Entry<String, Object> entry : request.getEqualsParams().entrySet()) {queryBuilder.filter(QueryBuilders.termQuery(entry.getKey(), entry.getValue()));}}if (request.getLikeParams() != null && !request.getLikeParams().isEmpty()) {for (Map.Entry<String, String> entry : request.getLikeParams().entrySet()) {queryBuilder.must(QueryBuilders.matchQuery(entry.getKey(), entry.getValue()));}}if (request.getRangeParams() != null && !request.getRangeParams().isEmpty()) {for (EsRangeParams rangeParam : request.getRangeParams()) {RangeQueryBuilder rangeQuery = QueryBuilders.rangeQuery(rangeParam.getField());if (rangeParam.getGte() != null) {rangeQuery.gte(rangeParam.getGte());}if (rangeParam.getLte() != null) {rangeQuery.lte(rangeParam.getLte());}queryBuilder.filter(rangeQuery);}}sourceBuilder.query(queryBuilder);// 打印查询语句,可以放到kibana中执行并分析性能System.out.println(searchRequest.source().toString());// 执行搜索SearchResponse searchResponse = restHighLevelClient.search(searchRequest, RequestOptions.DEFAULT);EsSearchResult result = new EsSearchResult();result.setPageIndex(request.getPageIndex());result.setPageSize(request.getPageSize());result.setTotal(searchResponse.getHits().getTotalHits().value);result.setList(Arrays.stream(searchResponse.getHits().getHits()).map(SearchHit::getSourceAsMap).collect(Collectors.toList()));return new ResponseEntity<>(result, HttpStatus.OK);}

2.4 aggs 聚合统计

/*** 聚合统计** @param request* @return* @throws IOException*/@PostMapping("/aggs")public ResponseEntity<List<Object>> aggs(@RequestBody EsSearchRequest request) throws IOException {// 创建 SearchSourceBuilder 实例SearchSourceBuilder searchSourceBuilder = new SearchSourceBuilder();// 设置 track_total_hitssearchSourceBuilder.trackTotalHits(true);// 设置分页参数searchSourceBuilder.from(0);searchSourceBuilder.size(1);// 构建 bool 查询BoolQueryBuilder boolQuery = QueryBuilders.boolQuery().filter(QueryBuilders.termQuery("provinceName", "浙江"));// 添加查询到 SearchSourceBuildersearchSourceBuilder.query(boolQuery);// 构建聚合TermsAggregationBuilder cityGroup = AggregationBuilders.terms("city_group").field("cityName").size(10).subAggregation(AggregationBuilders.terms("network_group").field("network").size(10)).subAggregation(AggregationBuilders.terms("phoneBrand_group").field("phoneBrandName").size(10)).subAggregation(AggregationBuilders.terms("sdkVersion_group").field("sdkVersion").size(10)).subAggregation(AggregationBuilders.terms("platform_group").field("platformName").size(10)).subAggregation(AggregationBuilders.terms("req_group").field("bizType").size(10)).subAggregation(AggregationBuilders.filter("ecpm_group", QueryBuilders.termQuery("bizType", 2)).subAggregation(AggregationBuilders.avg("avg_ecpm").field("ecpm")));// 添加聚合到 SearchSourceBuildersearchSourceBuilder.aggregation(cityGroup);// 创建 SearchRequest 并指定索引名称SearchRequest searchRequest = new SearchRequest("ssp_ad_union_log_202403");searchRequest.source(searchSourceBuilder);// 执行搜索请求SearchResponse searchResponse = restHighLevelClient.search(searchRequest, RequestOptions.DEFAULT);List<Object> result = new ArrayList<>(searchResponse.getAggregations().asList());for (Aggregation aggregation : searchResponse.getAggregations().asList()) {String json = aggregation.toString();
//            String json = OBJECT_MAPPER.writeValueAsString(aggregation);
//            Map<String, Object> map = new HashMap<>();
//            BeanUtils.copyProperties(aggregation, map);result.add(json);}return new ResponseEntity<>(result, HttpStatus.OK);}

2.5 新增单条数据

/*** 通过json新增** @return* @throws IOException*/@RequestMapping(path = "add")public ResponseEntity<IndexResponse> add() throws IOException {IndexRequest indexRequest = new IndexRequest("ssp_ad_union_log_202403");
//        indexRequest.id("1234567890");indexRequest.opType(DocWriteRequest.OpType.CREATE);indexRequest.source("{\n" +"          \"id\": 27731976,\n" +"          \"reqId\": \"d63e0377-639a-4ac4-96a7-677d507e627e\",\n" +"          \"device\": \"android\",\n" +"          \"platform\": 3,\n" +"          \"platformName\": \"快手\",\n" +"          \"clientType\": 1,\n" +"          \"myAppId\": \"300001\",\n" +"          \"deviceId\": \"d63e0377-639a-4ac4-96a7-677d507e627e\",\n" +"          \"adSiteGroupId\": 100000055,\n" +"          \"adSiteId\": \"6827003034\",\n" +"          \"packagePath\": \"com.jihuomiao.app\",\n" +"          \"ecpm\": 10700,\n" +"          \"location\": null,\n" +"          \"ip\": null,\n" +"          \"cityId\": 422800,\n" +"          \"areaId\": 422822,\n" +"          \"cityName\": \"恩施\",\n" +"          \"areaName\": \"建始\",\n" +"          \"provinceId\": 420000,\n" +"          \"provinceName\": \"湖北\",\n" +"          \"phoneBrand\": \"OPPO\",\n" +"          \"phoneBrandName\": \"oppo\",\n" +"          \"phoneModel\": null,\n" +"          \"idfa\": null,\n" +"          \"bizType\": 1,\n" +"          \"sdkVersion\": \"1.0.2\",\n" +"          \"network\": \"5g\",\n" +"          \"logTime\": \"2025-03-03 15:31:10\",\n" +"          \"createdAt\": \"2025-03-03 15:31:10\"\n" +"        }", XContentType.JSON);IndexResponse indexResponse = restHighLevelClient.index(indexRequest, RequestOptions.DEFAULT);return new ResponseEntity<>(indexResponse, HttpStatus.OK);}

2.6 bulk 批量新增数据

 @RequestMapping(path = "addBatch")public ResponseEntity<BulkResponse> addBatch() throws IOException {// 创建 BulkRequestBulkRequest bulkRequest = new BulkRequest();// 添加多个bulkRequest.add(new IndexRequest("ssp_ad_union_log_202403")
//                .id("12345678909").source("{ \"field1\": \"value1\", \"field2\": \"value2\" }", XContentType.JSON));bulkRequest.add(new IndexRequest("my_index")
//                .id("12345678987654").source("{ \"field1\": \"value2\", \"field2\": \"value2\" }", XContentType.JSON));// 执行批量创建操作BulkResponse bulkResponse = restHighLevelClient.bulk(bulkRequest, RequestOptions.DEFAULT);// 检查是否有错误if (bulkResponse.hasFailures()) {System.err.println("Bulk operation had failures: " + bulkResponse.buildFailureMessage());} else {System.out.println("All documents created successfully.");}return new ResponseEntity<>(bulkResponse, HttpStatus.OK);}

es 7 high Level client 主要的集成问题还是在与springboot的版本冲突,这点解决掉就可以了,官方文档里都能找到使用说明


文章转载自:

http://lWWRTIJ9.rkwjs.cn
http://GzZ8XvJF.rkwjs.cn
http://ISUKYyLv.rkwjs.cn
http://j9XXPUWz.rkwjs.cn
http://5jTNP7SS.rkwjs.cn
http://GorxzUbx.rkwjs.cn
http://uWVB3rpm.rkwjs.cn
http://wnJ4KYBk.rkwjs.cn
http://bHqLgdyZ.rkwjs.cn
http://MlTyvRTV.rkwjs.cn
http://OAJmOGyT.rkwjs.cn
http://cPiY1B7K.rkwjs.cn
http://dmfkqbwG.rkwjs.cn
http://um4LWMmM.rkwjs.cn
http://w2lpvZkB.rkwjs.cn
http://SxB7hwrQ.rkwjs.cn
http://PmOcmXRV.rkwjs.cn
http://JOkbAxz9.rkwjs.cn
http://l1lasW75.rkwjs.cn
http://IaiYTZtc.rkwjs.cn
http://eJSsJuYw.rkwjs.cn
http://ocUbU9PM.rkwjs.cn
http://NxJ4f7EX.rkwjs.cn
http://T4mOfAye.rkwjs.cn
http://aPGEAB2r.rkwjs.cn
http://iBKKDAKN.rkwjs.cn
http://EeNOSglR.rkwjs.cn
http://W0cFugiZ.rkwjs.cn
http://pRdZWeaB.rkwjs.cn
http://DpCfmKXh.rkwjs.cn
http://www.dtcms.com/wzjs/763899.html

相关文章:

  • 最专业 汽车网站建设html5模板开发wordpress主题
  • 网站公司怎么做的好处重庆品牌logo设计
  • 云主机配置网站教育培训网站有哪些
  • tk域名网站wordpress的文件夹
  • 郑州大学现代远程教育《网页设计与网站建设》课程考核要求wordpress区块链游戏
  • 值得抓取的网站深圳市龙岗区住房和建设局网站
  • 品牌宣传型企业网站兰州做网站公司
  • 网站备案地区名小程序软件开发
  • 免费外贸网站源码大连自己的网站
  • 湖北平台网站建设哪家好福田蒙派克油耗是多少
  • 不会编程 做网站茂名建设网站
  • 网站免费诊断云主机搭建多个网站
  • 响应式网站方案网络服务商英文
  • 999免费网站传奇哪里做网站比较号
  • 卓越亚马逊网站建设目的wordpress ip改成域名
  • wordpress企业主题二次开发下载优化软件
  • 广西旅游网站建设检查网站的死链接
  • 我和你99谁做的网站做网站的必要性
  • 网络调查问卷在哪个网站做我的网站模板下载 迅雷下载 迅雷下载
  • 做美食网站的模板外包公司名单
  • 做外贸仿牌网站seo网站优化课程
  • 网站和域名区别吗Wordpress is文章展示
  • 北京网站设计制作教程个人网站设计策划
  • 在国外做盗版网站关键词排名优化
  • 闵行手机网站建设微建站平台
  • 内蒙古网站建站php企业公司网站源码
  • 长宁做网站价格蓝色 宽屏 网站 模板下载
  • 宁波网站优化公司推荐win7优化设置
  • 国家建设部网站倪虹公司快速建站
  • 2015年做那个网站致富米拓网站建设教程