如果是id 值的话,那数据库会自动赋值的,假如不是的话!你就用HQL 语句查询,或者用Criteria 的操作啦!

解决方案 »

  1.   

    HQL 的语句和SQL 没有什么大的区别,在class 文档中,运行一下,测试通过即可进行下步操作;
    对于Criteria 的使用,你可以到网上找一下,这里给你一个例子;
                     Session s=null;
    List list=null;
    Criteria ct=null;
             try {
    s=HibernateSessionFactory.getSession();
     ct=s.createCriteria(StaffTable.class);
     if(staffid.equals("")){
     ct.add(Expression.eq("staffId","X10"));
     }else{
     ct.add(Expression.eq("staffId",staffid));
     }
     list=ct.list();
    } catch (HibernateException e) {
    // TODO 自动生成 catch 块
    s.close();
    e.printStackTrace();
    }
      

  2.   

    不是这个意思,就是数据库自动赋值,但是,怎么获取刚刚执行上一句语句执行后自动生成的ID值!像MYSQL里面的mysql_insert_id()函数一样。。在 hibernate 怎么用? 我用的也是Mysql
      

  3.   

    参考 Hibernate API:
    public Serializable save(Object object)
    返回值即自动生成的 ID。