我正在尝试使用hibernate-search-4.3.0.Final.jar创建一个休眠的全文本搜索
此应用程序中没有错误,但是我的Lucene查询取消查询DSL的查询不会返回任何结果。
我的意思是它不返回表中的任何行。谁能帮帮我吗。

这是我的功能:

OgmConfiguration cfgogm=new OgmConfiguration();
        cfgogm.configure("hibernate.cfg.xml");
        serviceregistry=new ServiceRegistryBuilder().applySettings(cfgogm.getProperties()).buildServiceRegistry();
        sessionfactory=cfgogm.buildSessionFactory(serviceregistry);
        Session session= sessionfactory.openSession();


        FullTextSession fulltextsession= Search.getFullTextSession(session);
        QueryBuilder querybuilder=fulltextsession.getSearchFactory().buildQueryBuilder().forEntity(User.class).get();
        org.apache.lucene.search.Query lucenequery=querybuilder.keyword().onField("IdU").matching("96645").createQuery();
        org.hibernate.search.FullTextQuery fulltextquery=fulltextsession.createFullTextQuery(lucenequery, User.class);
        List result=fulltextquery.list();
        System.out.println(result.toString());


这是我的POJO课:

@Entity
@Table(name="Users")
@Indexed
public class User {
    @Id
    @GeneratedValue(generator="mongodb_uuidgg")
    @Field(index = Index.YES,analyze = Analyze.NO,store = Store.NO)
    private String  _id;
    @Column(name="City")
    @Field(index = Index.YES,analyze = Analyze.NO,store = Store.NO)
    private String city;
    @Column(name="UserID")
    @Field(index = Index.YES,analyze = Analyze.NO,store = Store.NO)
    private int IdU;
...

最佳答案

我将使用Luke来验证您的查询是否实际上从索引返回了您想要的内容。

[编辑...]
如果Luke显示索引为空,则需要查看索引设置。

09-11 04:18