使用Hibernate3.X版本
使用hib实现用户登录验证功能,用户名是唯一的,从页面传入一个用户名(String类型),如何使用hib查询数据库中对应的记录
,要求只查询一条(因为用户名是唯一的)这个hib语句如何写?
要求使用session缓存查询!

解决方案 »

  1.   

    load 用户实体就可以使用缓存了。但是null操作要注意。
      

  2.   

    注意!!
    目前的问题是不能使用UID如何实现对象加载,而load必须已知UID的情况下才能加载!
    用户登录时只输入登录名,UID是未知的!
      

  3.   

    Session session = null;
    Transaction tx = null;
    try {
    session = HibernateUtils.getSession();
    tx = session.beginTransaction();
    Query qy = session.createQuery("from Customer c where c.name=:cname");
    qy.setString("cname", "Tom2");
    Customer cs=(Customer)qy.list().iterator().next();
    System.out.println(cs.getName());
    tx.commit();
    } catch (Exception e) {
    e.printStackTrace();
    tx.rollback();
    } finally {
    HibernateUtils.closeSession(session);
    }
    这个解法如何?可以根据需要调整参数.