org.hibernate.hql.internal.ast.QuerySyntaxException:未映射表

弗拉德·多布雷丁

我有示例Web应用程序Hibernate 4.3.5 + Derby数据库10.10.1.1+具有IDE NetBeans 8.0Beta的Glassfish4.0。

我有下一个例外:

Caused by: org.hibernate.hql.internal.ast.QuerySyntaxException: CUSTOMERV is not mapped
at org.hibernate.hql.internal.ast.util.SessionFactoryHelper.requireClassPersister(SessionFactoryHelper.java:189)
at org.hibernate.hql.internal.ast.tree.FromElementFactory.addFromElement(FromElementFactory.java:109)
at org.hibernate.hql.internal.ast.tree.FromClause.addFromElement(FromClause.java:95)
at org.hibernate.hql.internal.ast.HqlSqlWalker.createFromElement(HqlSqlWalker.java:331)
at org.hibernate.hql.internal.antlr.HqlSqlBaseWalker.fromElement(HqlSqlBaseWalker.java:3633)
at org.hibernate.hql.internal.antlr.HqlSqlBaseWalker.fromElementList(HqlSqlBaseWalker.java:3522)
at org.hibernate.hql.internal.antlr.HqlSqlBaseWalker.fromClause(HqlSqlBaseWalker.java:706)
at org.hibernate.hql.internal.antlr.HqlSqlBaseWalker.query(HqlSqlBaseWalker.java:562)
at org.hibernate.hql.internal.antlr.HqlSqlBaseWalker.selectStatement(HqlSqlBaseWalker.java:299)
at org.hibernate.hql.internal.antlr.HqlSqlBaseWalker.statement(HqlSqlBaseWalker.java:247)
at org.hibernate.hql.internal.ast.QueryTranslatorImpl.analyze(QueryTranslatorImpl.java:278)
at org.hibernate.hql.internal.ast.QueryTranslatorImpl.doCompile(QueryTranslatorImpl.java:206)
... 72 more 

来自index.xhtml的表格

<h:panelGrid id="panel1" columns="2" border="1"
                 cellpadding="5" cellspacing="1">
        <f:facet name="header">
            <h:outputText value="Add Customer Information"/>
        </f:facet>
        <h:outputLabel value="First Name:"/>
        <h:inputText value="#{customer.firstName}" id="fn"/>
        <h:outputLabel value="Last Name:"/>
        <h:inputText value="#{customer.lastName}" id="ln"/>
        <h:outputLabel value="Email:"/>
        <h:inputText value="#{customer.email}" id="eml"/>
        <h:outputLabel value="Date of Birth:"/>
        <h:inputText value="#{customer.sd}" id="s"/>
        <f:facet name="footer">
            <h:outputLabel value="#{customer.msg}" id="msg" styleClass="msg"/>
            <h:commandButton value="Save" action="#{customer.saveCustomer}">
            </h:commandButton>
        </f:facet>
    </h:panelGrid> 

