私はinsert、updatesメソッドを記述しており、汎用引数をメソッドパラメータとして使用しようとしています。以下は私が今までにセイロンで書いたコードであり、よくコンパイルされています。JOOQ - データベース操作を一般化する方法
shared void insert<R>(DSLContext ctx, Table<R&Record> table, Set<TableField<R&Record, Object>> fields, Set<Object> values){
ctx.insertInto(table).columns(fields).values(values).execute();
}
メソッド呼び出しの一部としてフィールドと値を渡したいと思います。それはフィールドがTableFieldに異なる一般的なパラメータを持っていることは明らかであるように、私はHashSetの中で、これらのパラメータを追加する方法があるかどうかを知りたい
public class TblGuest extends TableImpl<TblGuestRecord> {
public final TableField<TblGuestRecord, Integer> id ....
public final TableField<TblGuestRecord, String> guestName...
}
..:私はとJOOQによって生成されたクラスをしましたSet<TableField<GuestRecord,Object>> fields = HashSet<TableField<GuestRecord,Object>>();
TableField<GuestRecord,Object>
を除いてTableField<GuestRecord,????>
を追加すると、もちろんコンパイル例外が発生します。しかし、これを達成する方法はありますか?
。 –