• Hibernate projectionList方法:创建多个投影列

    projectionList 方法用于创建多个投影列,每个投影列由该方法返回的 ProjectionList 对象的 add 方法添加。add 方法的参数为 Projections 类的相关方法的返回值。

    语法:

    projectionList()

    返回值:ProjectionList 类的对象。ProjectionList 类为 Projection 类的子类。

    示例1

    查询数据表中的全部用户名,关键代码如下:

    Criteria criteria = session.createCriteria(UserForm.class);  //创建Criteria对象
    criteria.setProjection(Projections.projectionList()
                                                     .add(Projections.property("username")));  //创建投影列
    list = criteria.list();  //执行查询语句获取查询结果集
    Iterator it = list.iterator();  //获取查询迭代器
    while(it.hasNext()){  //循环遍历迭代器
      System.out.println("用户名:"+it.next());  //输出查询结果
    }

    示例2

    在应用 projectionList 方法用于创建多个投影列时,可以通过调用多个 add 方法设置多个投影列,例如下面的代码:

    Criteria criteria = session.createCriteria(UserForm.class);  //创建Criteria对象
    criteria.setProjection(Projections.projectionList()
                           .add(Projections.property("username"))
                           .add(Projections.property("pwd"))  //创建多个投影列
                          );
    List list = criteria.list();  //获取查询结果集
    Iterator it = list.iterator();  //获取查询迭代器
    while(it.hasNext()){  //循环遍历迭代器
      Object[] o = (Object[])it.next();  //获取迭代器中数据信息
      System.out.println("用户名:"+o[0]+"密码:"+o[1]);
    }

更多...

加载中...