ファイルの内容をインデックスに追加
1409 ワード
前回はhibernate searchを使用したドキュメントの説明ですが、bridgeを使用してpojoプロパティに格納された値を前処理する方法、すなわちインデックスファイルに追加する前にsetが格納された値をbridgeにジャンプして処理し、戻ってきた結果を分詞インデックスを行う値として使用する方法について簡単に説明しました.アップロードしたファイルの内容をインデックスに追加するのを使用しています.ここでは、ファイルの内容がデータベースに格納される前にバイナリストリームに変換されるためです(byte[]dateなど、@Lobタグが追加されています).私のファイルはFilesクラスに入っていて、ファイルの内容とファイルのバージョンと関連Filesというクラスを保存するためのFileVersionsクラスもあります.
どうしてこのように設計して、私も分からないで、私は途中で引き継いだので、その中の論理を変えませんでした.
public class FileVersion implements java.io.Serializable {
どうしてこのように設計して、私も分からないで、私は途中で引き継いだので、その中の論理を変えませんでした.
public class FileVersion implements java.io.Serializable {
。。。
/** **/
private float version = 0.1f;
/** **/
private int fileSize = 0;
/** **/
private java.util.Date updateDate = new java.util.Date();
/** **/
@Column(name = "DESCRIPTION", length = 255)
private String description;
/**
*
*/
@Basic(fetch = FetchType.LAZY)
@Column(name = "CONTENT", nullable = true)
@Lob
@FieldBridge(impl=org.edu.scut.lab24.search.bridge.HandlerBridge.class)
@Field(name = "data", index = Index.TOKENIZED, store = Store.NO)
private byte[] data;
/** **/
@ManyToOne(optional = true, fetch = FetchType.LAZY)
@JoinColumn(name = "FILEID", nullable = false)
@IndexedEmbedded(prefix="fileVersion_file_", depth=1)
private Files files;
}