英文,中文有时可正确查询出来,数字却查不上来,且极不稳定

jspkey 2011-01-31 02:18:35
在做项目时碰到这个问题:
数据库一张表,字段分别是:id,name,note,parentId
数据类型分别是:int,varchar,varchar,int
所用数据库是mysql
数据库字符集是utf8

程序所用框架是hibernate3.3.2,spring2.5.6
jdk1.6_20
问题是这样子的:
用junit做单元测试的时候,当要加载的记录包含有数字或全是数字的记录的时候,无论怎样都加载不上来,我可以确定hql语句和生成的sql完成正确,也就是说只能加载中文和英文,但是当我把数据库的数据改掉之后也是加载不上来的(用webyog改的),可以确定已经提交了的,用命令行窗口重新查询确定是已经改过了的数据,也就是说数据有改动也加载不上来

以上情况也不是绝对的,有时连英文都加载不上来,比如用程序新添一条数据也是加载不上来的,不知不觉有时又可以加载上来了
hibernate的核心包换过3.5.0的,jdk换过1.5的都不行

请各位大虾帮看看是什么问题,如果有什么我没有表达清楚的麻烦指出

...全文
109 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
jspkey 2011-01-31
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 a276202460 的回复:]

你都确定了 sql没有问题 那和hibernate就没多少关系了吧 去掉hibernate的缓存设置(和你说的似乎一点关系都没有) 更换mysql新版本的 jdbc驱动~。
[/Quote]

sql我是看控制台打印出来的确定没有问题的,hibernate的二级缓存没有用到,spring里面事务的传播特性我配成这样:
<tx:method name="*" propagation="REQUIRED"/>

,我把mysql的版本换过了,jdbc驱动也换了,数据也都重新生成过好多遍了,问题还是一样的
一洽客服系统 2011-01-31
  • 打赏
  • 举报
回复
你都确定了 sql没有问题 那和hibernate就没多少关系了吧 去掉hibernate的缓存设置(和你说的似乎一点关系都没有) 更换mysql新版本的 jdbc驱动~。

67,513

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