【Hibernate】uniqueResult方法「建议收藏」

【Hibernate】uniqueResult方法「建议收藏」数据库中根据你的查询条件只会返回唯一结果,就可以用uniqueResult这个方法!否则就用list();其返回类型为Object uniqueResult()方法通常是在业务方法查询语句中用到的,比如(UsersRoles)getSession().createQuery(“selecturfromUsersRolesurwhereur.role.id=?andur.

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

数据库中根据你的查询条件只会返回唯一结果,就可以用uniqueResult这个方法!否则就用list();其返回类型为Object 

uniqueResult()方法通常是在业务方法查询语句中用到的,比如(UsersRoles)getSession().createQuery(“select ur from UsersRoles ur where ur.role.id = ? and ur.user.id = ?”) .setParameter(0, roleId) .setParameter(1, userId) .uniqueResult();这时通表示只(从数据库中只返回一条记录)返回一个对象。当不确定时用List()方法

 

如果查询返回多个值用list()方法

1. public void testQuery(){  

2.         Configuration config = new Configuration().configure();  

3.         SessionFactory factory = config.buildSessionFactory(); //创建SessionFactory  

4.         Session session = factory.openSession();        //创建Session  

5.         session.beginTransaction();                     //开始事务  

6.           

7.         Query query = session.createQuery(“from Student”);  

8.         List list = query.list();  // 用list方法返回多个值  

9.         //List list = session.createQuery(“from Student”).list();  

10.         for(int i=0;i<list.size();i++){  

11.             Student student = (Student)list.get(i);  

12.             System.out.print(student.getId()+” “);  

13.             System.out.print(student.getName()+” “);  

14.             System.out.print(student.getSex()+” “);  

15.             System.out.print(student.getBirthday());  

16.             System.out.println();  

17.         }         

18.           

19.         session.getTransaction().commit();         //提交事务   

20.         session.close();                           //关闭Session  

21.     }  

 

当确定返回的实例只有一个或者null时 用uniqueResult()方法

1. public void testQuery(){  

2.         Configuration config = new Configuration().configure();  

3.         SessionFactory factory = config.buildSessionFactory(); //创建SessionFactory  

4.         Session session = factory.openSession();        //创建Session  

5.         session.beginTransaction();                     //开始事务  

6.           

7.         Query query = session.createQuery(“from Student”);  

8.         List list = query.list();  // 用list方法返回多个值  

9.         //List list = session.createQuery(“from Student”).list();  

10.         for(int i=0;i<list.size();i++){  

11.             Student student = (Student)list.get(i);  

12.             System.out.print(student.getId()+” “);  

13.             System.out.print(student.getName()+” “);  

14.             System.out.print(student.getSex()+” “);  

15.             System.out.print(student.getBirthday());  

16.             System.out.println();  

17.         }         

18.           

19.         session.getTransaction().commit();         //提交事务   

20.         session.close();                           //关闭Session  

21.     }  

 

当确定返回的实例只有一个或者null时 用uniqueResult()方法

public void testGet(){  

        Configuration config = new Configuration().configure();  

        SessionFactory factory = config.buildSessionFactory();  

        Session session = factory.openSession();  

        session.beginTransaction();  

          

        Query query = session.createQuery(“from Student s where s.id=?”);  

        query.setString(0, “2”);  

        Student student = (Student)query.uniqueResult();  //当确定返回的实例只有一个或者null时 用uniqueResult()方法  

        //Student student = (Student)session.createQuery(“from Student s where s.id=?”).setString(0,”5″).uniqueResult();  

          

        System.out.println(student.getName());  

        System.out.println(student.getBirthday());  

          

      

        session.getTransaction().commit();  

        session.close();  

    }  

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/195193.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Idea激活码最新教程2020.2.4版本,永久有效激活码,亲测可用,记得收藏

    Idea激活码最新教程2020.2.4版本,永久有效激活码,亲测可用,记得收藏Idea 激活码教程永久有效 2020 2 4 激活码教程 Windows 版永久激活 持续更新 Idea 激活码 2020 2 4 成功激活

    2025年5月22日
    0
  • MyEclipse安装SVN插件[通俗易懂]

    MyEclipse安装SVN插件[通俗易懂]1.下载SVN插件下载地址:链接:https://pan.baidu.com/s/1SCB9U9VYUH9Rh9NzmzRERA提取码:9e9e下载完解压即可2.在MyEclipse中安装SVN插件1.找到MyEclipse在安装目录下的dropins文件夹2.在driopins文件夹内新建一个SVN文件夹3.将解压文件内的这两个文件夹复制到driopins文件夹下的SV…

    2022年7月21日
    9
  • 大数据应用实例[通俗易懂]

    大数据应用实例[通俗易懂]通过对全国各地不同时间段的购买华硕笔记本电脑的销售量进行大数据处理,将其通过汇总分析,即可制成图表的格式,使用户能对华硕笔记本销售量进行研究,可以查看出华硕笔记本最近的销售同比(与上一年的销售比较)与环比(与上月的销售比较),购买的人数地域分布量,及购买的人群年龄分布,性别分布等等首先就是对华硕笔记本最近的销售同比(与上一年的销售比较)与环比(与上月的销售比较),整体同比及移…

    2022年6月2日
    47
  • Python矩阵计算

    Python矩阵计算1、构建矩阵*1)、集合形式建立矩阵asmatrix()函数。(1)数组形式建立矩阵函数matrix(data,dtype=None,copy=True),data为数值类型的集合对象,dtype指定输出矩阵的类型,copy=True进行深度拷贝建立全新的矩阵对象,copy=False仅建立基于集合对象的视图(深度拷贝、视图的原理见5.2节内容)。功能类似于mat()函数、importnumpyasnpa=np.array([[1,2,3],[4,5,6],[7,8,9]])

    2022年6月28日
    34
  • kafka批量删除topic_kafka清空数据

    kafka批量删除topic_kafka清空数据一般情况下,是不会删除数据的。到达一定时间后,kafka会自动删除。如果一定要删除可以删除topic在重建topic了No.1:如果需要被删除topic此时正在被程序produce和consume,则这些生产和消费程序需要停止。因为如果有程序正在生产或者消费该topic,则该topic的offset信息一致会在broker更新。调用kafkadelete命令则无法删除该topi…

    2022年10月17日
    0

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号