hutiefang 2014-04-25 08:22
浏览 1543

hiberante4.3.5 session.get()报错

Exception in thread "main" org.hibernate.MappingException: Unknown entity: ProdTaMasterEntity
at org.hibernate.internal.SessionFactoryImpl.getEntityPersister(SessionFactoryImpl.java:1096)
at org.hibernate.internal.SessionImpl.locateEntityPersister(SessionImpl.java:2565)
at org.hibernate.internal.SessionImpl.access$1900(SessionImpl.java:176)
at org.hibernate.internal.SessionImpl$IdentifierLoadAccessImpl.(SessionImpl.java:2504)
at org.hibernate.internal.SessionImpl$IdentifierLoadAccessImpl.(SessionImpl.java:2495)
at org.hibernate.internal.SessionImpl.byId(SessionImpl.java:1038)
at org.hibernate.internal.SessionImpl.get(SessionImpl.java:960)
at frank.hu.webHibernate.dao.TaMasterDao.getById(TaMasterDao.java:39)
at frank.hu.webHibernate.dao.TaMasterDao.main(TaMasterDao.java:45)

问题在于我的list方法正常执行无任何错误get就不行 什么原因
方法如下。

  public List<ProdTaMasterEntity> list(){
      Session session=  sessionFactory.openSession();
      logger.info("openSession");
      logger.debug("openSession");
      logger.warn("wwwwwwww");
      logger.error("eeeeeeeeee");
      Query query=  session.createQuery("from ProdTaMasterEntity" );

      List<ProdTaMasterEntity> list=      query.list();
      session.close();
      logger.debug("close Session");
     // sessionFactory.close();
      return list;

  }

  public ProdTaMasterEntity getById(String id){
      Session session=  sessionFactory.openSession();
      ProdTaMasterEntity ta=      (ProdTaMasterEntity) session.get("ProdTaMasterEntity", id);
    //  session.close();
      return ta;
  }
  public static void main(String[] args) {
      TaMasterDao tmd=new TaMasterDao();
      tmd.getById("1205020129");
}

我是使用的注解
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.Table;

import java.util.Date;

/**

  • ProdTaMaster generated by hbm2java
    */
    @Entity
    @Table(name = "PROD_TA_MASTER")
    public class ProdTaMasterEntity implements java.io.Serializable {

    // Fields

    /**

    • */ private static final long serialVersionUID = -8968765405025406974L; @Id @Column @GeneratedValue( strategy=GenerationType.AUTO
      ) private String tmTaNo;

其他只有getset方法

如果改为 (ProdTaMasterEntity) session.get(ProdTaMasterEntity.class, id);又正确了。

  • 写回答

0条回答

    报告相同问题?

    悬赏问题

    • ¥15 一道python难题2
    • ¥15 一道python难题
    • ¥15 用matlab 设计一个不动点迭代法求解非线性方程组的代码
    • ¥15 牛顿斯科特系数表表示
    • ¥15 arduino 步进电机
    • ¥20 程序进入HardFault_Handler
    • ¥15 oracle集群安装出bug
    • ¥15 关于#python#的问题:自动化测试
    • ¥20 问题请教!vue项目关于Nginx配置nonce安全策略的问题
    • ¥15 教务系统账号被盗号如何追溯设备