java - Hibernate 不一致地加载 Postgresql bytea

标签 java hibernate postgresql

我在两个不同的盒子上使用 Hibernate 3.6,它们都从完全相同的数据库表中读取数据。两个字段的 Hibernate 注释是这样的:

@Basic(fetch=FetchType.EAGER)
@Column(name="encryptedkey",length = 256)
protected byte[] encryptedKey;

@Basic(fetch=FetchType.EAGER)
@Column(name="encryptediv",length = 256)
protected byte[] encryptedIV;

现在,当在一台机器(带有 Sun JDK 1.6.0_22-b04 的 Ubuntu Linux)上加载具有这些属性的实体时,我能够加载 256 字节的加密 key 和 IV。

但是,在另一台机器上情况并非如此(带有 Sun JVM 1.6.0_22-b04 的 Windows 2003 服务器 SP2 企业版),我为每个字段加载了 0 或 511 字节。否则,两个系统上的 Jar 文件是相同的。

数据库引擎是 PostgreSQL 9.0,我使用的是最新的 PostgreSQL JDBC 驱动程序。

任何人都知道可能出了什么问题?

最佳答案

原来JRE lib文件夹里面有一个PostgreSQL 8.4驱动。删除它解决了这个问题。

关于java - Hibernate 不一致地加载 Postgresql bytea,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4335088/

相关文章:

java - @ {'/path/to/static_content' } 在 PlayFramework 中有什么意义?

java - 使用 Fragment 中的按钮在 recyclerview 内发送数据

java - Hibernate的mappedBy和ManyToMany

java - 不支持对 Spring Boot : Mixing of ? 参数和 ?1 等其他形式的 native 查询

mysql - 获取表名的子查询

postgresql - SQLNestedException : Cannot create PoolableConnectionFactory 的 tomcat7 和 postgresql

java - 不带扩展名的文件夹中的输出文件

java - StaleObjectstateException 行被更新或删除

hibernate - 如何、何时何地在 hbm 文件中使用自然 ID?

java - 在 hibernate 中插入大量记录的最佳方法