原本我的写法:Query repeatClientQuery=querysession.createQuery("from ClientInfo as a "
+"where a.client_name like :name" );
repeatClientQuery.setParameter("name",clientname);
查询无结果. LIKE 'Mc%' 将搜索以字母 Mc 开头的所有字符串(如 McBadden)。
LIKE '%inger' 将搜索以字母 inger 结尾的所有字符串(如 Ringer、Stringer)。
LIKE '%en%' 将搜索在任何位置包含字母 en 的所有字符串(如 Bennet、Green、McBadden)。
LIKE '_heryl' 将搜索以字母 heryl 结尾的所有六个字母的名称(如 Cheryl、Sheryl)。
LIKE '[CK]ars[eo]n' 将搜索下列字符串:Carsen、Karsen、Carson 和 Karson(如 Carson)。
LIKE '[M-Z]inger' 将搜索以字符串 inger 结尾、以从M到Z的任何单个字母开头的所有名称如。
LIKE 'M[^c]%' 将搜索以字母 M 开头,并且第二个字母不是 c 的所有名称(如 MacFeather)。 直接写
String sql = "from ClientInfo as a where a.client_name like '%"+ clientname+"%'");
Query repeatClientQuery=querysession.createQuery(sql);
成功. 但是却不能查询中文,假如clientname是客户1名字的话,那么将查不到结构,解决办法: 1.用占位符: Query query = session
.createQuery("select count(*) from Privilege p where p.name like ?");
query.setString(0, "%" + name + "%");// 注意这里不能写成setString(0," '%" + name + "%' ";否则查不出来结果,不能加‘单引号 2.修改查询编译器: Hibernate3.0 采用新的基于ANTLR的HQL/SQL查询翻译器,在Hibernate的配置文件中,hibernate.query.factory_class属性用来选择查询翻译器。
(1)选择Hibernate3.0的查询翻译器:
hibernate.query.factory_class= org.hibernate.hql.ast.ASTQueryTranslatorFactory
(2)选择Hibernate2.1的查询翻译器
hibernate.query.factory_class= org.hibernate.hql.classic.ClassicQueryTranslatorFactory
为了使用3.0的批量更新和删除功能,只能选择(1)否则不能解释批量更新的语句,当使用的时候出现了不支持条件输入中文的情况。选择(2)可以支持输入中文,但没法解释批量更新语句了。

hibernate的like用法(用占位符解决)的更多相关文章

  1. Hibernate HQL基础 使用参数占位符

    在HQL中有两种方法实现使用参数占用符 1.使用? 使用?设置参数占位符,之后通过setString()和setInteger()等方法为其赋值.如: Query query = session.cr ...

  2. 。。。JDBC里面的sql与hibernate里面的hql有关占位符"?"的总结。。。

    今天在看Hibernate的时候,似乎又有了一些收获的东东,嘻嘻... 我记得很清楚:以前用JDBC操作数据库的时候是这样的: String sql = "select * from use ...

  3. JDBC_PreparedStatement用法_占位符_参数处理

    import java.sql.Connection; import java.sql.Date;import java.sql.DriverManager;import java.sql.Prepa ...

  4. hibernate查询语句hql中的占位符?参数与命名参数:name设值方式搞混

    先贴出异常 Struts has detected an unhandled exception: Messages: Position beyond number of declared ordin ...

  5. java:Hibernate框架3(使用Myeclipse逆向工程生成实体和配置信息,hql语句各种查询(使用hibernate执行原生SQL语句,占位符和命名参数,封装Vo查询多个属性,聚合函数,链接查询,命名查询),Criteria)

    1.使用Myeclipse逆向工程生成实体和配置信息: 步骤1:配置MyEclipse Database Explorer: 步骤2:为项目添加hibernate的依赖: 此处打开后,点击next进入 ...

  6. Hibernate占位符?和:及JPA

    小结一下hibernate占位符. 1.最常见的?占位符. String hql = "select a from Apple a where a.color=? a.weight>? ...

  7. Hibernate占位符警告:use named parameters or JPA-style positional parameters instead.

    Hibernate占位符警告:use named parameters or JPA-style positional parameters instead. >>>>> ...

  8. scala占位符_的用法

    占位符的用途颇多,先介绍几种常用的用法 1.作为"通配符",类似Java中的*.如import scala.math._2.:_*作为一个整体,告诉编译器你希望将某个参数当作参数序 ...

  9. 【我的Android进阶之旅】解决strings.xml格式化占位符错误: Multiple substitutions specified in non-positional format

    今天有一个Android新手使用strings.xml进行格式化的时候报了占位符错误, Multiple substitutions specified in non-positional forma ...

随机推荐

  1. java类的定义以及参数传递

    class类(类似结构体)的定义 import java.util.Scanner; import java.io.*; class student{//类的名称 public String name ...

  2. 最大密集子图(01分数规划+二分+最小割)POJ3155

    题意:给出一副连通图,求出一个子图令g=sigma(E)/sigma(V); h[g]=sigma(E)-g*sigma(V):设G是最优值 则当h[g]>0:g<G h[g]<0, ...

  3. java 如何接收数据集参数

    @RequestBody String requestBody  可以接收 josn  字符串 ,list 等等 public int updateLoaneePriorityNew(HttpServ ...

  4. java 控制器向页面传值方式

    1.单个字符串 @RequestMapping(value = "list", method = RequestMethod.GET) public ModelAndView li ...

  5. 10.Java设计模式 工厂模式,单例模式

    Java 之工厂方法和抽象工厂模式 1. 概念 工厂方法:一抽象产品类派生出多个具体产品类:一抽象工厂类派生出多个具体工厂类:每个具体工厂类只能创建一个具体产品类的实例. 即定义一个创建对象的接口(即 ...

  6. 「ruby」使用rmagick处理图像

    安装rmagick gem A new release 2.13.2 of RMagick is now available on github as well as rubygems. This r ...

  7. 累加两个php数组,键相同的累加,不同的合并

    1. $arr1=array('name'=>33,'type'=>1); $arr2=array('name'=>33,'price'=>200); $res=array() ...

  8. 有图有真相——关于“视频专辑:零基础学习C语言 ”

  9. 查找(顺序表&有序表)

    [1]查找概论 查找表是由同一类型是数据元素(或记录)构成的集合. 关键字是数据元素中某个数据项的值,又称为键值. 若此关键字可以唯一标识一个记录,则称此关键字为主关键字. 查找就是根据给定的某个值, ...

  10. svn权限控制

    http://blog.csdn.net/clever101/article/details/8159105 [groups] #核心层开发组成员 core_dev = lg,zjc #扩展层开发组成 ...