IllegalArgumentException: org.hibernate.hql.internal.ast.QuerySyntaxException: ClassName 未映射
IllegalArgumentException: org.hibernate.hql.internal.ast.QuerySyntaxException: ClassName is not mapped
我在 Spring MVC 中收到此错误:
Request processing failed; nested exception is java.lang.IllegalArgumentException:
org.hibernate.hql.internal.ast.QuerySyntaxException: SampleClass is
not mapped sampleClass.
下面是我的 DaoClass
函数,我将 SampleClass
映射到 SampleClass
table
@Autowired
private SessionFactory sessionFactory;
@Transactional
public List<SampleClass> getData()
{
Session session = sessionFactory.getCurrentSession();
List <SampleClass> sampleClass = session.createQuery("from SampleClass",SampleClass.class).list();
return sampleClass;
}
甚至 table 名称和列名都与 sampleClass 属性.
相同
在示例class中,我使用注释进行映射:
@Data
@Entity
public class SampleClass {
@Getter
@Setter
@Id
private int id;
@Getter
@Setter
private String aname;
}
我经历了很多解决方案,但没有解决我的问题。
是否存在与依赖版本相关的问题?
还有一件事 @Entity
显示已弃用任何其他替代方案?
One more thing @Entity is showing deprecated any other alternative?
您似乎使用 org.hibernate.annotations.Entity
而不是 javax.persistence.Entity
。
因此,以这种方式更正您的映射:
import javax.persistence.Entity;
@Entity
public class SampleClass {
}
我在 Spring MVC 中收到此错误:
Request processing failed; nested exception is java.lang.IllegalArgumentException: org.hibernate.hql.internal.ast.QuerySyntaxException: SampleClass is not mapped sampleClass.
下面是我的 DaoClass
函数,我将 SampleClass
映射到 SampleClass
table
@Autowired
private SessionFactory sessionFactory;
@Transactional
public List<SampleClass> getData()
{
Session session = sessionFactory.getCurrentSession();
List <SampleClass> sampleClass = session.createQuery("from SampleClass",SampleClass.class).list();
return sampleClass;
}
甚至 table 名称和列名都与 sampleClass 属性.
相同在示例class中,我使用注释进行映射:
@Data
@Entity
public class SampleClass {
@Getter
@Setter
@Id
private int id;
@Getter
@Setter
private String aname;
}
我经历了很多解决方案,但没有解决我的问题。
是否存在与依赖版本相关的问题?
还有一件事 @Entity
显示已弃用任何其他替代方案?
One more thing @Entity is showing deprecated any other alternative?
您似乎使用 org.hibernate.annotations.Entity
而不是 javax.persistence.Entity
。
因此,以这种方式更正您的映射:
import javax.persistence.Entity;
@Entity
public class SampleClass {
}