在好例子网,分享、交流、成长!
您当前所在位置:首页Java 开发实例Lucene搜索引擎 → elasticsearch的java使用实例

elasticsearch的java使用实例

Lucene搜索引擎

下载此实例
  • 开发语言:Java
  • 实例大小:9.02KB
  • 下载次数:33
  • 浏览次数:5719
  • 发布时间:2014-05-04
  • 实例类别:Lucene搜索引擎
  • 发 布 人:风之梦娜
  • 文件格式:.rar
  • 所需积分:2
 相关标签: 实例 elasticsearch java jest

实例介绍

【实例简介】

使用jest对elasticsearch进行java的调用

【实例截图】

【核心代码】

package com.mkfree.jest.service;

import io.searchbox.client.JestClient;
import io.searchbox.client.JestResult;
import io.searchbox.core.Bulk;
import io.searchbox.core.Index;
import io.searchbox.core.Search;
import io.searchbox.indices.CreateIndex;
import io.searchbox.indices.DeleteIndex;

import java.io.IOException;
import java.util.List;

import org.elasticsearch.index.query.QueryBuilder;
import org.elasticsearch.index.query.QueryBuilders;

import com.mkfree.jest.config.InitES;
import com.mkfree.jest.domain.News;

/**
 * es简单服务接口
 * 
 * @author hk
 * 
 *         2013-1-12 下午11:47:16
 */
public class SearchService {

private static JestClient jestClient = InitES.jestClient();
int num = 10000;

/**
* 创建es news索引
*/
public void builderSearchIndex() {
long start = System.currentTimeMillis();
try {
// 如果索引存在,删除索引
DeleteIndex deleteIndex = new DeleteIndex("news");
jestClient.execute(deleteIndex);

// 创建索引
CreateIndex createIndex = new CreateIndex("news");
jestClient.execute(createIndex);
// Bulk 两个参数1:索引名称2:类型名称(用文章(article)做类型名称)
Bulk bulk = new Bulk("news", "article");
// 添加添加100万条假数据去服务端(ES)
for (int i = 0; i < num; i ) {
News news = new News();
news.setId(i 1);
news.setTitle("elasticsearch RESTful搜索引擎-(java jest 使用[入门])" (i 1));
news.setContent("好吧下面我介绍下jest(第三方工具),个人认为还是非常不错的...想对ES用来更好,多多研究源代码吧...迟点,会写一些关于ES的源代码研究文章,现在暂时还是入门的阶段.哈..(不敢,不敢)"
(i 1));
bulk.addIndex(new Index.Builder(news).build());
}
jestClient.execute(bulk);
} catch (Exception e) {
e.printStackTrace();
}
long end = System.currentTimeMillis();
System.out.println("创建索引时间:数据量是  " num "记录,共用时间 -->> " (end - start) " 毫秒");
}

/**
* 搜索新闻

* @param param
* @return
*/
public List<News> searchsNews(String param) {
try {
long start = System.currentTimeMillis();
QueryBuilder queryBuilder = QueryBuilders.queryString(param);
Search search = new Search(Search.createQueryWithBuilder(queryBuilder.toString()));
search.addIndex("news");
search.addType("article");
JestResult result = jestClient.execute(search);
long end = System.currentTimeMillis();
System.out.println("在" num "条记录中,搜索新闻,共用时间 -->> " (end - start) " 毫秒");
return result.getSourceAsObjectList(News.class);
} catch (IOException e) {
e.printStackTrace();
} catch (Exception e) {
e.printStackTrace();
}
return null;
}
}


实例下载地址

elasticsearch的java使用实例

不能下载?内容有错? 点击这里报错 + 投诉 + 提问

好例子网口号:伸出你的我的手 — 分享

相关文章

网友评论

发表评论

(您的评论需要经过审核才能显示)

查看所有0条评论>>

小贴士

感谢您为本站写下的评论,您的评论对其它用户来说具有重要的参考价值,所以请认真填写。

  • 类似“顶”、“沙发”之类没有营养的文字,对勤劳贡献的楼主来说是令人沮丧的反馈信息。
  • 相信您也不想看到一排文字/表情墙,所以请不要反馈意义不大的重复字符,也请尽量不要纯表情的回复。
  • 提问之前请再仔细看一遍楼主的说明,或许是您遗漏了。
  • 请勿到处挖坑绊人、招贴广告。既占空间让人厌烦,又没人会搭理,于人于己都无利。

关于好例子网

本站旨在为广大IT学习爱好者提供一个非营利性互相学习交流分享平台。本站所有资源都可以被免费获取学习研究。本站资源来自网友分享,对搜索内容的合法性不具有预见性、识别性、控制性,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,平台无法对用户传输的作品、信息、内容的权属或合法性、安全性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论平台是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二与二十三条之规定,若资源存在侵权或相关问题请联系本站客服人员,点此联系我们。关于更多版权及免责申明参见 版权及免责申明

;
报警