【ibatis】IBatis返回map类型数据

有时侯不想创建javabean,或者污染现有的javaBean对象,就需要返回Map类型的数据对象;

1)最简单的方法就是将查询到的字段,使用""进行引起来,这样就可以返回map类型了;

2)或者写成ResultMap,来进行字段的映射也是可以的;

例子如下:

 

<select id="queryProductInfo"  parameterClass="java.util.HashMap"   resultClass="java.util.HashMap">
  select a.marketproduct_code "productCode",
      a.marketproduct_name "productName",       a.product_class "productClass",       (select t.value_chinese_name from product_base_data t where t.collection_code = 'CPDL' and t.value_code = a.product_class) "productClassName",
      a.is_combined "isCombined",    a.combind_relation "packageType",    a.IS_SELF_CARD "isSelfCard",   (select decode(count(1), 0, '0', '1') from package_info t1 where t1.id_marketproduct_info = a.id_marketproduct_info) "hasPackage",    a.is_self_card "productKind",    a.marketproduct_type "productType",       b.least_copy_num "leastInusureAmout",
      b.top_copy_num "topInsureAmout",       b.insure_period_lmt_of_mon "periodSetMonth",       b.insure_period_lmt_of_day "periodSetDay",       b.least_accept_insure_age "leastAcceptInusrAge",       b.top_accept_insure_age "topAcceptInsurAge",       a.target_type "targetType",       b.PROFESSION_TYPE "professionType",       b.SPECIAL_PROMISE "specialPromise",       a.version "version"
    from marketproduct_info a,marketproduct_rule_param b, technic_product_info c where a.marketproduct_code = #marketproductCode#       and a.version = #version#       and a.id_marketproduct_info = b.id_marketproduct_info(+)       and a.id_technic_product_info = c.id_technic_product_info
</select>

 

 

<resultMap id="getItemsResult" class="java.util.HashMap">
  <result property="itemName" column="item_name" />
  <result property="itemValue" column="item_value" />
</resultMap>

<select id="getItems" resultMap="getItemsResult">
      select item_name, item_value from item_table
</select>

 

posted @ 2015-02-04 17:54  BalmyLee  阅读(2025)  评论(0编辑  收藏  举报