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 sqlite 附加(attach database)加密数据库时,返回26是什么原因呢?
    • ¥88 找成都本地经验丰富懂小程序开发的技术大咖
    • ¥15 如何处理复杂数据表格的除法运算
    • ¥15 如何用stc8h1k08的片子做485数据透传的功能?(关键词-串口)
    • ¥15 有兄弟姐妹会用word插图功能制作类似citespace的图片吗?
    • ¥200 uniapp长期运行卡死问题解决
    • ¥15 latex怎么处理论文引理引用参考文献
    • ¥15 请教:如何用postman调用本地虚拟机区块链接上的合约?
    • ¥15 为什么使用javacv转封装rtsp为rtmp时出现如下问题:[h264 @ 000000004faf7500]no frame?
    • ¥15 乘性高斯噪声在深度学习网络中的应用