客户.java

    package com.javaknowledge.entity;

    import com.javaknowledge.dao.CustomerDao;
    import java.text.ParseException;
    import java.text.SimpleDateFormat;
    import java.util.ArrayList;
    import java.util.Date;
    import java.util.List;
    import javax.faces.bean.ManagedBean;
    import javax.faces.bean.SessionScoped;
    import javax.persistence.*;    

    @ManagedBean
    @SessionScoped

    public class Customer implements java.io.Serializable {

    private Integer custId;
    private String firstName;
    private String lastName;
    private String email;
    private Date dob;
    private String sd, msg, selectedname;
    SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");


    public Customer() {
    }

    public Customer(String firstName, String lastName, String email, Date dob) {
        this.firstName = firstName;
        this.lastName = lastName;
        this.email = email;
        this.dob = dob;
    }

    public String getSd() {
        return sd;
    }

    public void setSd(String sd) {
        this.sd = sd;
    }

    public Integer getCustId() {
        return this.custId;
    }

    public void setCustId(Integer custId) {
        this.custId = custId;
    }

    public String getFirstName() {
        return this.firstName;
    }

    public void setFirstName(String firstName) {
        this.firstName = firstName;
    }

    public String getLastName() {
        return this.lastName;
    }

    public void setLastName(String lastName) {
        this.lastName = lastName;
    }
    @Column(name = "EMAIL")
    public String getEmail() {
        return this.email;
    }

    public void setEmail(String email) {
        this.email = email;
    }

    @Column(name = "DOB")
    public Date getDob() {
        return this.dob;
    }

    public void setDob(Date dob) {
        this.dob = dob;
    }

    public String getMsg() {
        return msg;
    }

    public void setMsg(String msg) {
        this.msg = msg;
    }

    public String getSelectedname() {
        return selectedname;
    }

    public void setSelectedname(String selectedname) {
        this.selectedname = selectedname;
    }

    public void saveCustomer() {
        try {
            Date d = sdf.parse(sd);
            System.out.println(d);
            this.dob = d;
        } catch (ParseException e) {
            e.printStackTrace();
        }
        CustomerDao dao = new CustomerDao();
        dao.addCustomer(this);
        this.msg = "Member Info Saved Successfull!";
        clearAll();
    }
    public void updateCustomer() {
        try {
            Date d = sdf.parse(sd);
            System.out.println(d);
            this.dob = d;
        } catch (ParseException e) {
            e.printStackTrace();
        }
        CustomerDao dao = new CustomerDao();
        dao.updateCustomer(this);
        this.msg = "Member Info Update Successfull!";
        clearAll();
    }
    public void deleteCustomer() {
        CustomerDao dao = new CustomerDao();
        dao.deleteCustomer(custId);
        this.msg = "Member Info Delete Successfull!";
        clearAll();
    }

    public List<Customer> getAllCustomers() {
        List<Customer> users = new ArrayList<Customer>();
        CustomerDao dao = new CustomerDao();
        users = dao.getAllCustomers();
        return users;
    }

    public void fullInfo() {
        CustomerDao dao = new CustomerDao();
        List<Customer> lc = dao.getCustomerById(selectedname);
        System.out.println(lc.get(0).firstName);
        this.custId = lc.get(0).custId;
        this.firstName = lc.get(0).firstName;
        this.lastName = lc.get(0).lastName;
        this.email = lc.get(0).email;
        this.dob = lc.get(0).dob;
        this.sd = sdf.format(dob);
    }

    private void clearAll() {
        this.firstName = "";
        this.lastName = "";
        this.sd = "";
        this.email = "";
        this.custId=0;
    }

   }

hibernate.cfg.xml

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-configuration PUBLIC "-//Hibernate/Hibernate Configuration DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
  <session-factory>
    <property name="hibernate.dialect">org.hibernate.dialect.DerbyDialect</property>
    <property name="hibernate.connection.driver_class">org.apache.derby.jdbc.ClientDriver</property>
    <property name="hibernate.connection.url">jdbc:derby://localhost:1527/derbyDB</property>
    <property name="hibernate.connection.username">user1</property>
    <property name="hibernate.connection.password">user1</property>
    <property name="hibernate.hbm2ddl.auto">create</property>

    <property name="c3p0.min_size">1</property>
    <property name="c3p0.max_size">5</property>
    <property name="c3p0.timeout">300</property>
    <property name="c3p0.max_statements">50</property>
    <property name="c3p0.idle_test_period">300</property>

    <mapping class="com.javaknowledge.entity.Customer" resource="com/javaknowledge/entity/Customer.hbm.xml"/>
  </session-factory>
</hibernate-configuration>

Customer.hbm.xml

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<hibernate-mapping>
  <class name="com.javaknowledge.entity.Customer" table="CUSTOMERV" schema="APP">
        <id name="custId" type="java.lang.Integer">
            <column name="cust_id" />
            <generator class="increment" />
        </id>
        <property name="firstName" type="string">
            <column name="first_name" length="45" not-null="true" />
        </property>
        <property name="lastName" type="string">
            <column name="last_name" length="45" not-null="true" />
        </property>
        <property name="email" type="string">
            <column name="email" length="45" not-null="true" />
        </property>
        <property name="dob" type="date">
            <column name="dob" length="10" not-null="true" />
        </property>
   </class>
