zoukankan      html  css  js  c++  java
  • Hibernate简单检索方式(查询方式)

    Hibernate提供以下几种检索对象的方式

    1.OID检索方式:按照对象的OID来检索对象

    2.HQL检索方式:使用面向对象的HQL查询语言

    3.QBC检索方式:使用QBC检索对象

    4.sql语句查询

    首先搭建一个项目

    创建实体类

    编写映射文件

    测试类代码

    public class test {
        
        @Test
        public void test1() {
            Session session = HibernateUtil.openSession();
            Transaction tx = session.beginTransaction();
            //使用OID方式查询
            //后面的1就是id的值也就是查询id值为1的用户
            //get()和load()的区别    get查询时id不存在时会返回null  load查询时id不存在会报错
            User user1 = (User) session.get(User.class, 10);
    //        User user2 = (User) session.load(User.class, 10);
            System.out.println(user1);
    //        System.out.println(user2);
            tx.commit();
            session.close();
        }
        @Test
        public void test2() {
            Session session = HibernateUtil.openSession();
            Transaction tx = session.beginTransaction();
            //使用QBC查询方式
            List<User> list = session.createCriteria(User.class).list();
            for (User user : list) {
                System.out.println(user);
            }
            tx.commit();
            session.close();
        }
        @Test
        public void test3() {
            Session session = HibernateUtil.openSession();
            Transaction tx = session.beginTransaction();
            //使用HQL查询方式
            List<User> list = session.createQuery("from User").list();
            for (User user : list) {
                System.out.println(user);
            }
            tx.commit();
            session.close();
        }
        @Test
        public void test4() {
            Session session = HibernateUtil.openSession();
            Transaction tx = session.beginTransaction();
            //使用SQL查询方式 有两种方式
    /*        List<Object[]> list = session.createSQLQuery("select * from User").list();
            for (Object[] user : list) {
                System.out.println(Arrays.toString(user));
            }*/
            List<User> list = session.createSQLQuery("select * from User")
                    .addEntity(User.class)
                    .list();
            for (User user : list) {
                System.out.println(user);
            }
            tx.commit();
            session.close();
        }
        @Test
        public void test5() {
            Session session = HibernateUtil.openSession();
            Transaction tx = session.beginTransaction();
            //别名的使用查询
    /*        List<User> list = session.createQuery("from User u").list();
            System.out.println(list);*/
            // 使用别名带参数查询
            List<User> list = session.createQuery("from User as u where u.username = ?").setString(0, "赵云").list();
            System.out.println(list);
            tx.commit();
            session.close();
        }
    
    }
  • 相关阅读:
    Windows Server 2008 R2 下配置证书服务器和HTTPS方式访问网站
    C# AD(Active Directory)域信息同步,组织单位、用户等信息查询
    Windows Server 2008 R2 配置Exchange 2010邮件服务器并使用EWS发送邮件
    体验vs11 Beta
    jQuery Gallery Plugin在Asp.Net中使用
    第一个Python程序——博客自动访问脚本
    网盘:不仅仅是存储
    TCP/UDP端口列表
    Linux的时间 HZ,Tick,Jiffies
    Intel Data Plane Development Kit(DPDK) 1.2.3特性介绍
  • 原文地址:https://www.cnblogs.com/yz-bky/p/12558408.html
Copyright © 2011-2022 走看看