kundera を使用して、hbase に格納されるデータ モデルを定義しています。「Task」と呼ばれるクラスがあり、次のような一般的なタイプの送信が必要です。
public class Task {
...
Object submission;
}
私はそれを一般的なものにしたいので、提出物はどんなタイプでもかまいません。
私の質問は次のとおりです。1.上記の方法は良い方法ですか?それはうまくいきますか?2.これを達成するための最良の方法は何ですか?
ジェネリック型を持つことは良い考えです。はい、うまくいくはずです。ただし、提供したタイプはジェネリックではありません。ジェネリック型の例を次に示します。
public class Task<T> {
T submission;
// You can now use T as a class (but not with `new` or some other things)
public T getSubmission() { return submission; }
public void setSubmission(T new) { submission = new; }
public Task(T t) { setSubmission(t); }
// etc.
}
次に、特定のタイプの を作成できますTask
。たとえば、次のようになります。
Task<String> stringTask = new Task<String>("hello");
詳細については、ジェネリック チュートリアルをご覧ください。