分布式搜索引擎ElasticSearch搜索实例演示

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

}
ElasticSearch 核心搜索模拟类 package org.dennisit.elastic.process;
import java.util.ArrayList; import java.util.List; import org.dennisit.entity.DataFactory; import org.dennisit.entity.Medicine; import org.elasticsearch.action.index.IndexRequestBuilder; import org.elasticsearch.action.index.IndexResponse;
启动解压目录下的 bin 名称的文件夹,双击 elasticsearch.bat 文件,就可以启动 elasticsearch,启动成功界面如下:
使用 Java 调用 ElasticSearch 提供的相关 API 进行数据搜索实例演示 苏若年 dennisit@163.com
博客: http://cnblogs.com/dennisit/
/** * * * * * * * * * * */ public class ElasticSearchHandler { @function TODO @function: @since : 1.0 创建时间: 2013-4-8 上午11:34:04 @author : 苏若年 <a href="mailto:DennisIT@163.com">发送邮件</a> @version : 1.0
启动成功后,会在解压目录下增加 2 个文件件,data 用于数据存储, logs 用于日志记录,可以自己创建 plugins 目录中用于放置自己的插件。
使用 Jwenku.baidu.comva 调用 ElasticSearch 提供的相关 API 进行数据搜索实例演示 苏若年 dennisit@163.com
博客: http://cnblogs.com/dennisit/
private Client client;
public ElasticSearchHandler(){
/** * 实现将实体对象转换成json对象 * @param medicine Medicine对象 * @return */ public static String obj2JsonData(Medicine medicine){ String jsonData = null null; try {
list.add(data1); list.add(data2); list.add(data3); list.add(data4); list.add(data5); return list; } } 应用工具类 package org.dennisit.util; import java.io.IOException;
new = JsonUtil.obj2JsonData(new Medicine(3,"感冒灵颗粒","功能主治:解热镇痛。头痛 ,清热。")); new = JsonUtil.obj2JsonData(new Medicine(4,"感冒 new = JsonUtil.obj2JsonData(new Medicine(5,"仁和 感冒 颗粒","功能主治:疏风清热,宣肺止咳,解表清热,止咳化痰。"));
private Integer id; private String name; private String function;
public Medicine() { super super(); }
public Medicine(Integer id, String name, String function) { super super(); this this.id = id; this this.name = name; this this.function = function; }
使用 Java 调用 ElasticSearch 提供的相关 API 进行数据搜索实例演示 苏若年 dennisit@163.com
博客: http://cnblogs.com/dennisit/
import org.elasticsearch.action.search.SearchResponse; import org.elasticsearch.client.Client; import org.elasticsearch.client.transport.TransportClient; import org.elasticsearch.common.transport.InetSocketTransportAddress; import org.elasticsearch.index.query.QueryBuilder; import org.elasticsearch.index.query.QueryBuilders; import org.elasticsearch.search.SearchHit; import org.elasticsearch.search.SearchHits;
使用 Java 调用 ElasticSearch 提供的相关 API 进行数据搜索实例演示 苏若年 dennisit@163.com
博客: http://cnblogs.com/dennisit/
使用 Java 调用 ElasticSearch 提供的相关 API 进行数据搜索完整实例演示 进行数据搜索完整 完整实例演示
使用 Java 调用 ElasticSearch 提供的相关 API 进行数据搜索实例演示 苏若年 dennisit@163.com
博客: http://cnblogs.com/dennisit/
//getter and setter () }
模拟数据 package org.dennisit.entity; import java.util.ArrayList; import java.util.List; import org.dennisit.util.JsonUtil;
安装包下载 当前最新版本为:0.20.6 http://www.elasticsearch.org/download/ 官方视频教程 http://www.elasticsearch.org/videos/ Window 环境 下载完解开有以下个包: bin 是运行的脚本,config 是设置文件,lib 是放依赖的包。
private DataFactory(){
}
public DataFactory getInstance(){ return dataFactory; }
public static List<String> getInitJsonData(){ List<String> list = new ArrayList<String>(); String data1 String data2 String data3 String data4 String data5 new = JsonUtil.obj2JsonData(new Medicine(1,"银花 感冒 颗粒","功能主治:银花感冒颗粒 ,头痛,清热,解表,利咽。")); new = JsonUtil.obj2JsonData(new Medicine(2,"感冒 止咳糖浆","功能主治:感冒止咳糖浆,解表清热,止咳化痰。")); 灵胶囊","功能主治:银花感冒颗粒 ,头痛,清热,解表,利咽。"));
此时可以在浏览器中输入: http://localhost:9200/ "ok" : true, "status" : 200, "name" : "Glob Herman", "version" : { "number" : "0.20.6", "snapshot_build" : false }, "tagline" : "You Know, for Search" } 出现上面结果,表示成功启动! : 集成分词器的 ElasticSearch 下载地址: https://github.com/medcl/elasticsearch-rtf
Java 模拟简单搜索 实体类 package org.dennisit.entity; /** *
使用 Java 调用 ElasticSearch 提供的相关 API 进行数据搜索实例演示 苏若年 dennisit@163.com
博客: http://cnblogs.com/dennisit/
* * * * * * * * * */ public class Medicine { @function TODO @function: @since : 1.0 创建时间: 2013-4-8 下午04:51:03 @author : 苏若年 <a href="mailto:DennisIT@163.com">发送邮件</a> @version : 1.0
/** * * * * * * * * * * */ public class DataFactory { @function TODO @function: @since : 1.0 创建时间: 2013-4-8 上午11:38:15 @author : 苏若年 <a href="mailto:DennisIT@163.com">发送邮件</a> @version : 1.0
使用 Java 调用 ElasticSearch 提供的相关 API 进行数据搜索实例演示 苏若年 dennisit@163.com
博客: http://cnblogs.com/dennisit/
//使用XContentBuilder创建json数据 XContentBuilder jsonBuild = XContentFactory.jsonBuilder(); jsonBuild.startObject() .field("id",medicine.getId()) .field("name", medicine.getName()) .field("funciton",medicine.getFunction()) .endObject(); jsonData = jsonBuild.string(); System.out.println(jsonData); } catch (IOException e) { e.printStackTrace(); } return jsonData; }
public static DataFactory dataFactory = new DataFactory();
使用 Java 调用 ElasticSearch 提供的相关 API 进行数据搜索实例演示 苏若年 dennisit@163.com
博客: http://cnblogs.com/dennisit/
使用 Java 调用 ElasticSearch 提供的相关 API 进行数据搜索实例演示 苏若年 dennisit@163.com
博客: http://cnblogs.com/dennisit/
import org.dennisit.entity.Medicine; import org.elasticsearch.common.xcontent.XContentBuilder; import org.elasticsearch.common.xcontent.XContentFactory;
/** * * * * * * * * * * */ public class JsonUtil { @function TODO @function: @since : 1.0 创建时间: 2013-4-8 上午11:34:56 @author : 苏若年 <a href="mailto:DennisIT@163.com">发送邮件</a> @version : 1.0
相关文档
最新文档