我正在学习spring和hibernate,我使用IDEA来编辑我的项目,该项目显示无法解析"DetachedCriteria criteria = new DetachedCriteria.forClass(user.class);“中的符号'forClass‘。
我使用Spring5和Hibernate 5,我试着验证捕获并检查我的依赖项,但是没有用。但是我在它的源代码中找到了这个方法;
这是我的pom.xml的一部分
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-core</artifactId>
<version>5.4.1.Final</version>
</dependency>
<!-- https://mvnrepository.com/artifact/org.hibernate.validator/hibernate-validator -->
<dependency>
<groupId>org.hibernate.validator</groupId>
<artifactId>hibernate-validator</artifactId>
<version>6.0.16.Final</version>
</dependency>
<!-- https://mvnrepository.com/artifact/org.hibernate/hibernate-annotations -->
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-annotations</artifactId>
<version>3.5.6-Final</version>
</dependency>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-entitymanager</artifactId>
<version>5.4.1.Final</version>
</dependency>这就是我使用它的地方:
ApplicationContext applicationContext=(ApplicationContext) this.getServletContext().getAttribute(WebApplicationContext.ROOT_WEB_APPLICATION_CONTEXT_ATTRIBUTE);
userDao ud = (userDao) applicationContext.getBean("userDao");
**DetachedCriteria criteria = new DetachedCriteria.forClass(user.class);**
criteria.add(Restrictions.eq("name",a));
int id = 0;
List<?> l = ud.getHibernateTemplate().findByCriteria(criteria);


发布于 2019-05-20 19:58:49
您正在尝试使用方法而不是构造函数,因此您不需要new。
此外,如果对变量执行此操作,则应使用User.class或user.getClass()。
尝试以下操作。
DetachedCriteria criteria = DetachedCriteria.forClass(User.class);https://stackoverflow.com/questions/56220532
复制相似问题