</hibernate-mapping>
弗拉德·多布雷丁

最后我发现了一个错误!希望这对某人有用。对数据库(在我的情况下为Apache Derby)进行请求时,基本名称需要将首字母大写,小写。

这是错误的查询:

session.createQuery("select first_name from CUSTOMERV").

这是有效的查询

session.createQuery("select first_name from Customerv"). 

并且类实体必须与数据库同名,但是我不确定。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

org.hibernate.hql.internal.ast.QuerySyntaxException:未映射

来自分类Dev

Hibernate-org.hibernate.hql.internal.ast.QuerySyntaxException:客户端未映射

来自分类Dev

我有一个org.hibernate.hql.internal.ast.QuerySyntaxException:未映射异常

来自分类Dev

Spring,Spring数据JPA:org.hibernate.hql.internal.ast.QuerySyntaxException:测试未映射

来自分类Dev

Spring Boot org.hibernate.hql.internal.ast.QuerySyntaxException:未映射Utilisateur(使用MYSQL)

来自分类Dev

Spring Boot org.hibernate.hql.internal.ast.QuerySyntaxException:未映射Utilisateur(使用MYSQL)

来自分类Dev

我有一个org.hibernate.hql.internal.ast.QuerySyntaxException:未映射异常

来自分类Dev

org.hibernate.hql.internal.ast.QuerySyntaxException:意外令牌

来自分类Dev

org.hibernate.hql.internal.ast.QuerySyntaxException:未映射EdbmsEmployee [来自EdbmsEmployee edbmsEmployee,其中edbmsEmployee.employeeid =?]

来自分类Dev

org.hibernate.hql.internal.ast.QuerySyntaxException:无效路径:“ 1.id”

来自分类Dev

org.hibernate.hql.internal.ast.QuerySyntaxException:意外令牌:*第1行附近

来自分类Dev

org.hibernate.hql.internal.ast.QuerySyntaxException:无效路径:“ 1.id”

来自分类Dev

org.hibernate.hql.internal.ast.QuerySyntaxException:加入例外的预期路径

来自分类Dev

选择嵌套的Hibernate不可变对象会引发org.hibernate.hql.internal.ast.QuerySyntaxException:意外令牌:new

来自分类Dev

org.hibernate.hql.internal.ast.QuerySyntaxException:意外令牌:第1行,第81列附近的Apr

来自分类Dev

获取java.lang.IllegalArgumentException:org.hibernate.hql.internal.ast.QuerySyntaxException:运行查询后出现意外令牌

来自分类Dev

org.hibernate.hql.internal.ast.QuerySyntaxException:意外标记:第 1 行附近不同,第 17 列

来自分类Dev

org.hibernate.hql.ast.QuerySyntaxException:意外令牌:

来自分类Dev

如何解决org.hibernate.hql.ast.QuerySyntaxException:异常

来自分类Dev

没有节点的数据类型:org.hibernate.hql.internal.ast.tree.IdentNode HQL

来自分类Dev

org.hibernate.hql.internal.ast.QuerySyntaxException:期望打开,在第 1 行第 23 列附近找到“来自”[从 OTP 插入 BackupOTP]

来自分类Dev

org.hibernate.hql.ast.QuerySyntaxException:无法在类上找到适当的构造函数

来自分类Dev

java.lang.IllegalArgumentException:org.hibernate.hql.ast.QuerySyntaxException MS-SQL服务器

来自分类Dev

是什么在JMAP堆转储org.hibernate.hql.internal.ast.tree.Node手段

来自分类Dev

