최대 절전 모드 검색을 사용하고 있습니다. 문제는 내가 검색이 문자열을 수행 할 때이다 :최대 절전 모드 검색 : 토큰없는 쿼리
"L"
을 내가없는 결과를 ...이 나는 ...이 함께
"리터 *"
을 시도하는 경우결과는 다음과 같습니다
"Lampada 어쩌구 저쩌구" "람 피오 네 섬 어쩌구 어쩌구 저쩌구" "로스트"
티 의 내 POJO입니다
@Id @GeneratedValue
@DocumentId
private Long id;
@Field(index=Index.TOKENIZED, store=Store.YES)
private String nome;
@Field(index=Index.TOKENIZED,store=Store.YES, termVector=TermVector.YES)
private String descrizione;
@Column(length=30)
public String getNome() {
return nome;
}
public void setNome(String nome) {
this.nome = nome;
}
@Column(length=100)
public String getDescrizione() {
return descrizione;
}
public void setDescrizione(String descrizione) {
this.descrizione = descrizione;
}
public Long getId() {
return id;
}
public void setId(Long id) {
this.id = id;
}
@Override
public String toString() {
return String.format("(%s) %s: %s", id, nome, descrizione);
}
이 내 자바 클래스입니다 :
Session session = super.session();
List result = new ArrayList();
luceneSession = Search.getFullTextSession(session);
String[] fields = (String[]) boostsNField.keySet().toArray(new String[boostsNField.keySet().size()]);
QueryParser parser = new MultiFieldQueryParser(Version.LUCENE_30, fields, new StandardAnalyzer(Version.LUCENE_30), boostsNField);
StandardAnalyzer analyzer = new StandardAnalyzer(Version.LUCENE_30);
try {
Query luceneQuery = parser.parse(queryString);
org.hibernate.Query fullTextQuery = luceneSession.createFullTextQuery(luceneQuery); // E' possibile scegliere impostare il class da ricercare
result = fullTextQuery.list();
} catch (ParseException e) {
문제가?!?!?
더 자세히 알려 줄 수 있습니까? 특히 다음과 같습니다. 현재 데이터 쿼리가 예상되는 출력, 현재 출력되고 있습니다. –