服用JpaDao
类的在这个article规定的非常具体的例子:在Java中使用泛型编写什么单元测试?
public abstract class JpaDao<K, E> implements Dao<K, E> {
protected Class<E> entityClass;
@PersistenceContext
protected EntityManager entityManager;
public JpaDao() {
ParameterizedType genericSuperclass = (ParameterizedType) getClass().getGenericSuperclass();
this.entityClass = (Class<E>) genericSuperclass.getActualTypeArguments()[1];
}
public void persist(E entity) { entityManager.persist(entity); }
public void remove(E entity) { entityManager.remove(entity); }
public E findById(K id) { return entityManager.find(entityClass, id); }
}
会是最好写在应用程序中所有的现有实体(Order
,Customer
,图书等)的单元测试,还是仅仅为一个实体编写单元测试是可以接受的,正如other question所暗示的那样?有没有关于使用泛型的单元测试Java类的最佳做法?