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的问题的任何意见? –