org.hibernate.hql.ast.QuerySyntaxException:在第1行第102列附近[FROM com.strutsProject.dto.EventClubTb

来自分类Dev

org.hibernate.hql.internal.QueryExecutionRequestException:DML操作不支持[插入到

来自分类Dev

无法实例化QueryTranslatorFactory:org.hibernate.hql.internal.classic.ClassicQueryTranslatorFactory

来自分类Dev

Hibernate QuerySyntaxException,表未映射

来自分类Dev

hql.ast.QuerySyntaxException:运行查询的意外令牌

Related 相关文章

  1. 1

    org.hibernate.hql.internal.ast.QuerySyntaxException:未映射

  2. 2

    Hibernate-org.hibernate.hql.internal.ast.QuerySyntaxException:客户端未映射

  3. 3

    我有一个org.hibernate.hql.internal.ast.QuerySyntaxException:未映射异常

  4. 4

    Spring,Spring数据JPA:org.hibernate.hql.internal.ast.QuerySyntaxException:测试未映射

  5. 5

    Spring Boot org.hibernate.hql.internal.ast.QuerySyntaxException:未映射Utilisateur(使用MYSQL)

  6. 6

    Spring Boot org.hibernate.hql.internal.ast.QuerySyntaxException:未映射Utilisateur(使用MYSQL)

  7. 7

    我有一个org.hibernate.hql.internal.ast.QuerySyntaxException:未映射异常

  8. 8

    org.hibernate.hql.internal.ast.QuerySyntaxException:意外令牌

  9. 9

    org.hibernate.hql.internal.ast.QuerySyntaxException:未映射EdbmsEmployee [来自EdbmsEmployee edbmsEmployee,其中edbmsEmployee.employeeid =?]

  10. 10

    org.hibernate.hql.internal.ast.QuerySyntaxException:无效路径:“ 1.id”

  11. 11

    org.hibernate.hql.internal.ast.QuerySyntaxException:意外令牌:*第1行附近

  12. 12

    org.hibernate.hql.internal.ast.QuerySyntaxException:无效路径:“ 1.id”

  13. 13

    org.hibernate.hql.internal.ast.QuerySyntaxException:加入例外的预期路径

  14. 14

    选择嵌套的Hibernate不可变对象会引发org.hibernate.hql.internal.ast.QuerySyntaxException:意外令牌:new

  15. 15

    org.hibernate.hql.internal.ast.QuerySyntaxException:意外令牌:第1行,第81列附近的Apr

  16. 16

    获取java.lang.IllegalArgumentException:org.hibernate.hql.internal.ast.QuerySyntaxException:运行查询后出现意外令牌

  17. 17

    org.hibernate.hql.internal.ast.QuerySyntaxException:意外标记:第 1 行附近不同,第 17 列

  18. 18

    org.hibernate.hql.ast.QuerySyntaxException:意外令牌:

  19. 19

    如何解决org.hibernate.hql.ast.QuerySyntaxException:异常

  20. 20

    没有节点的数据类型:org.hibernate.hql.internal.ast.tree.IdentNode HQL

  21. 21

    org.hibernate.hql.internal.ast.QuerySyntaxException:期望打开,在第 1 行第 23 列附近找到“来自”[从 OTP 插入 BackupOTP]

  22. 22

    org.hibernate.hql.ast.QuerySyntaxException:无法在类上找到适当的构造函数

  23. 23

    java.lang.IllegalArgumentException:org.hibernate.hql.ast.QuerySyntaxException MS-SQL服务器

  24. 24

    是什么在JMAP堆转储org.hibernate.hql.internal.ast.tree.Node手段

  25. 25

    org.hibernate.hql.ast.QuerySyntaxException:在第1行第102列附近[FROM com.strutsProject.dto.EventClubTb

  26. 26

    org.hibernate.hql.internal.QueryExecutionRequestException:DML操作不支持[插入到

  27. 27

    无法实例化QueryTranslatorFactory:org.hibernate.hql.internal.classic.ClassicQueryTranslatorFactory

  28. 28

    Hibernate QuerySyntaxException,表未映射

  29. 29

    hql.ast.QuerySyntaxException:运行查询的意外令牌

热门标签

归档