java - Hibernate 命名查询不知道错误

标签 java spring hibernate

我不知道为什么,但是当我将此项目导入 Eclipse 时。这个效果很好。

所以,我认为这是eclipse项目导入InteliJ IDEA时的问题

<小时/>

这并不像我想象的那么容易。

我有类Setting和Setting.hbm.xml用于映射hibernate。 在本类(class)中:

<hibernate-mapping>
<class name="Setting" table="setting" lazy="false">
    <id name="id" column="id" type="integer">
        <generator class="increment" />
    </id>

    .....
</class>

<query name="select.setting">
    from Setting as s where s.id = ? order by s.name
</query>

现在,当我调用函数时

this.getHibernateTemplate().findByNamedQuery("select.setting", params);

此返回错误

org.springframework.orm.hibernate4.HibernateSystemException: Named query not known: select.setting; nested exception is org.hibernate.MappingException: Named query not known: select.setting
at org.springframework.orm.hibernate4.SessionFactoryUtils.convertHibernateAccessException(SessionFactoryUtils.java:218) ~[spring-orm-4.1.6.RELEASE.jar:4.1.6.RELEASE]
at org.springframework.orm.hibernate4.HibernateTemplate.doExecute(HibernateTemplate.java:343) ~[spring-orm-4.1.6.RELEASE.jar:4.1.6.RELEASE]
at org.springframework.orm.hibernate4.HibernateTemplate.executeWithNativeSession(HibernateTemplate.java:308) ~[spring-orm-4.1.6.RELEASE.jar:4.1.6.RELEASE]
at org.springframework.orm.hibernate4.HibernateTemplate.findByNamedQuery(HibernateTemplate.java:933) ~[spring-orm-4.1.6.RELEASE.jar:4.1.6.RELEASE]

请大家给点建议。

最佳答案

你可以尝试一下。

<query name="select.setting">
    <![CDATA[from Setting as s where s.id = ? order by s.name]]>
</query>

关于java - Hibernate 命名查询不知道错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34039689/

相关文章:

java - 如何在 hibernate 中保存之前获取自动生成的字段

java - 使用 C3P0 和 Postgresql 的 Hibernate 连接

java - SwingWorker 从不返回任何东西? (java)

spring boot tomcat J2EE预认证认证

java - Action servlet?

java - 为什么 HATEOAS 在使用 Swagger 2.x 启动期间开始为 spring-boot 版本 >= 2.2.x 创建问题?

java - Netbeans java 应用程序 - 在 MySql 数据库上执行查询

java - 谷歌端点前端

java - 如何在 Java 7 中使用 AndroidStudio 和 DDMS Monitor

java - @Where 注释在子表上 hibernate