2008-01-07
Hibernate与大字段的持久化
关键字: hibernate
hibernate对于大字段的支持依赖于数据库的实现。
经常遇到这样的问题,如在oracle下如何把超过4000byte的字符串保存到数据库中,而varchar2的最大长度是4000。看了大半天hibernate对clob的支持,觉得太繁琐了,经过同事的实验,发现仅仅需要将oracle中该字段直接手工alter为clob,而在hibernate中对该字段的映射不变,直接设置为string类型,对于过去为varchar即可,长度保留为4000(似乎不限)。至于原因,应该是oracle的驱动在这方面作的很强大,自动将clob类型解析为hibernate的string。
在mysql下,只需要将hibernate映射对象设置为text即可。
最后,注意hibernate的hibernate.hbm2ddl.auto设置为update,这样oracle的修改才不会丢失.
经常遇到这样的问题,如在oracle下如何把超过4000byte的字符串保存到数据库中,而varchar2的最大长度是4000。看了大半天hibernate对clob的支持,觉得太繁琐了,经过同事的实验,发现仅仅需要将oracle中该字段直接手工alter为clob,而在hibernate中对该字段的映射不变,直接设置为string类型,对于过去为varchar即可,长度保留为4000(似乎不限)。至于原因,应该是oracle的驱动在这方面作的很强大,自动将clob类型解析为hibernate的string。
在mysql下,只需要将hibernate映射对象设置为text即可。
最后,注意hibernate的hibernate.hbm2ddl.auto设置为update,这样oracle的修改才不会丢失.
- 22:06
- 浏览 (169)
- 论坛浏览 (1246)
- 评论 (1)
- 分类: J2EE
- 相关推荐
最新评论
-
将HashMap封装成一个Link ...
tigers 写道看来大家没理解上面的意思,上面是说把HashMap封装成Lis ...
-- by cuiyi.crazy -
基于Quartz的高频率同步
毛 瞎说, qutarz有这样的实现,而且spring-qutarz也提供了这样 ...
-- by duobin3000 -
程序员的气质
我可以把你的特征概括为时间观,我想时间观也是一个程序员应该具有的重要特质,由此也 ...
-- by tigers -
程序员的气质
在团队中我总是把项目的时间进程放在第一位所有问题的解决都是以时间为先决条件
-- by spyker -
项目管理沟通之道
项目经理70%以上的时间用于沟通 教科书是这么说,这个教科书不是憋在实验室里面 ...
-- by yecllsl







评论排行榜