Java 从包含分组的表中选择
我想选择如下所示的对象列表Java 从包含分组的表中选择,java,orm,mybatis,Java,Orm,Mybatis,我想选择如下所示的对象列表 class CategoryProduct { String id String name List<String> products } getTemplate().selectList(getNamespace() +".getProductsForAllCategories"); id: CATEGORY_1, name: 'first category', products: [CATEGORY_1, CATEGORY
class CategoryProduct {
String id
String name
List<String> products
}
getTemplate().selectList(getNamespace() +".getProductsForAllCategories");
id: CATEGORY_1,
name: 'first category',
products: [CATEGORY_1, CATEGORY_1]
我期待这个结果
id: CATEGORY_1,
name: 'first category',
products: [PRODUCT_1, PRODUCT_2]
但我得到的结果是这样的
class CategoryProduct {
String id
String name
List<String> products
}
getTemplate().selectList(getNamespace() +".getProductsForAllCategories");
id: CATEGORY_1,
name: 'first category',
products: [CATEGORY_1, CATEGORY_1]
它不返回产品,而是在产品
字段中复制id
。为什么呢?有什么问题
还需要分组依据。我将我的结果映射更改为
<resultMap type="CategoryProduct" id="categoryProductMap">
<id property="id" column="cpm_category"/>
<result property="name" column="c_name"/>
<collection property="products" ofType="string" javaType="java.util.ArrayList">
<result column="cpm_license_product"/>
</collection>
</resultMap>
它开始起作用了