当前位置:首页 > Hibernate

Hibernate读取Blob乱码

canca19年前 (2007-10-12)Hibernate820

        在项目中又遇到乱码了!这我已经司空见惯了。呵呵.说说Hibernate读取Blob时为什么会乱码吧!!

        说Blob乱码的,都一定是用blob来存放文本类型的东东吧!如果是二进制的,没什么乱码与不乱码之分啦。问题就出现在这里。blob存放是以二进制来存放的。当然,你写进数据库时是以gb2312编码进行写入。但Hibernate读取出来时转成String类型.Hibernate会进行一些底层处理有如:new String(str.getBytes("iso8859-1"),"gb2312"); 它这种操作是无法还原的。

          解决方案:

           1.将数据库中用bolb类型存放字符的通通改成MediumText或LongText类型。

           2.改Hibernate包。

           3.修改Hibernate映射表。将blob类型映射为blob,再在DAO里进行处理。

呵呵,第二种解决方案留给专家去做吧!!第三种没试不过一定可行的。

 

CAnca Torvals

2007.10.12

扫描二维码推送至手机访问。

版权声明:本文由Ant.Master's Blog发布,如需转载请注明出处。

本文链接:https://iant.work/post/534.html

标签: Hibernate
分享给朋友:

“Hibernate读取Blob乱码” 的相关文章

Hibernate读取Blob类型方法

java 有Blob Clob 类型 像是对其他类型一样写 POJOprivate Blob image; set get........<propery   name="i…

关于VO、PO的理解

O/R Mapping 是 Object Relational Mapping(对象关系映射)的缩写。通俗点讲,就是将对象与关系数据库绑定,用对象来表示关系数据。在O/R Mapping的世界里,有两个基本的也是重要的东东需要了解,即VO,PO。 VO,值对象(Value Object),...…

关于Hibernate3的NativeSQL查询是如此简单

转自:http://blog.donews.com/rory/archive/2006/07/22/973406.aspx 现在的系统中虽然使用了。Hibernate但是没有使用Hibernate的关联关系来进行数据库操作。所有的管理操作都是单独实现的。所以也不能用Criteria.add()这种方…

hibernate 查询时 对日期的比较

Hibernate's Built-in criterion: Between (using with Date) In this section, you will learn to use "between" i.e.one of the built-in hibernate criterion…

Hibernate 一对一主键单向关联

1-1的关联可以基于主键关联,但基于主键关联的持久化类不能拥有自己的主键生成策略,它的主键由关联类负责生成.另外,另外,增加one-to-one元素来关联属性,必须为one-to-one元素增加constrained="true"属性,表明该类主键由关联类...…

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。