当前位置: 首页 > 软件库 > 程序开发 > 搜索引擎 >

Hibernate Search

Hibernate搜索框架
授权协议 LGPL
开发语言 Java
所属分类 程序开发、 搜索引擎
软件类型 开源软件
地区 不详
投 递 者 施昊然
操作系统 跨平台
开源组织
适用人群 未知
 软件概览

Hibernate Search 的作用是对数据库中的数据进行检索的。它是 hibernate 对著名的全文检索系统 Lucene 的一个集成方案,作用在于对数据表中某些内容庞大的字段(如声明为 text 的字段)建立全文索引,这样通过 hibernate search 就可以对这些字段进行全文检索后获得相应的 POJO,从而加快了对内容庞大字段进行模糊搜索的速度(sql 语句中 like 匹配)。

Hibernate Search 自动从 Hibernate ORM 实体中提取数据,以将其推送到本地 Apache Lucene 索引或远程 Elasticsearch 索引。

Hibernate Search主要有以下功能特点:

@Entity
// This entity is mapped to an index
@Indexed
public class Book {

    // The entity ID is the document ID
    @Id
    @GeneratedValue
    private Integer id;

    // This property is mapped to a document field
    @FullTextField
    private String title;

    @ManyToMany
    // Authors will be embedded in Book documents
    @IndexedEmbedded
    private Set<Author> authors = new HashSet<>();

    // Getters and setters
    // ...
}

@Entity
public class Author {

    @Id
    @GeneratedValue
    private Integer id;

    // This property is mapped to a document field
    @FullTextField
    private String name;

    @ManyToMany(mappedBy = "authors")
    private Set<Book> books = new HashSet<>();

    // Getters and setters
    // ...
}
  • Hibernate Search 教程 本文我们讨论Hibernate Search 基础知识、配置及查询搜索功能。 如果我们已经在ORM中使用Hibernate和JPA,那么离Hibernate Search只有一步之遥。Hibernate Search集成了Apache Lucene,一个高性能、可扩展的全文检索引擎。其结合了Lucene的强大功能和Hibernate和JPA的简单性,因此仅需

  • 1 概述 搜索是网络的支柱之一,而全文搜索是每个网站都需要的强制性功能之一。但是实现这样一个特性是复杂的,许多有经验的工程师已经对这个问题进行了深入的思考。因此,让我们不要重新发明轮子,而是使用经过严格测试过的 Hibernate Search 库。 2 项目设置 2.1 第一步是使用 spring initializr 生成 spring boot 项目。 spring init --depen

  • Hibernate Search 构建查询流程 从FullTextEntityManager获取QueryBuilder FullTextEntityManager fullTextEntityManager = Search.getFullTextEntityManager(entityManager); QueryBuilder queryBuilder = fullTextEnti

  • package cn.search.pojo; import java.io.Serializable; import javax.persistence.Column; import javax.persistence.Entity; import javax.persistence.Id; import javax.persistence.Table; import org.hibernate

  • Posted by Yoann Rodière | Sep 19, 2019 Hibernate Search Lucene Elasticsearch Releases We just published a maintenance release for Hibernate Search: 5.11.3.Final. This release mainly upgrades Hibernate

  • 原文地址:https://my.oschina.net/harmel/blog/491159 本来是准备使用Lucene的但是新版本的API过于繁琐,最后还是决定使用Hibernate Search来实现全文检索。这篇博文以我以前做的博客为例来实现全文检索。 1、修改Hibernate配置文件,因为我的系统采用的是SSH2来开发的所以我修改的是spring配置文件 <bean id="sessio

  • HibernateSearch全文检索技术-工作单索引的建立和搜索 全文检索 我们在向表中插入数据的同时,向外置索引库中也放入响应的数据。等查询的时候,先查询索引库,然后再查询表。 第一步:建立索引: 向表中插入数据的同时,向外置索引库中也放入相应的数据。 表: id arrivecity 1 上海浦东 2 深圳宝安 索引库:(先分词-再存储,分词的效果依赖于中文分词器) id name 1 1

 相关资料
  • import { Search } from 'feui'; components: { [Search.name]: Search } 代码演示 浮动到顶端用法 <fe-search @result-click="resultClick" @on-change="getResult" :results="results" v-model="value"

  • 使用指南 组件介绍 搜索框 引入方式 import { SearchBar } from 'feart'; components: { "fe-search-bar": SearchBar } 代码演示 基础用法 <fe-search-bar v-model="value" /> 样式风格 <fe-search-bar v-model="value" searchType="plai

  • 定义 搜索框。 图片展示 代码演示 import Search from 'pile/dist/components/search' <Search onChangeHandle={function(text){console.log("text:" + text)}} onClearHandle={function(){console.log("clearHandle")}} on

  • 大家好,根据搜索框中的conatiner图像在这里!我只是想问当用户在搜索框中键入一个名称时,应该显示特定的字段。我把我的视图。JSP代码也在这里吗?? vuew.jsp<%@page import=“com.privery.servicebuilder.service.blobdesolocalserviceutil”%><%@taglib uri=“http://java.sun.com/po

  • 我有html javascript显示我今天的日期和一个搜索框。我尝试创建html,以便在搜索框中始终规定当前日期。

  • 搜索输入框是一个新兴的html元素,外观为圆角,当你输入文字后右边会出现一个叉的图标,点击则会清除你输入的内容。给input增加type="search" 属性来定义 注意要把label的for属性设为input的id值,使他们能够在语义上相关联,并且要用div容器包裹它们,并给他设定data-role="fieldcontain"属性 HTML 代码: <div data-role="field

  • 本文向大家介绍Bootstrap框架下下拉框select搜索功能,包括了Bootstrap框架下下拉框select搜索功能的使用技巧和注意事项,需要的朋友参考一下 之前用Easyui框架下做的下拉框选择,虽然可以搜索,但是有诸多的不便:比如,不能模糊匹配,必须按照第一个字母来搜索 心血来潮,想换个框架写后台,然后用Bootstrap搭了个架子,然后两种样式冲突,百度了一把,找到了另一个牛逼的基于B

  • 问题内容: 我正在使用a 从sql数据库搜索查询。这是我的代码。 = JComboBox 但是,当我在组合框中键入一个字母时,它将添加数据库中的所有项目。我知道总是给出一个空字符串。而且,只要我键入一个字母,组合框的文本字段就会为空(我不能键入两个字母的单词)。如何解决这个问题?谢谢。 问题答案: 问题的原因如下: 始终为空是因为您在打电话之前先打电话。这意味着,在获得所选内容之前,将清除(与所选