我目前在我的(小)項目中使用分層體系結構,並考慮使用用於插入/更新/刪除方法的反射來擴展我的BaseRepository(類特定的存儲庫從中繼承)。分層體系結構 - 存儲庫和反射
我BaseRepository.java
看起來是這樣的:
public abstract class BaseRepository<CLASS extends BaseDomain<CLASS>>{
}
哪裏BaseDomain
就是:
public class BaseDomain<CLASS extends BaseDomain<CLASS>> {
private Long id;
//getters setts etc.
}
現在我的問題是在deleteById方法在BaseRepository:
public int deleteById(Connection connection, Long id) throws SQLException {
PreparedStatement delete= connection.prepareStatement("DELETE FROM ? WHERE id = ?");
delete.setObject(1, entity) //heres the problem, where do I get entity from?
delete.setObject(2, id);
return 0;
}
我的具體版本庫像這樣擴展了Base:
public class UserRepository extends BaseRepository<User>{
}
如何得到User
類的BaseRepository
所以我可以用它在刪除/更新等方法呢?
感謝您的幫助!
我不認爲你需要一個連接對象的方法的參數列表。 – kevinjom