Ошибка отображения спящего режима из-за этого исключения. org.hibernate.hql.internal.ast.QuerySyntaxException - PullRequest
0 голосов
/ 17 марта 2019

Я пытаюсь получить информацию о пользователе по идентификатору из таблицы 'User_Details'.

Но, это дает исключение, я знаю, что это просто, но я пытаюсь сделать это с помощью пула соединений HikariCP. Нужна помощь в разрешении.

У меня только 2 столбца в этой таблице:

  1. ID
  2. ИМЯ

Это Pojo Entity Mapping:

package com.example.model;
import java.io.Serializable;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.Table;

@Entity
@Table(name = "USER_DETAILS")
public class UserDetails implements Serializable {

private static final long serialVersionUID = 1L;
//Mapping Unique ID
@Id 
@GeneratedValue(strategy = GenerationType.AUTO)
@Column(name = "ID", nullable = false)
private int id;
//User Name For Employee
@Column(name = "NAME", nullable = false )
private String name;
// getters and setters    
}

Отображение исключения:

   > org.hibernate.hql.internal.ast.QuerySyntaxException: UserDetails is
   > not mapped at org.hibernate.hql.internal.ast.util.SessionFactoryHelper.requireClassPersister(SessionFactoryHelper.java:171)~[na:1.8.0_131]

Из UserDetailsDaoImpl я пытаюсь получить детали.

package com.example.repository;

import java.util.List;
import org.hibernate.Query;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.stereotype.Repository;
import org.springframework.transaction.annotation.Transactional;
import com.example.model.UserDetails;

@Repository
@Transactional
public class UserDaoImpl {


@Autowired
@Qualifier("sessionFactory")
SessionFactory sessionFactory;

public UserDetails getUser(int id){
    UserDetails userDetails = null;
    Session s = sessionFactory.getCurrentSession();

    Query q = s.createQuery("From UserDetails Where id =:id ").setParameter("id", id);
    List<UserDetails> u = q.list();
    if(!u.isEmpty()){
        userDetails = u.get(0);
    }
    return userDetails!= null? userDetails : null;
    }
  }
...