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();
        }
    
    }
  • 相关阅读:
    IR的评价指标之MRR
    双击启动tomcat中的startup.bat闪退原因及解决方法
    裁判文书网采集说明
    Java 验证码识别之多线程打码兔
    JVM 内存分配机制总结
    Java中多态的一些简单理解
    Java Callable并发编程模板
    JVM
    Command
    解决PHP下载文件时因时文件太大而报404错误
  • 原文地址:https://www.cnblogs.com/yz-bky/p/12558408.html
Copyright © 2011-2022 走看看