我想通过Id删除一条记录。Id是自增的。我用session.delete(id)。没删除成功出现了这个问题org.hibernate.MappingException: Unknown entity: java.lang.Integer

解决方案 »

  1.   

    这个。。这个
    这也太明白了吧。。还是学习一下HIBERNATE的几种状态吧。还有几个主要的操作方法。
      

  2.   

    session.delete(session.get(id)) 
      

  3.   

    hibernate映射文件对字段的类型设置与java baean实体中的数据类型映射不匹配。
    还是你传的参数是String的。与Integer不匹配。
      

  4.   

    好像是session.delete(Object o)吧,里面的应该是一个对象
      

  5.   

    楼主你可以写hql语句来处理的。 Session session=HibernateSessionFactory.getSession();
     String hql=" delete User where id=1";
    try{
        Transaction ts=session.begionTransaction();
        Query query=session.createQuery(hql);
        query.executeUpdate();
        ts.commit();
    }catch(Exception e){
         if(t!=null)
           {
            t.rollback();
           }
    }finally
          {
           session.close();
          }
      

  6.   

     
    Session session=HibernateSessionFactory.getSession();
     String hql=" delete User where id=1";
    try{
      Transaction ts=session.begionTransaction();
      Query query=session.createQuery(hql);
      query.executeUpdate();
      ts.commit();
    }catch(Exception e){
      if(ts!=null)
      

  7.   

    hibernate的效率低这里就可以表现出来 。
    删除时需要先查对象,然后删除,这样就需要2步才能完成,jdbc一步就可以完成。
      

  8.   

    hiberbate中的delete方法是删除一条对象啊session.delete(session.get(id))或session.delete(session.load(id))都是可以删除的