4

我目前正在使用 ibatis 返回一些 pojo,一切都很好。
我的问题是:我必须从表中返回 1 行,就像 3 个字段一样,我不想为它创建一个 pojo。我只想运行查询并获取 3 个值。有没有简单的方法可以做到这一点而无需为此创建一个特殊的 java 对象?

4

3 回答 3

4

在 IBatis.NET 中,当我们需要来自查询的多个值时,我们使用 Hashtable。

<resultMap id="ResultMap1"  class="Hashtable"> 
      <result column="FirstName" property="FirstName" type="string" /> 
          <!-- shows up as "FirstName"  in the Hashtable --> 
      <result column="LastName" property="LastName" type="string" /> 
          <!-- shows up as "LastName"  in the Hashtable --> 
</resultMap> 
于 2009-03-24T15:00:34.833 回答
0

我不知道有任何方法可以按照您的要求进行操作;iBATIS 的具体目的是自动将关系模型映射到类。

我不确定您要做什么,但是如果您有有意义的数据,则应该能够映射到某种对象,即使该对象是短暂的。我猜你需要一些基于你的查询获取的值的逻辑?如果是这种情况,请创建一个新的 POJO,将查询映射到它,然后将逻辑移动到新的 POJO 中,而不是现在的任何地方。这将使代码更简洁,更易于维护。

如果您只是想在不映射到类的情况下提取原始数据,您可能需要重新审视您的设计。

(我知道这不是你要找的答案......对不起。)

于 2009-03-24T15:27:52.927 回答
0

您可以将结果映射到 java.util.HashMap(如果要保留字段顺序,则为 LinkedHashMap)。

于 2009-04-10T17:55:06.803 回答