在Hibernate中query.setParameter的两种传参方式

原创 2016年08月30日 11:14:12

方式一:

select
        h.regionid regionid,
        r.region_name regionidName,
        h.pubdate pubdate,
        xlcl.f_gtDayAmount(h.regionid,
        h.pubdate,
        0) localAmount,
        XLCL.f_gtDayAmount(h.regionid,
        h.pubdate,
        1) otherAmount,
        XLCL.f_gtDayAmount(h.regionid,
        h.pubdate,
        2) interAmount,
        sum(staynum) totalAmount
    from
        xlcldata.mfs_history_day h
    inner join
        xlclgis.mfb_region r  
            on h.regionid=r.id  
    where
        h.areacode is not null
        and r.pid=0  
        and h.pubdate=?
    group by
        h.regionid,
        h.pubdate,
        r.region_name
    order by
        totalAmount asc

忽略sql中的逻辑关系,有没有发现sql中的问号?那么在sql中传参查询时利用setParameter方法进行传参,具体如下:

query.setParameter("0",queryDate);//queryDate为日期对象

方式二:

把sql语句中问号那一行改为

and h.pubdate=:dateTime

那么传参方式为:

query.setParameter("dateTime",queryDate);

在实际工程项目中,第一种传参方法要多一些

query.setParameter赋值注意参数类型

Query query = this.getEntityManager().createQuery("select o FROM Order o where o.orderId = :id"); q...
  • yangqicong
  • yangqicong
  • 2011年10月28日 17:05
  • 21397

hibernate 动态参数的绑定;从3.0到4.2改动 query.setParameter

hibernate中对动态参数的绑定提供了丰富的支持。 其中参数绑定有两种形式。 (1)按参数的名字进行绑定 在hql查询语句中定义命名参数,以“ :”开头,形式如下: Query query...
  • shihengli2010
  • shihengli2010
  • 2015年03月17日 10:35
  • 2897

hibernate -- 分页模糊查询中setParameter 和setParameterList

在分页模糊查询中碰到setParameter 和setParameterList这两个方法 setParameter 以前就只会用setParameter(int arg,String str),...
  • snn1410
  • snn1410
  • 2013年05月03日 11:11
  • 17830

Hibernate——Query查询

前两篇文章介绍了获取SessionFactory,Session,以及Session的三种状态及其之间的转换,本文势必要将大家最关心的问题做出介绍,也就是大家最关心的通过Hibernate提供的类和方...
  • zhuali_linkin
  • zhuali_linkin
  • 2012年02月19日 21:45
  • 16625

hibernate预编译SQL语句中的setParameter和setParameterList

转自:http://blog.csdn.net/aitangyong/article/details/38751363       在hql语句中,要是传递的参数是个字符串数组,这时候占位符就显得很...
  • omayyouhappy
  • omayyouhappy
  • 2017年02月28日 13:50
  • 1692

Hibernate的SQLQuery与Query占位符传参

Hibernate支持SQLQuery(特定数据库平台有关的sql语句)和Query(hql)查询方式,当然还有Criteria对象查询方式;本文介绍SQLQuery和Query的几种传参的方式和注意...
  • jrn1012
  • jrn1012
  • 2017年04月20日 10:20
  • 2887

setParameter和setParameterList的区别

setParameter和setParameterList的区别在于,使用in的时候。 Object[] params = new Integer[]{1, 2};  ...
  • u011088260
  • u011088260
  • 2016年10月10日 19:47
  • 2008

在Hibernate中query.setParameter的两种传参方式

方式一: select         h.regionid regionid,         r.region_name regionidName,         h.pubdate p...
  • u011351656
  • u011351656
  • 2016年08月30日 11:14
  • 8950

Hibernate setParameter绑定参数报错

今天使用Hibernate的hql写查询语句进行参数绑定时遇到如下问题: public List queryUserByAccount(String account) { String hql =...
  • u012492359
  • u012492359
  • 2017年05月22日 23:17
  • 1351

Hibernate关系映射之多对多映射的两种方式

多对多关系##many-to-many 应用场景:不建议使用,建议拆解成两个“一对多”连接 关系定义(主控方): //xml映射方法 ...
  • fengfangyuan
  • fengfangyuan
  • 2016年12月16日 20:45
  • 191
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:在Hibernate中query.setParameter的两种传参方式
举报原因:
原因补充:

(最多只允许输入30个字)