Java Hibernate-org.Hibernate.hql.internal.ast.QuerySyntaxException:未映射产品

Java Hibernate-org.Hibernate.hql.internal.ast.QuerySyntaxException:未映射产品,java,hibernate,Java,Hibernate,我在尝试对数据库进行测试查询时遇到此错误。我引用java类而不是表名,但它没有帮助。也添加了到cfg.xml的映射,但没有成功。原因可能是什么 hibernate.cfg.xml <?xml version="1.0" encoding="utf-8"?> <!DOCTYPE hibernate-configuration SYSTEM "http://www.hibernate.org/dtd/hibernate-configuration-3.0.dtd"> &l

我在尝试对数据库进行测试查询时遇到此错误。我引用java类而不是表名,但它没有帮助。也添加了到cfg.xml的映射,但没有成功。原因可能是什么

hibernate.cfg.xml

<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE hibernate-configuration SYSTEM 
"http://www.hibernate.org/dtd/hibernate-configuration-3.0.dtd">

<hibernate-configuration>
   <session-factory>
   <property name="hibernate.dialect">
      org.hibernate.dialect.MySQLDialect
   </property>
   <property name="hibernate.connection.driver_class">
      com.mysql.jdbc.Driver
   </property>
   <property name="hibernate.connection.url">
      jdbc:mysql://localhost:3306/michal
   </property>
   <property name="hibernate.connection.username">
      root
   </property>
   <property name="hibernate.connection.password">
      root
   </property>

   <property name="hibernate.hbm2ddl.auto">
   </property>

   <!-- List of XML mapping files -->

   <mapping package="regularmikey.DatabaseSingleton"/>
   <mapping class="regularmikey.DatabaseSingleton.Product" />

</session-factory>
</hibernate-configuration>
DBSession.java

package regularmikey.DatabaseSingleton;

import org.hibernate.SessionFactory;
import org.hibernate.boot.registry.StandardServiceRegistryBuilder;
import org.hibernate.cfg.Configuration;
import org.hibernate.service.ServiceRegistry;

public class DBSession {

    private static DBSession dbSession = null;
    private SessionFactory sessionFactory = null;

    private DBSession(){
        Configuration configuration = new Configuration().configure();
        ServiceRegistry serviceRegistry
            = new StandardServiceRegistryBuilder()
                .applySettings(configuration.getProperties()).build();


        sessionFactory = (configuration.buildSessionFactory(serviceRegistry)); 

    };


    public static DBSession getInstance() 
    {
        if(dbSession == null) {
            dbSession = new DBSession();
        }

        return dbSession;
    }


    public SessionFactory getSessionFactory() {
        return sessionFactory;
    }



}
App.java

package regularmikey.DatabaseSingleton;

import java.util.Iterator;
import java.util.List;

import org.hibernate.HibernateException;
import org.hibernate.Session;
import org.hibernate.Transaction;

public class App 
{
    public static void main( String[] args )
    {
        DBSession dbFactory = DBSession.getInstance();

        Session session = dbFactory.getSessionFactory().openSession();
        Transaction tx = null;
        try{
           tx = session.beginTransaction();
           List products = session.createQuery("FROM Product").list(); 
           for (Iterator iterator = 
                             products.iterator(); iterator.hasNext();){
              Product product = (Product) iterator.next(); 
              System.out.print("Name: " + product.getName()); 
              System.out.print("Alloy: " + product.getAlloy()); 
              System.out.println("Weight: " + product.getWeight()); 
           }
           tx.commit();
        }catch (HibernateException e) {
           if (tx!=null) tx.rollback();
           e.printStackTrace(); 
        }finally {
           session.close(); 
        }
    }
}

将其添加到您的
hibernate.cfg.xml
-
true
中,并检查日志记录,如您的schema generator属性设置不正确。请将您的
hibernate.hbm2ddl.auto
更改为以下
create
,并返回问题是否已解决。@Bonifacio可惜没有帮助
package regularmikey.DatabaseSingleton;

import java.util.Iterator;
import java.util.List;

import org.hibernate.HibernateException;
import org.hibernate.Session;
import org.hibernate.Transaction;

public class App 
{
    public static void main( String[] args )
    {
        DBSession dbFactory = DBSession.getInstance();

        Session session = dbFactory.getSessionFactory().openSession();
        Transaction tx = null;
        try{
           tx = session.beginTransaction();
           List products = session.createQuery("FROM Product").list(); 
           for (Iterator iterator = 
                             products.iterator(); iterator.hasNext();){
              Product product = (Product) iterator.next(); 
              System.out.print("Name: " + product.getName()); 
              System.out.print("Alloy: " + product.getAlloy()); 
              System.out.println("Weight: " + product.getWeight()); 
           }
           tx.commit();
        }catch (HibernateException e) {
           if (tx!=null) tx.rollback();
           e.printStackTrace(); 
        }finally {
           session.close(); 
        }
    }
}