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();
        }
    
    }
  • 相关阅读:
    Mysql Explain 详解
    linux常用命令笔记
    chrome的全局搜索快捷键
    蒋介石如何能够强大的北洋军阀对战?(北洋军阀一盘散沙,以添油战术应对,所以完全失败;北伐军主次应对得到,后期实力大增)
    千万大军剑拔弩张 1945年的美苏两军谁是霸主?(苏联陆军强大,但国力远远不是美国的对手。微信号:熊熊点兵)
    C/C++语言中闭包的探究及比较
    HTTP RFC7230
    Oracle
    c#与oracle数据库连接池
    net平台下连接池
  • 原文地址:https://www.cnblogs.com/yz-bky/p/12558408.html
Copyright © 2011-2022 走看看