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

公司网站制作效果怎么样关于企业网站建设的建议

公司网站制作效果怎么样,关于企业网站建设的建议,建设论坛网站大全,网站建设费支付请示系列文章目录 提示#xff1a;这里可以添加系列文章的所有文章的目录#xff0c;目录需要自己手动添加 例如#xff1a;第一章 Python 机器学习入门之pandas的使用 提示#xff1a;写完文章后#xff0c;目录可以自动生成#xff0c;如何生成可参考右边的帮助文档 文章目…系列文章目录 提示这里可以添加系列文章的所有文章的目录目录需要自己手动添加 例如第一章 Python 机器学习入门之pandas的使用 提示写完文章后目录可以自动生成如何生成可参考右边的帮助文档 文章目录 系列文章目录前言一、es为什么比mysql快二、使用步骤1.引入库2. es查询语法 三api功能总结 前言 总结es优势 一、es为什么比mysql快 es是一个基于Lucene引擎库基于内存查询速度比mysql这个是在存储方式的比较第二是数据存储方式倒排索引存储方式可以快速找到数据的大概位置文档列表利用二叉查询方法进行寻找方式es支持复杂的语法格式寻找附近酒店进行分页缺点过于占内存 二、使用步骤 1.引入库 代码如下示例 package com.cn;import com.alibaba.fastjson.JSON; import com.cn.mapper.ESMapper; import com.cn.pojo.Hotel; import com.cn.pojo.TbHotel; import com.cn.pojo.vo.TbHotelVo; import org.apache.http.HttpHost; import org.elasticsearch.action.bulk.BulkRequest; import org.elasticsearch.action.bulk.BulkResponse; import org.elasticsearch.action.index.IndexRequest; import org.elasticsearch.action.search.SearchRequest; import org.elasticsearch.action.search.SearchResponse; import org.elasticsearch.client.RequestOptions; import org.elasticsearch.client.RestClient; import org.elasticsearch.client.RestHighLevelClient; import org.elasticsearch.client.indices.GetIndexRequest; import org.elasticsearch.common.geo.GeoPoint; import org.elasticsearch.common.unit.DistanceUnit; import org.elasticsearch.common.xcontent.XContentType; import org.elasticsearch.index.query.BoolQueryBuilder; import org.elasticsearch.index.query.QueryBuilder; import org.elasticsearch.index.query.QueryBuilders; import org.elasticsearch.search.SearchHit; import org.elasticsearch.search.sort.SortBuilders; import org.elasticsearch.search.sort.SortOrder; import org.junit.Test; import org.junit.jupiter.api.AfterEach; import org.junit.jupiter.api.BeforeEach; import org.junit.runner.RunWith; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.test.context.SpringBootTest; import org.springframework.test.context.junit4.SpringRunner;import java.io.IOException; import java.util.ArrayList; import java.util.Date; import java.util.List;RunWith(SpringRunner.class) SpringBootTest public class EsTest {Autowiredprivate RestHighLevelClient client;Autowiredprivate ESMapper esMapper;BeforeEachvoid setUp() {this.client new RestHighLevelClient(RestClient.builder(HttpHost.create(http://192.168.36.128:9200)));}AfterEachvoid tearDown() throws IOException {this.client.close();}/*** 判断索引是否存在* throws IOException*/Testpublic void getIndexRequest() throws IOException {GetIndexRequest request new GetIndexRequest(tiantian);boolean exists client.indices().exists(request, RequestOptions.DEFAULT);System.out.println(exists?不能再:我问);}/*** 批量导入文档* throws IOException*/Testpublic void c() throws IOException {ListHotel hotels new ArrayList();for (int i 0; i 50; i) {Hotel hotel new Hotel();hotel.setId(Long.valueOf(i));hotel.setAge(i);hotel.setAddress(我的地址方式i);hotel.setTime(new Date());hotel.setName(将来i);hotel.setLatLon(23.5,3i);hotel.setLocation(23.5,3i);hotels.add(hotel);}//批量导入BulkRequest bulkRequest new BulkRequest();//转化文档for (Hotel hotel : hotels) {bulkRequest.add(new IndexRequest(tiantian).id(hotel.getId().toString()).source(JSON.toJSONString(hotel), XContentType.JSON));}//发送请求BulkResponse bulk client.bulk(bulkRequest, RequestOptions.DEFAULT);System.out.println(bulk);}/*** 导入数据信息* throws IOException*/Testpublic void bulkRequest() throws IOException {BulkRequest bulkRequest new BulkRequest();ListTbHotel tbHotels esMapper.selectList(null);for (TbHotel tbHotel : tbHotels) {TbHotelVo tbHotelVo new TbHotelVo(tbHotel);bulkRequest.add(new IndexRequest(hotel).id(tbHotelVo.getId().toString()).source(JSON.toJSONString(tbHotelVo),XContentType.JSON));}client.bulk(bulkRequest,RequestOptions.DEFAULT);}/*** 查询所有文档信息* throws IOException*/Testpublic void testMatchAll() throws IOException {SearchRequest request new SearchRequest(hotel);request.source().query(QueryBuilders.matchAllQuery());SearchResponse response client.search(request, RequestOptions.DEFAULT);for (SearchHit hit : response.getHits().getHits()) {String source hit.getSourceAsString();System.out.println(source);}}/*** 准确查询* throws IOException*/Testpublic void matchQuery() throws IOException {SearchRequest request new SearchRequest(hotel);request.source().query(QueryBuilders.termQuery(price,189));SearchResponse response client.search(request, RequestOptions.DEFAULT);for (SearchHit hit : response.getHits().getHits()) {String sourceAsString hit.getSourceAsString();System.out.println(sourceAsString);}}/*** 布尔查询方式* 查询名字叫做如家* 价格200* 地址在上海*/Testpublic void boolQuery() throws IOException {SearchRequest request new SearchRequest(hotel);BoolQueryBuilder boolQuery QueryBuilders.boolQuery();boolQuery.mustNot(QueryBuilders.rangeQuery(price).gte(400));boolQuery.must(QueryBuilders.matchQuery(city,上海));boolQuery.must(QueryBuilders.matchQuery(name,如家));request.source().query(boolQuery);for (SearchHit hit : client.search(request, RequestOptions.DEFAULT).getHits().getHits()) {String sourceAsString hit.getSourceAsString();System.out.println(sourceAsString);}}/*** bool查询方式* throws IOException*/Testpublic void testBoole() throws IOException {SearchRequest request new SearchRequest(hotel);BoolQueryBuilder boolQuery QueryBuilders.boolQuery();boolQuery.must(QueryBuilders.matchQuery(name,如家));request.source().query(boolQuery);for (SearchHit hit : client.search(request, RequestOptions.DEFAULT).getHits()) {System.out.println(hit.getSourceAsString());}}/*** 根据经纬度查询方式* throws IOException*/Testpublic void geoPoint() throws IOException {SearchRequest request new SearchRequest(hotel);request.source().sort(SortBuilders.geoDistanceSort(lonAndLat,new GeoPoint(31.2,121.5)).order(SortOrder.ASC).unit(DistanceUnit.KILOMETERS));SearchResponse response client.search(request, RequestOptions.DEFAULT);for (SearchHit hit : response.getHits().getHits()) {TbHotel tbHotel JSON.parseObject(hit.getSourceAsString(), TbHotel.class);System.out.println(tbHotel.getLonAndLat());}}Testpublic void testMat() throws IOException {SearchRequest request new SearchRequest(hotel);request.source().query(QueryBuilders.matchQuery(name,如家));SearchResponse response client.search(request, RequestOptions.DEFAULT);for (SearchHit hit : response.getHits().getHits()) {System.out.println(hit.getSourceAsString());}} } 2. es查询语法 代码如下示例 //添加索引 PUT /tiantian {mappings: {properties: {name:{type: text, analyzer: ik_smart},age:{type: integer, index: false}}} }//查询索引 GET /tiantian//查询文档信息 GET /tiantian/_doc/1//添加字段信息 PUT /tiantian/_mapping {properties:{address:{type:text,index:false}} }//添加数据文档数据信息 POST /tiantian/_doc/1 {address:巴黎,name:太牛龙,age:123 }//查询经纬度 GET /hotel/_search {query: {match_all: {}},sort: [{price: {order: desc}},{_geo_distance: {lonAndLat: {lat: 31.2,lon: 121.5},order: asc}}] }POST /hotel/_update/1902197537 {doc: {isAD: true} } POST /hotel/_update/2056126831 {doc: {isAD: true} } POST /hotel/_update/1989806195 {doc: {isAD: true} } POST /hotel/_update/2056105938 {doc: {isAD: true} }GET /hotel/_search {query: {function_score: {query: {match: {name: 外滩}},functions: [{filter: { term: {id: 1}},weight: 10}],boost_mode: multiply}},from: 1,size: 10 }GET /hotel/_search {query: {function_score: {query: {match: {name: 如家}},functions: [{filter: {term: {name: 339952837}}, weight: 10}],boost_mode: sum}} }GET /hotel/_search {query: {match_all: {}} }GET /hotelGET /hotel/_search {size: 0, aggs: {brandAgg: {terms: {field: brand.keyword}}}}GET /hotel/_search {query: {match: {name: 东方明珠}} }三api功能 Overridepublic PageResult search(RequestParams params) throws IOException {//1.准备发送SearchRequest request new SearchRequest(hotel);//2.准备布尔条件BoolQueryBuilder boolQuery QueryBuilders.boolQuery();//3.判断是否存在String key params.getKey();if (keynull || .equals(key)){boolQuery.must(QueryBuilders.matchAllQuery());}else {boolQuery.must(QueryBuilders.matchQuery(name,key));}Integer size params.getSize();Integer page params.getPage();request.source().from((page - 1) * size).size(size);request.source().query(boolQuery);String location params.getLocation();//得出具体路径if (location!null !location.equals()){request.source().sort(SortBuilders.geoDistanceSort(lonAndLat,new GeoPoint(location)).order(SortOrder.ASC).unit(DistanceUnit.KILOMETERS));}//相关性算法FunctionScoreQueryBuilder scoreQuery QueryBuilders.functionScoreQuery(boolQuery,new FunctionScoreQueryBuilder.FilterFunctionBuilder[]{new FunctionScoreQueryBuilder.FilterFunctionBuilder(QueryBuilders.termQuery(isAD, true),ScoreFunctionBuilders.weightFactorFunction(10))});request.source().query(scoreQuery);SearchResponse response client.search(request, RequestOptions.DEFAULT);return handleResponse(response);}根据经纬度查询方式 //得出具体路径if (location!null !location.equals()){request.source().sort(SortBuilders.geoDistanceSort(lonAndLat,new GeoPoint(location)).order(SortOrder.ASC).unit(DistanceUnit.KILOMETERS));} 相关性算法 //相关性算法FunctionScoreQueryBuilder scoreQuery QueryBuilders.functionScoreQuery(boolQuery,new FunctionScoreQueryBuilder.FilterFunctionBuilder[]{new FunctionScoreQueryBuilder.FilterFunctionBuilder(QueryBuilders.termQuery(isAD, true),ScoreFunctionBuilders.weightFactorFunction(10))}); 总结 es高效速度快基于lu的内存数据库采用倒序索引的方式倒叙索引好处我们之前数据库根据id找到值倒排索引的方式es默认创建索引根据值找到对应的文档列表文档列表根据二分查找方式找到对应的值es强大的api功能普通基于内存的数据库的方式比如redis功能适合做缓存没有强大的api不能做复杂的功能es有强大api分页查询联合查询经纬度查询相关性质查询方式
http://www.dnsts.com.cn/news/225033.html

