【发布时间】:2014-07-31 07:03:52
【问题描述】:
我不知道作为 (Class clazz) 参数传递什么。我描述了我的项目:
我在以下方法中有一个 GenericDAO.jave 文件:
public <T> T find(Class<T> clazz, Serializable id) {
return entityManager.find(clazz, id);
}
从mysql表通过JPA生成的类名为Idioma,有palabra和idioma两个属性。
-
为了询问“playa”是否在我的桌子上,我需要使用上述方法。为了从另一个文件调用这个方法,我创建了以下变量来访问我的 GenericDao.java 文件:
私有 GenericDao myDao;
-
然后,我还创建了以下方法:
public void findsAndReadsExistingIdiomaByPalabra() throws Exception { Idioma miIdioma; miIdioma=miDao.find(**clazz**, "playa")}
我的疑问是:
我不知道用 clazz 写什么。有人可以帮我吗?如果您需要有关我的项目的更多信息,请随时询问。
提前致谢
【问题讨论】:
-
JPA 为您提供的魔法称为反射,让您(或 JPA)在运行时检查类和对象。 (见docs.oracle.com/javase/tutorial/reflect)
标签: generics jpa persistence dao