在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);

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

数据库权限和角色模型

目录(?)[+]   管理域 系统安全模型设计 1       修改历史 版本 修改历史  作者 描述 开发时间(h) ...

BaseAction的写法

baseaction是javaweb在ssh框架上面最常用的一个工具,防止丢失,大家可以用package com.lrdd.base.dao;import java.applet.AppletCont...

Hibernate的SQLQuery与Query占位符传参

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

C++11: unordered_map实例化时传参的两种方式

【原文链接】http://oopscenities.net/2012/01/20/c11-unordered-maps/

Ajax中的两种传参方式详解

1.创建servlet类,路径设置为ajax01,代码如下: package com.cdsxt.ajax; import java.io.IOException; import jav...

Android两种网络访问方式(HttpClient HttpUrlConnection)的比较及三种传参方式介绍

 本文档要做的事情: 1.介绍两种网络访问客户端:HttpClient和HttpURLConnection 1)HttpClient: 2)HttpURLConnection:...

vue router 如何使用params query传参,以及有什么区别

写在前面:传参是前端经常需要用的一个操作,很多场景都会需要用到上个页面的参数,本文将会详细介绍vue router 是如何进行传参的,以及一些小细节问题。有需要的朋友可以做一下参考,喜欢的可以点波赞,...
  • OBKoro1
  • OBKoro1
  • 2017年11月13日 10:29
  • 396

Spring与Hibernate两种组合方式

  • 2013年09月20日 17:30
  • 6KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:在Hibernate中query.setParameter的两种传参方式
举报原因:
原因补充:

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