HIbernate 查询拼接参数

public List<TrailTestModel> findByEid(List<String> trailids, String eid) {
// TODO Auto-generated method stub
String hql = " from TrailTestModel where 1=1 ";
ArrayList<String> count = new ArrayList<String>();
if (trailids != null && trailids.size() > 0) {
hql += " and trail.uid in (:trailids) ";
}
if (StringUtils.isNotBlank(eid)) {
hql += " and employee.uid = :eid ";
count.add(eid);
}
Query query = hibernateTemplate.getSessionFactory().getCurrentSession().createQuery(hql);
Object[] arr = new Object[trailids.size()];
for (int i = 0; i < trailids.size(); i++) {
arr[i] = trailids.get(i);
}
if (trailids != null && trailids.size() > 0) {
query.setParameterList("trailids", arr);
}
if (StringUtils.isNotBlank(eid)) {
query.setParameter("eid", eid);
}
List<TrailTestModel> list = query.list();
return list;
}

时间: 2024-10-14 08:57:34

HIbernate 查询拼接参数的相关文章

hibernate查询显示参数

log4j.property改为如下 ### direct log messages to stdout ###          log4j.appender.stdout=org.apache.log4j.ConsoleAppender          log4j.appender.stdout.Target=System.out          log4j.appender.stdout.layout=org.apache.log4j.PatternLayout          lo

hibernate 查询方式汇总

主要摘自  http://blog.sina.com.cn/s/blog_7ffb8dd501014a6o.html ,http://blog.csdn.net/xingtianyiyun/article/details/7703429 Hibernate总的来说共有三种查询方式:HQL.QBC和SQL三种.但是细分可以有如下几种: 一.HQL查询方式     这一种我最常用,也是最喜欢用的,因为它写起来灵活直观,而且与所熟悉的SQL的语法差不太多.条件查询.分页查询.连接查询.嵌套查询,写起来

Hibernate查询的六种方式

Hibernate查询的六种方式 分别是HQL查询,对象化查询Criteria方法,动态查询DetachedCriteria,例子查询,sql查询,命名查询. 如果单纯的使用hibernate查询数据库只需要懂其中的一项就可以完成想要实现的一般功能,但是想多学知识就看一下这六种方法,他们提供了更多选择.当然每一种方法都有其适用的情况与前提. 1.HQL查询 HQL是hibernate自己的一套查询语言,于SQL语法不同,具有跨数据库的优点.示例代码: [java] view plain copy

六种方式实现hibernate查询,及IDE推荐

hibernate查询的6种方法.分别是HQL查询,对象化查询Criteria方法,动态查询DetachedCriteria,例子查询,sql查询,命名查询. 如果单纯的使用hibernate查询数据库只需要懂其中的一项就可以完成想要实现的一般功能,但是从一个点,让我们掌握6中方法,则提供了更多选择.每一种方法都有其适用的情况与前提. HQL查询 HQL是hibernate自己的一套查询语言,于SQL语法不同,具有跨数据库的优点.示例代码: static void query(String na

(十)Hibernate 查询方式

 所有项目导入对应的hibernate的jar包.mysql的jar包和添加每次都需要用到的HibernateUtil.java 第一节:Hibernate 查询方式简介 1,导航对象图查询方式: 2,OID 查询方式: 3,本地SQL 查询方式: 4,HQL 查询方式: 5,QBC 查询方式:(Query By Criteria) 第二节:本地SQL 查询方式 Student.java 1 package com.wishwzp.model; 2 3 public class Student

Hibernate查询方式---HQL方式

这一种我最常用,也是最喜欢用的,因为它写起来灵活直观,而且与所熟悉的SQL的语法差不太多.条件查询.分页查询.连接查询.嵌套查询,写起来与SQL语法基本一致,唯一不同的就是把表名换成了类或者对象.其它的,包括一些查询函数(count(),sum()等).查询条件的设定等,全都跟SQL语法一样.###注意:     在hql中关键字不区分大小写,但是属性和类名区分大小写示例1: static void query(String name){ Session s=null; try{ s=Hiber

记录使用Hibernate查询bean中字段和数据库列类型不匹配问题

今天在工程中遇到Hibernate查询的时候,bean中的字段和数据库中的字段不符合(bean中有pageTime字段,但是数据库中没有此列)报错问题. 具体问题环境: 在auto_off表中,off_time字段是bigint类型,用于存放unix时间戳,bean中对应属性类型为Long类型,但是前台传递过来的时间是String类型(2016-11-25) 解决办法1: 在bean中添加一个String类型的pageTime字段,然后前台传递过来的数据使用pageTime接收,再将值转换成lo

11、hibernate查询、连接池、二级缓存

Hibernate第三天: 1. 对象状态 2. session缓存 3. lazy懒加载 4. 映射 一对一对映射 组件/继承映射 目标: 一.hibernate查询 二.hibernate对连接池的支持 三.二级缓存 四.Hibernate与Struts小案例(项目中session的管理方式) 一.hibernate查询 查询概述 1)Get/load主键查询 2)对象导航查询 3)HQL查询, Hibernate Query language hibernate 提供的面向对象的查询语言.

[转]Hibernate查询对象所有字段,单个字段 ,几个字段取值的问题

原文地址:http://www.ablanxue.com/prone_3552_1.html 1. 查询整个映射对象所有字段 Java代码 //直接from查询出来的是一个映射对象,即:查询整个映射对象所有字段 String hql = "from Users"; Query query = session.createQuery(hql); List<Users> users = query.list(); for(Users user : users){ System.