org.hibernate.search.query.dsl.WildcardContext.onField()方法的使用及代码示例

x33g5p2x  于2022-02-03 转载在 其他  
字(11.5k)|赞(0)|评价(0)|浏览(75)

本文整理了Java中org.hibernate.search.query.dsl.WildcardContext.onField()方法的一些代码示例,展示了WildcardContext.onField()的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。WildcardContext.onField()方法的具体详情如下:
包路径:org.hibernate.search.query.dsl.WildcardContext
类名称:WildcardContext
方法名:onField

WildcardContext.onField介绍

暂无

代码示例

代码示例来源:origin: stackoverflow.com

WildcardContext wildcard = keyword.wildcard();
String[] searchfields = Compound.getSearchfields();
TermMatchingContext onFields = wildcard.onField(searchfields[0]);
for (int i = 1; i < searchfields.length; i++)
  onFields.andField(searchfields[i]);

代码示例来源:origin: org.hibernate.hql/hibernate-hql-lucene

TermMatchingContext wildcardTermMatchingContext() {
  if ( fieldBridge != null ) {
    return ( (ConnectedTermMatchingContext) builder.keyword().wildcard().onField( propertyName ) ).withFieldBridge( fieldBridge ).ignoreAnalyzer();
  }
  else {
    return builder.keyword().wildcard().onField( propertyName );
  }
}

代码示例来源:origin: com.silicolife.textmining/core

@SuppressWarnings("rawtypes")
private BooleanJunction<BooleanJunction> addMustWildcardWithStartingAttributesOnFields(Map<String, String> startSentenceOnField,
    QueryBuilder qb, BooleanJunction<BooleanJunction> combinedQuery) {
  for(String field : startSentenceOnField.keySet()){
    String value = startSentenceOnField.get(field);
    if(!value.isEmpty()){
      String wildcardValue = value + "*";
      Query luceneQuery = qb.keyword().wildcard()
          .onField(field)
          .matching(wildcardValue)
          .createQuery();
      combinedQuery.must(luceneQuery);
    }
  }
  return combinedQuery;
}

代码示例来源:origin: org.infinispan/infinispan-embedded-query

return applyFieldBridge(false, propertyValueExpr.getPropertyPath(), queryBuilder.keyword().wildcard().onField(propertyValueExpr.getPropertyPath().asStringPath()))
   .matching(lucenePattern.toString()).createQuery();

代码示例来源:origin: org.infinispan/infinispan-query

return applyFieldBridge(false, propertyValueExpr.getPropertyPath(), queryBuilder.keyword().wildcard().onField(propertyValueExpr.getPropertyPath().asStringPath()))
   .matching(lucenePattern.toString()).createQuery();

代码示例来源:origin: hibernate/hibernate-search

@Test
@SuppressWarnings("unchecked")
public void testResultOrderedByDateDescending() throws Exception {
  EntityTransaction tx = em.getTransaction();
  tx.begin();
  QueryBuilder builder = em.getSearchFactory().buildQueryBuilder().forEntity( ProductArticle.class ).get();
  org.apache.lucene.search.Query query = builder.keyword().wildcard().onField( "header" ).matching( "hib*" ).createQuery();
  Sort dateDescending = builder.sort().byField( "creationDate" ).desc().createSort();
  List<ProductArticle> result = em.createFullTextQuery( query, ProductArticle.class )
      .setSort( dateDescending ).setFirstResult( 3 ).getResultList();
  assertThat( result ).as( "query result" ).hasSize( 3 );
  assertThat( result.get( 0 ).getArticleId() ).as( "article id" ).isEqualTo( 3 );
  assertThat( result.get( 1 ).getArticleId() ).as( "article id" ).isEqualTo( 2 );
  assertThat( result.get( 2 ).getArticleId() ).as( "article id" ).isEqualTo( 1 );
  tx.commit();
  em.clear();
}

代码示例来源:origin: hibernate/hibernate-search

Query query = qb.keyword().wildcard().onField( "owner" ).matching( "p*" ).createQuery();

代码示例来源:origin: org.infinispan/infinispan-query

@Test(expectedExceptions = SearchException.class)
public void testWildcardWithWrongName() {
 loadTestingData();
 Query query = Search.getSearchManager(cache).buildQueryBuilderForClass(Person.class).get().keyword().wildcard()
    .onField("wrongname").matching("Goat").createQuery();
 CacheQuery<Person> cacheQuery = Search.getSearchManager(cache).getQuery(query);
 List<Person> found = cacheQuery.list();
 assertEquals(2, found.size());
}

代码示例来源:origin: org.infinispan/infinispan-embedded-query

