数据库query用法_query方法

数据库query用法_query方法1、以前写代码,总免不了要编写登录部分。在获取user的时候,只可能返回一个user实例,或者为null。以前使用以下方法实现:publicUserget(Stringname,Stringpassword){Sessionsession=HibernateUtil.getSessionFactory().openSession();String…

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

Jetbrains全系列IDE稳定放心使用

1、以前写代码,总免不了要编写登录部分。在获取user的时候,只可能返回一个user实例,或者为null。以前使用以下方法实现:

public  User get(String name,String password){   
    Session session=HibernateUtil.getSessionFactory().openSession();   
    String hql="from User u where u.name = ? and u.password=?" ;   
    List list=session.createQuery(hql).setString(0 , name).setString(1,password).list();   
    if  (list.size()== 1 ){   
        return  (User)list.get( 0 );   
    }else {   
        return   null ;   
    }   
}   

2、hibernate的参考手册中,query接口提供了一个更好的方法 uniqueResult () 用来获取实例,如果查询结果有多个值则抛出错误;结果有且只有一个值,返回一个object; 如果没值,返回null 

public User get(String name,String password){   
Session session=HibernateUtil.getSessionFactory().openSession();      
String hql="from User u where u.name = ? and u.password=?";      
return (User)session.createQuery(hql).setString(0,name).setString(1,password).uniqueResult();  
}   

如果查询结果有多个值则抛出NonUniqueResultException的错误; 
如果查询结果有且只有一个值,返回一个object; 
如果没值,返回null

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

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

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


相关推荐

  • 【论文精读】Parallax-Tolerant Image Stitching Based on Robust Elastic Warping

    【论文精读】Parallax-Tolerant Image Stitching Based on Robust Elastic Warping基于高鲁棒性的弹性扭曲视差容忍图像拼接算法

    2025年5月23日
    4
  • eclipse快捷键

    eclipse快捷键

    2021年9月2日
    171
  • mysql读写分离优点_mysql读写分离

    mysql读写分离优点_mysql读写分离什么是读写分离在数据库集群架构中,让主库负责处理事务性查询,而从库只负责处理select查询,让两者分工明确达到提高数据库整体读写性能。当然,主数据库另外一个功能就是负责将事务性查询导致的数据变更同步到从库中,也就是写操作。读写分离的好处1)分摊服务器压力,提高机器的系统处理效率读写分离适用于读远比写的场景,如果有一台服务器,当select很多时,update和delete会被这些select访问…

    2022年4月28日
    42
  • java与python-如何对比Python和Java,只需三分钟告诉你!

    java与python-如何对比Python和Java,只需三分钟告诉你!原标题:如何对比Python和Java,只需三分钟告诉你!Java和Python两门语言都是目前非常热门的语言,可谓北乔峰南慕容,二者不分上下,棋逢对手。但是对于初学者来说,非常困惑,因为时间和精力有限,上手必须要先学一门,到底选那个好呢,今天3分钟带你透彻了解。1.运行速度java是静态语言静态编译的,速度上要比Python快的很多,而Python动态类型语言,一边执行一边编译,速度要上慢一些…

    2022年7月7日
    29
  • java case when用法_sql case when 嵌套

    java case when用法_sql case when 嵌套前几天在客户环境遇到一个Spark“CASEWHEN”语句的性能优化问题。客户那边通过一个“时间范围筛选”控件来动态修改图表的数据。其很多指标的计算逻辑类似于:CASEWHEN`bizdate`BETWEEN’2020-09-06’AND’2020-09-13’THEN`sales_amount`ELSE0ENDCASEWHEN语句有些类似于编程语言中的Switch语句,当这里的…

    2025年9月18日
    4
  • 亿图2021激活码【最新永久激活】「建议收藏」

    (亿图2021激活码)这是一篇idea技术相关文章,由全栈君为大家提供,主要知识点是关于2021JetBrains全家桶永久激活码的内容IntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,下面是详细链接哦~https://javaforall.net/100143.html1STL5S9V8F-eyJsa…

    2022年3月27日
    1.7K

发表回复

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

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