org.hibernate.hql.internal.ast.QuerySyntaxException: таблица не сопоставлена ​​[из таблицы X] - PullRequest
0 голосов
/ 09 мая 2019

Это Exception Я получаю в своем коде:

org.hibernate.hql.internal.ast.QuerySyntaxException: product is not mapped [from Product]

Эта часть является проблемным кодом.

@SuppressWarnings("unchecked")
public List<Product> getProducts() {

    Session session = sessionFactory.getCurrentSession();

    Query query = session.createQuery("from product");
    List<Product> productList = query.list();
}

Я пытался сделать следующее:

1)

Query query = session.createQuery("from product");

Change => "из продукта" но это ничего не меняет

2) Изменение

List<Product> result = (List<User>) session.createQuery("from Product").list();
session.getTransaction().commit();
return result;

но это тоже ничего не меняет !!

Это полный код

package kr.ac.hansung.cse.dao;

import java.util.List;    
import org.hibernate.query.Query;    
import org.hibernate.Session;    
import org.hibernate.SessionFactory;    
import org.springframework.beans.factory.annotation.Autowired;    
import org.springframework.stereotype.Repository;    
import org.springframework.transaction.annotation.Transactional;    
import kr.ac.hansung.cse.model.Product;

@Repository    
@Transactional    
public class ProductDao {

    @Autowired
    private SessionFactory sessionFactory;

    @SuppressWarnings("unchecked")
    public List<Product> getProducts() {

        Session session = sessionFactory.getCurrentSession();
        Query query = session.createQuery("from product");
        List<Product> productList = query.list();

        return productList;
    }

    public Product getProductById(int id) {
        Session session = sessionFactory.getCurrentSession();
        Product product = (Product) session.get(Product.class, id);

        return product;
    }

    public void addProduct(Product product) {

        Session session = sessionFactory.getCurrentSession();
        session.saveOrUpdate(product);
        session.flush(); 

    }

    public void deleteProduct(Product product) {
        Session session = sessionFactory.getCurrentSession();
        session.delete(product);
        session.flush();
    }

    public void updateProduct(Product product) {

        Session session = sessionFactory.getCurrentSession();
        session.saveOrUpdate(product);
        session.flush(); 

    }

}

HTTP Status 500 - Внутренняя ошибка сервера java.lang.IllegalArgumentException: org.hibernate.hql.internal.ast.QuerySyntaxException: продукт не сопоставлен [из продукта]

...