0
我發現這個代碼的通用DAO接口,而隨便逛逛:爲什麼在通用DAO接口中使用默認訪問方法?
public interface GenericDAO<T, ID extends Serializable> {
Class<T> getEntityClass();
T findById(final ID id);
List<T> findAll();
List<T> findByExample(final T exampleInstance);
List<T> findByNamedQuery(
final String queryName,
Object... params
);
List<T> findByNamedQueryAndNamedParams(
final String queryName,
final Map<String, ?extends Object> params
);
int countAll();
int countByExample(final T exampleInstance);
T save(final T entity);
boolean delete(final T entity);
}
沒有任何理由特別離開與默認訪問修飾符的方法(類/包:是的,子類/世界:沒有)?
P.S:還有一個問題。 ID是否通常在不依賴於RDBMS(XML,平面文件...)的實現中找到?
+1,spot on。爲了增加它,接口方法隱式爲'public',而字段爲'public''static'' final' – adarshr
你是對的。我完全忘記了這個事實。 @adarshr:我還沒有遇到接口中的字段。以下主題指出它們作爲常量:http://www.coderanch.com/t/408233/java/java/Instance-variables-interface –
順便說一下,有關有關ID的問題的任何意見? –