我有几个功能...
@Override
public List<ContentType> findAllContentTypes() {
return this.emf.createEntityManager()
.createNamedQuery("ContentType.findAll", ContentType.class)
.getResultList();
}
@Override
public List<Status> findAllStatus() {
return this.emf.createEntityManager()
.createNamedQuery("Status.findAll", Status.class)
.getResultList();
}
事实上,我有大约 12 个可以得到各种不同的东西。我想采用这些函数并制作一个通用函数来替换所有这些。
我能想到的最好方法是做类似findAll("Language")
. 我开始做...
public List<T> findAll(String objectName) {
return this.emf.createEntityManager()
.createNamedQuery(objectName+".findAll", objectName)
.getResultList();
}
问题(除了我的 IDE 不知道如何处理T
)是我不确定如何获取该字符串并将其传递给ContentType.class
.
我错过了什么阻止 Netbeans 识别T
?
会objectName
按照我将它作为第二个参数传递给的方式工作createNamedQuery()
吗?