Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/382.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 严重:org.hibernate.MappingException:命名查询未知:_Java_Spring_Hibernate - Fatal编程技术网

Java 严重:org.hibernate.MappingException:命名查询未知:

Java 严重:org.hibernate.MappingException:命名查询未知:,java,spring,hibernate,Java,Spring,Hibernate,在我的Entity类中,我调用了一个返回sys\u refcursor的oracle函数 @Entity @javax.persistence.NamedNativeQuery(name = "getEmp", query = "{ ? = call getemployees }", resultClass = Employees.class, hints = { @javax.persistence.QueryHint(name = "org.hibernat

在我的Entity类中,我调用了一个返回sys\u refcursor的oracle函数

    @Entity
    @javax.persistence.NamedNativeQuery(name = "getEmp", 
    query = "{ ? = call getemployees }", resultClass = Employees.class, hints = {
    @javax.persistence.QueryHint(name = "org.hibernate.callable", value = "true") })
    @Table(name = "EMPLOYEES")
    public class Employees {
我有一把刀

@Inject
    private SessionFactory sessionFactory;

    @Override
    public List<Employees> getEmployees() {

        List query = new ArrayList<Employees>();
         try{
         query = sessionFactory.getCurrentSession()
                .getNamedQuery("getEmp").list();
         }
         catch(Exception e){
             System.out.println("exception "+e.getMessage());
             e.printStackTrace();
         }
        return query;
    }
@Inject
私人会话工厂会话工厂;
@凌驾
公开名单{
列表查询=新建ArrayList();
试一试{
query=sessionFactory.getCurrentSession()
.getNamedQuery(“getEmp”).list();
}
捕获(例外e){
System.out.println(“异常”+e.getMessage());
e、 printStackTrace();
}
返回查询;
}
但是当我运行我的应用程序时,我得到了以下异常

名为查询的异常未知:getEmp 严重:org.hibernate.MappingException:命名查询未知:getEmp 位于org.hibernate.internal.AbstractSessionImpl.getNamedQuery(AbstractSessionImpl.java:149) 位于org.hibernate.internal.SessionImpl.getNamedQuery(SessionImpl.java:1257) 位于net.test.employees.dao.EmployeesDAO.getEmployees(EmployeesDAO.java:34) 在net.test.employees.service.EmployeesService.getEmployees(EmployeesService.java:24)


我如何解决这个问题?任何帮助都是非常值得的。

我通过在applicationContext.xml中添加以下内容解决了这个问题

<property name="annotatedClasses">  
          <list>
           <value>net.test.model.Employees</value>
           </list>  
           </property>

net.test.model.Employees