oym*_*oym 8 java spring dao hibernate
以下列方式命名DAO是否典型:
UserDAO - interface
UserDAOImpl - implements UserDAO
Run Code Online (Sandbox Code Playgroud)
我想知道它的标准是使用后缀'Impl'来实现,还是更有意义的东西是最佳实践.谢谢.
我见过两种惯例:
前者源于CORBA; 后者是Microsoft COM/.NET约定.(感谢Pascal的纠正.)
"不要重复DAO"是一个好主意.我个人认为这篇文章比它需要的更复杂.有一种方法可以在我不喜欢的发现者中反映出来.如果你使用Hibernate,通过示例查询可以很简单地完成它.界面看起来更像是这样的:
package persistence;
import java.io.Serializable;
import java.util.List;
public interface GenericDao<T, K extends Serializable>
{
T find(K id);
List<T> find();
List<T> find(T example);
List<T> find(String queryName, String [] paramNames, Object [] bindValues);
K save(T instance);
void update(T instance);
void delete(T instance);
}
Run Code Online (Sandbox Code Playgroud)
这通常是我使用的.如果您正在创建一个您希望其他人实现但您提供参考实现的接口,那么有时默认前缀DefaultUserDAO
会更有意义.
大多数时候我觉得这两个可以互换使用,但在某些情况下,一个提供了比另一个更清晰.
归档时间: |
|
查看次数: |
9079 次 |
最近记录: |