纯css打造立体时钟
  • 12
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
By_jie

dljd_052_hibernate_单表查询_投影查询

一、投影查询

package edu.aeon.hibernate.test;
import java.util.List;
import org.hibernate.Session;
import org.hibernate.Transaction;
import org.junit.Test;
import edu.aeon.aeonutils.hibernate.getsessionutil.GetSessionUtil;
import edu.aeon.beans.Student;
/**    
 * [说明]:投影查询:只查询名字和年龄这两个字段
 *         必须要有相应的构造器
 * @author aeon
 *
 */
public class TestQuery {
    @Test
    public  void testQueryRecordCount() {
        Session session=null;
        Transaction transaction=null;
        try {
            session = GetSessionUtil.getSession();
            transaction=session.getTransaction();
            transaction.begin();
            //这里的count(*)相当于count(id)
            String sql = "select new Student(stuName,stuAge) from Student";
            List<Student> userList = session.createQuery(sql).list();
            for (Student stu : userList) {
                System.out.println(stu);
            }
            session.getTransaction().commit();
        } catch (Exception e) {
            e.printStackTrace();
            //事物的回滚操作
            transaction.rollback();
        }
    }
}

数据库信息截图:

  

执行结果截图:

  

只查出来了用户名和年龄两个字段吧!其它值都是默认显示值,因为我在Student类里面重写了equals方法,所以也显示出来了

  

 这里必须要注意、你查询那些字段、必须要有这些字段的相应构造器!比如上面就必须要有   public  Student(String stuName,int stuAge){}构造器。

posted @ 2018-12-12 10:01  1024军团  阅读(218)  评论(0编辑  收藏  举报