`
tangjing19891205
  • 浏览: 1222 次
  • 性别: Icon_minigender_2
  • 来自: 深圳
最近访客 更多访客>>
社区版块
存档分类
最新评论

hibernate+mysql查询条件有中文无法匹配的问题

阅读更多

 

 
 

用hibernate做mysql的数据库连接时,当查询条件中有中文的时候,查询结果没有记录,而数据库中是存在符合条件的记录的。

如下面的查询语句:

select t.id.student.sid from Studentcourse as t where t.fkTid='"+tid+"' and t.id.fkCid='"+cid+"' and t.fkClassId='"+classId+"' and t.fkSemester='"+semester+"' order by t.id.student.sid desc

其中where条件中的classId和semester是中文的。

用这条语句查询到的记录为空。

这一问题原来是没有的,重新部署后才出现,所以由于字符集的问题造成的,但我改了很多次字符集都搞不定,数据库、jsp、及数据库连接改成一致的时候也解决不了问题。

后来有一个比较麻烦的办法,但是可以解决问题,就是改写查询语句的书写方式:将变量值的指定写在语句外面

原来的方式:

   List sc=session.createQuery("select t.id.student.sid from Studentcourse as t where t.fkTid='"+tid+"' and t.id.fkCid='"+cid+"' and t.fkClassId='"+classId+"' and t.fkSemester='"+semester+"' order by t.id.student.sid desc").list();

现在的方式:
  String sqlString = "select t.id.student.sid from Studentcourse as t where t.fkTid=:tid and t.id.fkCid=:cidand t.fkClassId=:classId and t.fkSemester=:semester order by t.id.student.sid desc";
  Query query = session.createQuery(sqlString);
  query.setString("tid", tid);
  query.setString("cid", cid);
  query.setString("classId", classId);
  query.setString("semester", semester);
  
  List sc = query.list();

用这样的方式可以解决问题。

分享到:
评论

相关推荐

    spring3.0+hibernate3.3+mysql8.0

    spring3.0+hibernate3.3+mysql8.0,需主要jar的匹配,同时mysql8.0 是需要专门的jdbc驱动包的

    spring mvc 4.0+hibernate4.3+mysql+json用到的jar包

    自己做的项目,基于spring mvc框架,整合了hibernate较新版本,以及需要用到的json包还有用到ueditor前端富文本编辑器的包,十分给力。。组这个包还是花了不少时间。如有问题,欢迎留言交流

    struts2+hibernate+spring源码

    Struts2,Spring,Hibernate,DWR,JavaMail,以及少部分正则表达式。其实都是非常基础简单的应用,目的就是让大家看看这些框架是如何协同工作的。开发平台为:Winxp2+JDK1.5+Tomcat5.5+MySQL5.0。 以下是本例子的...

    演示EJB3.0 + JPA + MySQL5.0 + C3P0连接池技术实战编程(Top-Down的XP开发方式)

    注意:配置JBoss服务器和调试的动作参见readme.txt文档,有详细说明怎样匹配连接池,以及可能遇到的问题及解决办法。该例子演示怎样使用Hibernate技术(没有使用XDoclet技术)实现JPA的Top-Down的XP开发流程,本人...

    bbs论坛系统(structs2+hibernate+jsp)

    该系统是基于Struts2+Hibernate开发的一个论坛系统,其中,Hibernate主要负责数据底层封装处理,Struts2在Action中调用DAO相应的方法实现业务处理。系统采用B/S模式,用java语言结合mysql数据库技术进行开发。系统...

    办公系统源代码(sturts2,hibernate,mysql)

    多条件的查询搜索匹配模式对档案进行查询统计。 (3)申请状态 对自己归档过文件的审批状态进行跟踪查询。 (4)存档审核 有审核权限的用户可以对存档人提出的存档申请进行审核。 2、联系人管理系统 每个部门因工作...

    java网上书店系统+毕业设计系统源码

    jsp+JavaScript+struts+hibernate+css+mysql的网上书店(源码完整直接运行 高仿真数据库记录 身临其境网上购书吧 ) 和国内最好的网上书店 当当网的框架相同 包括顾客的购物车 订单管理和留言板 支持商品搜索;后台...

    毕设作品,校园快递最后一公里

    jsp+JavaScript+struts2+hibernate+css+mysql+spring 功能包括用户管理,学生管理,课程管理,教师管理,班级管理,成绩管理等 使用说明: 2、管理后台登陆地址:http://localhost:8080/Java_Prj17/admin/index.jsp ...

    struts_hibernate框架权限管理系统

    本系统是基于Struts+Hibernate开发的一套权限后台管理系统,功能包含完善的权限管理,和信息发布功能。开发环境: <br>Eclipse3.01+myeclipse3.84+mysql5.0(oracle、ms sqlserver2000)。 <br>压缩包里包含了...

    精通 Hibernate:Java 对象持久化技术详解(第2版).part2

     C.1 创建带有@hibernate标记的Java源文件  C.2 建立项目的目录结构  C.3 运行XDoclet工具 附录D 发布和运行netstore应用  D.1 运行netstore所需的软件  D.2 netstore应用的目录结构  D.3 安装SAMPLEDB...

    hibernate注解式代码应用

    2018最新hibernate代码学习教程。主要为hibernate的注解式应用方式。重点包括一对一,一对多及多对多关系的配置代码...另,如果要测试代码中的hbm2ddl时,请动态更改hibernate.cfg.xml中的注释,以匹配不同的类对象。

    精通 Hibernate:Java 对象持久化技术详解(第2版).part4

     C.1 创建带有@hibernate标记的Java源文件  C.2 建立项目的目录结构  C.3 运行XDoclet工具 附录D 发布和运行netstore应用  D.1 运行netstore所需的软件  D.2 netstore应用的目录结构  D.3 安装SAMPLEDB...

    精通 Hibernate:Java 对象持久化技术详解(第2版).part3

     C.1 创建带有@hibernate标记的Java源文件  C.2 建立项目的目录结构  C.3 运行XDoclet工具 附录D 发布和运行netstore应用  D.1 运行netstore所需的软件  D.2 netstore应用的目录结构  D.3 安装SAMPLEDB...

    精通 Hibernate:Java 对象持久化技术详解(第2版).part1.rar

     C.1 创建带有@hibernate标记的Java源文件  C.2 建立项目的目录结构  C.3 运行XDoclet工具 附录D 发布和运行netstore应用  D.1 运行netstore所需的软件  D.2 netstore应用的目录结构  D.3 安装SAMPLEDB...

    Hibernate技术

    Java是面向对象编程语言 目前的主流数据库,例如Oracle、DB2、SyBase、MySQL、SQL Server...Java程序中,把数据保存到关系数据库中,或者从关系数据库中查询数据时,都会遇到对象模型与关系模型之间的不匹配(mismatch

    Mysql| 使用通配符进行模糊查询详解(like,%,_)

    主要介绍了Mysql| 使用通配符进行模糊查询详解(like,%,_),具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

    办公管理系统

    多条件的查询搜索匹配模式对档案进行查询统计。 (3)申请状态 对自己归档过文件的审批状态进行跟踪查询。 (4)存档审核 有审核权限的用户可以对存档人提出的存档申请进行审核。 2、联系人管理系统 每个部门因工作...

    ssh(structs,spring,hibernate)框架中的上传下载

     需要指定的是Spring 1.2.5提供了两套Hibernate的支持包,其中Hibernate 2相关的封装类位于org.springframework.orm.hibernate2.*包中,而Hibernate 3.0的封装类位于org.springframework.orm.hibernate3.*包中,...

    基于s2sh的开源论坛系统

    该项目来源于网上,在此我提供源码供大家学习,之后我也会上传到github,该论坛很大,后台可以和php织梦或者帝国匹配,如果有想学习的小伙伴加qq群:602434122,咱们一起讨论这个论坛系统。这套系统啃完,你就可以...

Global site tag (gtag.js) - Google Analytics