Hibernate模糊查询

简介:

和SQL查询一样,Hibernate,HQL使用like关键字进行模糊查询。模糊查询能够比较字符串是否与指定的字符串模式匹配。其中使用通配符表示:如下

%(百分号):匹配任意类型、任意长度的字符串,中文则需要两个百分号"%%"

_(下划线):匹配单个任意字符,一般用来限制字符串表达式的长度。

下面举例说明:

1.检索姓名以"M"开头的同学:

 

 
  1. String queryString="from studentInfo s where s.sname like 'S%'"

2.检索姓名中包含字符串"abc"的学生对象:

 
  1. String queryString="from studentInfo s where s.sname like '%abc%'"


3.检索以S开头,并且字符串长度为5的学生对象:
 

 
  1. String queryString="from studentInfo s where s.sname like 'S____'"; 四个下划线"_" 


4.实例:检索学生姓名中含有"王"的所有学生:
 

 

 
  1. String queryString = "from StudentInfo s where s.sname like'%"+sname+"%'";  注意这个HQL语句的拼接部分,不能写错! 


DAO如下:
 

 
  1. public List findBySname(Object sname) {  
  2.         log.debug("finding all StudentInfo instances");  
  3.         try {  
  4.             //String queryString = "from StudentInfo s where s.name like '%"+sname+"%'";  
  5.             String queryString = "from StudentInfo s where s.sname like'%"+sname+"%'";  
  6.             Query queryObject = getSession().createQuery(queryString);  
  7.             return queryObject.list();  
  8.               
  9.         } catch (RuntimeException re) {  
  10.             log.error("find all failed", re);  
  11.             throw re;  
  12.         }  
  13.     } 

页面即可输出这个List集合了。




 本文转自 w156445045 51CTO博客,原文链接:http://blog.51cto.com/enetq/627847,如需转载请自行联系原作者


相关文章
|
3月前
|
SQL Java 数据库连接
在 Hibernate 中何时使用条件查询?
【8月更文挑战第21天】
39 0
|
Java 关系型数据库 MySQL
MyBatis模糊查询like的三种方式
MyBatis模糊查询like的三种方式
101 0
|
SQL 缓存 Java
什么是hibernate N+1查询
什么是hibernate N+1查询
|
Java 关系型数据库 MySQL
七、MyBatis实现模糊查询的三种方式
由于#{}是占位符本身,自带单引号,所以在模糊查询时需要一些技巧。
208 0
七、MyBatis实现模糊查询的三种方式
|
Java 数据库连接 mybatis
【MyBatis】多关键字的模糊查询
【MyBatis】多关键字的模糊查询
208 0
【MyBatis】多关键字的模糊查询
|
Java 数据库连接 mybatis
Mybatis 模糊查询 LIKE 使用方式
Mybatis 模糊查询 LIKE 使用方式
145 0
Mybatis 模糊查询 LIKE 使用方式
|
Java 数据库连接 mybatis
mybatis做like模糊查询
这个网站中有很多方法。https://code.google.com/p/mybatis/issues/detail?id=85 自己试验了如下的方法。   1. 参数中直接加入%%   param.
919 1
|
Java 数据库连接
Hibernate Criteria 模糊查询
版权声明:本文首发 http://asing1elife.com ,转载请注明出处。 https://blog.csdn.net/asing1elife/article/details/82732076 ...
1352 0
|
Java 数据库连接 Apache
Mybatis基础:增删改查、模糊查询、多条件查询
Mybatis基础:增删改查、模糊查询、多条件查询http://www.bieryun.com/3132.html 1、新建测试数据库,根据实体类属性创建 2、实体类 [java] view plain copy package com.
2104 0