return applyFieldBridge(true, propertyValueExpr.getPropertyPath(), queryBuilder.keyword().wildcard().onField(propertyValueExpr.getPropertyPath().asStringPath()))
   .matching(text).createQuery();

代码示例来源:origin: org.infinispan/infinispan-query

return applyFieldBridge(true, propertyValueExpr.getPropertyPath(), queryBuilder.keyword().wildcard().onField(propertyValueExpr.getPropertyPath().asStringPath()))
   .matching(text).createQuery();

代码示例来源:origin: hibernate/hibernate-search

@Test
public void testWildcardQuery() throws Exception {
  final QueryBuilder monthQb = helper.queryBuilder( Month.class );
  Query query = monthQb
      .keyword()
        .wildcard()
        .onField( "mythology" )
        .matching( "mon*" )
        .createQuery();
  helper.assertThat( query ).from( Month.class ).hasResultSize( 3 );
}

代码示例来源:origin: org.infinispan/infinispan-query

public void testWildcard() {
 loadNumericTypes();
 Query query = Search.getSearchManager(cache).buildQueryBuilderForClass(NumericType.class).get().keyword().wildcard()
    .onField("name").matching("*wildcard*").createQuery();
 CacheQuery<Person> cacheQuery = Search.getSearchManager(cache).getQuery(query);
 List<Person> found = cacheQuery.list();
 assertEquals(3, found.size());
 assert found.contains(type1);
 assert found.contains(type2);
 assert found.contains(type3);
 query = Search.getSearchManager(cache).buildQueryBuilderForClass(NumericType.class).get().keyword().wildcard()
    .onField("name").matching("nothing*").createQuery();
 cacheQuery = Search.getSearchManager(cache).getQuery(query);
 found = cacheQuery.list();
 assertEquals(0, found.size());
 NumericType type4 = new NumericType(35, 40);
 type4.setName("nothing special.");
 cache.put("otherKey", type4);
 cacheQuery = Search.getSearchManager(cache).getQuery(query);
 found = cacheQuery.list();
 assertEquals(1, found.size());
 assert found.contains(type4);
 query = Search.getSearchManager(cache).buildQueryBuilderForClass(NumericType.class).get().keyword().wildcard()
    .onField("name").matching("*nothing*").createQuery();
 cacheQuery = Search.getSearchManager(cache).getQuery(query);
 found = cacheQuery.list();
 assertEquals(2, found.size());
 assert found.contains(type2);
 assert found.contains(type4);
}

代码示例来源:origin: org.infinispan/infinispan-query

public void testAllExceptWithoutAnalyzer() {
 loadNumericTypes();
 Query subQuery = Search.getSearchManager(cache).buildQueryBuilderForClass(NumericType.class).get().keyword()
    .wildcard().onField("name").matching("*string*").createQuery();
 Query query = Search.getSearchManager(cache).buildQueryBuilderForClass(NumericType.class).get().all().except().createQuery();
 CacheQuery<Person> cacheQuery = Search.getSearchManager(cache).getQuery(query);
 List<Person> found = cacheQuery.list();
 assertEquals(3, found.size());
 assert found.contains(type1);
 assert found.contains(type2);
 assert found.contains(type3);
 query = Search.getSearchManager(cache).buildQueryBuilderForClass(NumericType.class).get().all().except(subQuery).createQuery();
 cacheQuery = Search.getSearchManager(cache).getQuery(query);
 found = cacheQuery.list();
 assertEquals(0, found.size());
}

代码示例来源:origin: hibernate/hibernate-search

private List<Clock> searchModel(String searchString, String tenantId) {
  FullTextSession session = Search.getFullTextSession( openSessionWithTenantId( tenantId ) );
  QueryBuilder queryBuilder = session.getSearchFactory().buildQueryBuilder().forEntity( Clock.class ).get();
  Query luceneQuery = queryBuilder.keyword().wildcard().onField( "brand" ).matching( searchString ).createQuery();
  Transaction transaction = session.beginTransaction();
  @SuppressWarnings("unchecked")
  List<Clock> list = session.createFullTextQuery( luceneQuery ).list();
  transaction.commit();
  session.clear();
  session.close();
  return list;
}

代码示例来源:origin: hibernate/hibernate-ogm

