1

我使用 oracle TopLink 作为持久层,并在 java 中实现了业务逻辑。我正在使用表达式和表达式构建器类从数据库中获取数据。问题是在数据库表中我们没有重复的行,但是当我通过 ReadObjectQuery 类查询数据库时,我收到的行数与数据库表中的行数相同,但每次都重复第一条记录,这样所有行都显示第一条记录。

请尽快帮助我

4

1 回答 1

0

如果您在映射中定义的主键字段根本不是唯一的,则通常会出现此行为。发生的情况是,Toplink 检索第一行并将其转换为 Java 对象。对于连续的行,定义的主键字段似乎与第一行中的主键字段相同。因此,Toplink 不再进行转换,而是从其缓存中加载具有相同键的对象,即与第一行相关的对象。

于 2009-10-21T06:12:23.460 回答