相关文章:

  • 网站服务器和网站摄影网站制作流程
  • 做网站卖仿品有链接的网站
  • 网站建设的功能要求想学网站建设优化去哪
  • 一流的南昌网站建设wordpress框架是什么意思
  • 在网站上做教学直播平台多少钱在线crm免费
  • 全民电竞app的制作公司专业搜索引擎seo合作
  • 摄影网站开发背景怎么写德州网站建设推广价格
  • 酒店类的电影网站模板免费下载建站点
  • wix建站教程wordpress旧版
  • 做纺织外贸网站违法网站怎么做安全
  • 网站建设运营网站建设方案策划书ppt模板下载
  • 58同城一样的网站怎样建设上海网站设计要多少钱
  • 如何建一个个人网站网站开发的过程
  • 网站外链建设有利于增加网站收录智慧团建网站pc端
  • 南京做网站南京乐识专心网站开发摊销期多少年
  • 太谷县建设局网站包头网站设计
  • 河西做网站网络推广的方法有
  • 网站改版费用关键词推广软件排名
  • 淘宝客网站建站教程免费做国际贸易的网站
  • 长沙网站建设公司排行榜php网站集成支付宝接口
  • 网站备案 座机号码美化网站公司
  • 网站建设对付客户网络销售怎么跟客户聊天
  • 做网站的合同广东省网站集约化建设
  • 响应式网站开发遇到的问题seo搜索引擎优化期末及答案
  • 怎样在工商局网站做公示网站建设图片排版
  • 2016年做网站能赚钱吗西安抖音seo推广
  • 网站如何做的看起来高大上邯郸哪有做网站的
  • 网站服务器部署海口网格员
  • 网站系统升级建设合同没地址怎么注册公司
  • 中煤第一建设公司网站python工程打包供网站开发调用