@Test
public void testSimpleEntityMassIndexing() throws Exception {
  {
    Session session = openSession();
    Transaction transaction = session.beginTransaction();
    Insurance insurance = new Insurance();
    insurance.setName( "Insurance Corporation" );
    session.persist( insurance );
    transaction.commit();
    session.clear();
    session.close();
  }
  {
    purgeAll( Insurance.class );
    startAndWaitMassIndexing( Insurance.class );
  }
  {
    FullTextSession session = Search.getFullTextSession( openSession() );
    QueryBuilder queryBuilder = session.getSearchFactory().buildQueryBuilder().forEntity( Insurance.class ).get();
    Query luceneQuery = queryBuilder.keyword().wildcard().onField( "name" ).matching( "ins*" ).createQuery();
    Transaction transaction = session.beginTransaction();
    @SuppressWarnings("unchecked")
    List<Insurance> list = session.createFullTextQuery( luceneQuery ).list();
    assertThat( list ).hasSize( 1 );
    assertThat( list.get( 0 ).getName() ).isEqualTo( "Insurance Corporation" );
    transaction.commit();
    session.clear();
    session.close();
  }
}

代码示例来源:origin: hibernate/hibernate-ogm

@SuppressWarnings("unchecked")
private void assertAssociatedElementsHaveBeenIndexed() throws Exception {
  FullTextEntityManager fullTextEm = Search.getFullTextEntityManager( createEntityManager() );
  fullTextEm.getTransaction().begin();
  QueryBuilder b = fullTextEm.getSearchFactory().buildQueryBuilder().forEntity( IndexedLabel.class ).get();
  {
    Query luceneQuery = b.keyword().wildcard().onField( "name" ).matching( "tes*" ).createQuery();
    List<IndexedLabel> labels = fullTextEm.createFullTextQuery( luceneQuery ).getResultList();
    assertThat( labels ).hasSize( 1 );
    assertThat( contains( labels, "test" ) ).isTrue();
  }
  {
    Query luceneQuery = b.keyword().wildcard().onField( "name" ).matching( "mas*" ).createQuery();
    List<IndexedLabel> labels = fullTextEm.createFullTextQuery( luceneQuery ).getResultList();
    assertThat( labels ).hasSize( 1 );
    assertThat( contains( labels, "massindex" ) ).isTrue();
  }
  fullTextEm.getTransaction().commit();
  fullTextEm.close();
}

代码示例来源:origin: hibernate/hibernate-ogm

private void assertEntityHasBeenIndexed() throws Exception {
  FullTextEntityManager fullTextEm = Search.getFullTextEntityManager( createEntityManager() );
  fullTextEm.getTransaction().begin();
  QueryBuilder queryBuilder = fullTextEm.getSearchFactory()
      .buildQueryBuilder()
      .forEntity( IndexedNews.class )
      .get();
  Query luceneQuery = queryBuilder.keyword().wildcard().onField( "newsId" ).ignoreFieldBridge().matching(
      "tit*"
  ).createQuery();
  @SuppressWarnings("unchecked")
  List<IndexedNews> list = fullTextEm.createFullTextQuery( luceneQuery ).getResultList();
  assertThat( list ).hasSize( 1 );
  List<IndexedLabel> labels = list.get( 0 ).getLabels();
  assertThat( labels ).hasSize( 2 );
  assertThat( contains( labels, "massindex" ) ).isTrue();
  assertThat( contains( labels, "test" ) ).isTrue();
  fullTextEm.getTransaction().commit();
  fullTextEm.close();
}

代码示例来源:origin: hibernate/hibernate-ogm

Query luceneQuery = queryBuilder.keyword().wildcard().onField( "newsId" ).ignoreFieldBridge().matching( "tit*" ).createQuery();
Transaction transaction = session.beginTransaction();
@SuppressWarnings("unchecked")

代码示例来源:origin: org.infinispan/infinispan-query

public void testAdditionOfNewNode() {
 for (int i = 0; i < 100; i++) {
   cache0.put("key" + i, new ClassWithLongIndexName("value" + i));
 }
 SearchManager sm2 = Search.getSearchManager(cache2);
 Query q = sm2.buildQueryBuilderForClass(ClassWithLongIndexName.class).get()
    .keyword().wildcard().onField("name").matching("value*").createQuery();
 CacheQuery<?> cq = sm2.getQuery(q, ClassWithLongIndexName.class);
 assertEquals(100, cq.getResultSize());
 addClusterEnabledCacheManager(getDefaultConfiguration());
 TestingUtil.waitForNoRebalance(cache(0), cache(1), cache(2), cache(3));
 SearchManager sm3 = Search.getSearchManager(cache(3));
 q = sm3.buildQueryBuilderForClass(ClassWithLongIndexName.class).get()
    .keyword().wildcard().onField("name").matching("value*").createQuery();
 cq = sm3.getQuery(q, ClassWithLongIndexName.class);
 assertEquals(100, cq.getResultSize());
}

相关文章

微信公众号

最新文章

更多