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

0基础建设网站wordpress恢复

0基础建设网站,wordpress恢复,wordpress乐趣公园缩略图不显示,外链代发软件当用户在搜索框输入字符时#xff0c;我们应该提示出与该字符有关的搜索项 拼音分词器 下载 要实现根据字母做补全#xff0c;就必须对文档按照拼音分词#xff0c;GitHub上有拼音分词插件 GitHub - medcl/elasticsearch-analysis-pinyin: This Pinyin Analysis plugin…当用户在搜索框输入字符时我们应该提示出与该字符有关的搜索项 拼音分词器 下载  要实现根据字母做补全就必须对文档按照拼音分词GitHub上有拼音分词插件 GitHub - medcl/elasticsearch-analysis-pinyin: This Pinyin Analysis plugin is used to do conversion between Chinese characters and Pinyin. 解压 解压到一个文件夹中去 上传  上传到服务器中elasticsearch的plugin目录   重启  重启elasticsearch   docker restart es测试 POST /_analyze {text: 如家酒店还不错,analyzer: pinyin } 返回拼音  自定义分词器 默认的拼音分词器会将每个汉字单独分为拼音而我们希望的是每个词条形成一组拼音需要对拼音分词器做个性化定制形成自定义分词器。 elasticsearch中分词器analyzer的组成包含三部分 character filters在tokenizer之前对文本进行处理。例如删除字符、替换字符 tokenizer将文本按照一定的规则切割成词条term。例如keyword就是不分词还有ik_smart tokenizer filter将tokenizer输出的词条做进一步处理。例如大小写转换、同义词处理、拼音处理等 自定义分词器  PUT /myanalyzer {settings: {analysis: {analyzer: { my_analyzer: { tokenizer: ik_max_word,filter: py}},filter: { py: { type: pinyin, keep_full_pinyin: false,keep_joined_full_pinyin: true,keep_original: true,limit_first_letter_length: 16,remove_duplicated_term: true,none_chinese_pinyin_tokenize: false}}}},mappings: {properties: {name: {type: text,analyzer: my_analyzer,search_analyzer: ik_smart}}} } analyzer自定义分词器 my_analyzer分词器名称filter自定义tokenizer filterpy过滤器名称filter.type过滤器类型这里是pinyinname分词的字段 测试 POST /myanalyzer/_analyze {text: [华美达酒店还不错],analyzer: my_analyzer } 结果 自动补全查询  创建索引库 PUT /hotel {settings: {analysis: {analyzer: {text_anlyzer: {tokenizer: ik_max_word,filter: py},completion_analyzer: {tokenizer: keyword,filter: py}},filter: {py: {type: pinyin,keep_full_pinyin: false,keep_joined_full_pinyin: true,keep_original: true,limit_first_letter_length: 16,remove_duplicated_term: true,none_chinese_pinyin_tokenize: false}}}},mappings: {properties: {id:{type: keyword},name:{type: text,analyzer: text_anlyzer,search_analyzer: ik_smart,copy_to: all},address:{type: keyword,index: false},price:{type: integer},score:{type: integer},brand:{type: keyword,copy_to: all},city:{type: keyword},starName:{type: keyword},business:{type: keyword,copy_to: all},location:{type: geo_point},pic:{type: keyword,index: false},all:{type: text,analyzer: text_anlyzer,search_analyzer: ik_smart},suggestion:{type: completion,analyzer: completion_analyzer}}} } HotelDoc实体 import lombok.Data; import lombok.NoArgsConstructor;import java.util.ArrayList; import java.util.Arrays; import java.util.Collections; import java.util.List;Data NoArgsConstructor public class HotelDoc {private Long id;private String name;private String address;private Integer price;private Integer score;private String brand;private String city;private String starName;private String business;private String location;private String pic;private Object distance;private Boolean isAD;private ListString suggestion;public HotelDoc(Hotel hotel) {this.id hotel.getId();this.name hotel.getName();this.address hotel.getAddress();this.price hotel.getPrice();this.score hotel.getScore();this.brand hotel.getBrand();this.city hotel.getCity();this.starName hotel.getStarName();this.business hotel.getBusiness();this.location hotel.getLatitude() , hotel.getLongitude();this.pic hotel.getPic();// 组装suggestionif(this.business.contains(/)){// business有多个值需要切割String[] arr this.business.split(/);// 添加元素this.suggestion new ArrayList();this.suggestion.add(this.brand);Collections.addAll(this.suggestion, arr);}else {this.suggestion Arrays.asList(this.brand, this.business);}} } 导入数据 Testvoid testBulkRequest() throws IOException {// 批量查询酒店数据ListHotel hotels hotelService.list();// 1.创建RequestBulkRequest request new BulkRequest();// 2.准备参数添加多个新增的Requestfor (Hotel hotel : hotels) {// 2.1.转换为文档类型HotelDocHotelDoc hotelDoc new HotelDoc(hotel);// 2.2.创建新增文档的Request对象request.add(new IndexRequest(hotel).id(hotelDoc.getId().toString()).source(JSON.toJSONString(hotelDoc), XContentType.JSON));}// 3.发送请求client.bulk(request, RequestOptions.DEFAULT);}controller类 import cn.itcast.hotel.pojo.PageResult; import cn.itcast.hotel.pojo.RequestParams; import cn.itcast.hotel.service.IHotelService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*;import java.util.List; import java.util.Map;RestController RequestMapping(/hotel) public class HotelController {Autowiredprivate IHotelService hotelService;// 搜索酒店数据GetMapping(suggestion)public ListString getSuggestions(RequestParam(key) String prefix) {return hotelService.getSuggestions(prefix);} } service类 import cn.itcast.hotel.mapper.HotelMapper; import cn.itcast.hotel.pojo.Hotel; import cn.itcast.hotel.pojo.HotelDoc; import cn.itcast.hotel.pojo.PageResult; import cn.itcast.hotel.pojo.RequestParams; import cn.itcast.hotel.service.IHotelService; import com.alibaba.fastjson.JSON; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import org.elasticsearch.action.search.SearchRequest; import org.elasticsearch.action.search.SearchResponse;import org.elasticsearch.client.RequestOptions; import org.elasticsearch.client.RestHighLevelClient; import org.elasticsearch.common.geo.GeoPoint; import org.elasticsearch.common.unit.DistanceUnit; import org.elasticsearch.index.query.BoolQueryBuilder; import org.elasticsearch.index.query.QueryBuilders; import org.elasticsearch.index.query.functionscore.FunctionScoreQueryBuilder; import org.elasticsearch.index.query.functionscore.ScoreFunctionBuilders; import org.elasticsearch.search.SearchHit; import org.elasticsearch.search.SearchHits; import org.elasticsearch.search.aggregations.AggregationBuilders; import org.elasticsearch.search.aggregations.Aggregations; import org.elasticsearch.search.aggregations.bucket.terms.Terms; import org.elasticsearch.search.sort.SortBuilders; import org.elasticsearch.search.sort.SortOrder; import org.elasticsearch.search.suggest.Suggest; import org.elasticsearch.search.suggest.SuggestBuilder; import org.elasticsearch.search.suggest.SuggestBuilders; import org.elasticsearch.search.suggest.completion.CompletionSuggestion; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service;import java.io.IOException; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map;Service public class HotelService extends ServiceImplHotelMapper, Hotel implements IHotelService {Autowiredprivate RestHighLevelClient client;Overridepublic ListString getSuggestions(String prefix) {try {// 1.准备RequestSearchRequest request new SearchRequest(hotel);// 2.准备DSLrequest.source().suggest(new SuggestBuilder().addSuggestion(suggestions,SuggestBuilders.completionSuggestion(suggestion).prefix(prefix).skipDuplicates(true).size(10)));// 3.发起请求SearchResponse response client.search(request, RequestOptions.DEFAULT);// 4.解析结果Suggest suggest response.getSuggest();// 4.1.根据补全查询名称获取补全结果CompletionSuggestion suggestions suggest.getSuggestion(suggestions);// 4.2.获取optionsListCompletionSuggestion.Entry.Option options suggestions.getOptions();// 4.3.遍历ListString list new ArrayList(options.size());for (CompletionSuggestion.Entry.Option option : options) {String text option.getText().toString();list.add(text);}return list;} catch (IOException e) {throw new RuntimeException(e);}}}测试
http://www.hkea.cn/news/14319186/

