我使用Spring JPA + Hibernate Search在我的應用程序中實現持久性和搜索。Spring JPA + Hibernate搜索:如何僅更新搜索索引(Lucene)?
我有模特這樣
public class FeatureMeta {
@GeneratedValue(strategy=GenerationType.AUTO)
private Long id;
@Column(unique=true)
private String uri;
@Column
@Field
private String name;
@Field
@Column
private String businessDesc;
@Field
@Column
private String logicalDesc;
.
.
@Field
@Column(insertable=false,updatable=false)
private Long totalDownloads;
.
.
}
爲了讓這個類的想法,「FeatureMeta」保持其更新很少的元數據信息。
但是,無論何時用戶下載有關此「功能」的信息,字段「totalDownloads」都會不斷變化。 基本上「totalDownloads」不是元數據的一部分,但我必須將該字段放入模型中,因爲我需要在「特徵搜索」的搜索結果中顯示「totalDownloads」。
我使用相同的JPA Repository更新MySQL和Lucene索引。
我的問題是;只要更改「totalDownloads」字段,只能更新Lucene索引中的「totalDownloads」,而不更新MySQL中的實體嗎?
不希望堅持這種下載次數的原因是什麼?它存儲在其他地方嗎?如果是這樣,你的元數據和存儲這些信息的其他地方是否有關係?如果你沒有堅持到任何地方,索引被破壞的那一天(它會*發生),你將無法在「totalDownloads」字段中使用正確的數據重建它們...... –