zoukankan      html  css  js  c++  java
  • HQL参数绑定是几种?有什么不同?

    (1)占位符”?”
    通过Query对象,使用“?”占位符,我们可以先设定查询参数,之后通过setType()方法设置指定的参数
    需要注意的是,必须保证每个占位符都设置了参数值,而且必须依照“?”所设定顺序,使用对应参数类型的setType()方法设定。设置参数值时,下标从0开始,而不是使用PreparedStatment对象时的从1开始
    (2)命名参数
    例子:
    “select user.password from User as user where user.name= :name”;
    Query query = session.createQuery(hql);
    query.setString(“name”,”admin”);
    解释:
    :name即命名参数,通过session.createQuery方法构造Query实例后,我们即可根据此参数进行参数值设定,设定方式与”?”占位符相同,只是下标换成了命名参数,从而不需要依照特定的顺序。
    注意,“:”后面跟着参数名。

    (3)封装参数
    在查询条件很多的情况下,如果认为传递很多的参数不方便的话,Hibernate还提供了第三种方式,实现了动态设置查询参数,那就是将参数封装为一个bean,然后通过Query对象的setProperties(Object bean)实现参数设定

  • 相关阅读:
    [51nod1474]宝藏图
    web h5常用代码总结
    ionic app 热更新
    ionic3——ion-scroll无法使用scrollTo的问题
    git操作
    uniapp开发
    uniapp 之navigateTo:fail page 跳转路径不对
    微信小程序之登录用户不是该小程序的开发者
    ionic slide组件使用
    ionic使用自定义icon
  • 原文地址:https://www.cnblogs.com/Xuesk/p/6858361.html
Copyright © 2011-2022 走看看