相关文章:

  • 网站创意设计方案如何做seo网站
  • 电商运营培训刷移动关键词优化
  • 网站建设内部链接网络营销方式和消费者群体之间的关系
  • 资兴市网站建设哪个好上海第五届中国国际进口博览会直播
  • dede打包好的网站怎么提取模板沈阳定制型网站建设
  • 考试系统 微网站是什么样的如何快捷建企业网站
  • 车公庙做网站网站开发平台 eclipse
  • 长沙优化网站哪家公司好做网站公司需要什么资质
  • 健身所网站建设策划书厦门网站设计
  • 云南旅行社网站开发西地那非片的功效与作用
  • 重庆公司网站seo自己建网站的流程
  • 建网站代码pythone网站开发
  • 知道域名怎么进入网站网站运营需要做什么
  • 做网站的 视频网站制作公司-山而
  • 汽车网站建设2023年5月新冠症状
  • 租车行网站模版手机开发者选项
  • 昆山专业网站建设公司哪家好陕西seo快速排名
  • 药类网站整站模板下载建筑库
  • 网站建设提升医院信息化水平wordpress二开前端
  • 丰台网站制作浩森宇特建设项目自主验收公示网站
  • 微商城 手机网站贵州省建设厅网站多少
  • 网站做直播wordpress下划线
  • 网站的色调wordpress子站点
  • 网站制作公司司wordpress小程序调用数据库字段
  • 购物网站开发的管理可行性襄阳住房和城乡建设局网站首页
  • 网站文字源码坛墨网站建设
  • 网站建设脚本个人主页背景图
  • wordpress电子商务网站插件鞍山人才网站
  • 简洁大方的网站模板带会员中心的淘宝客wordpress
  • 什么叫seo网站推广职场社交网站怎么做