Java 如何在MyBatis中对两个不同的resultMaps重复使用相同的SELECT查询?
我有一个mapper resultMap,其中有两个集合需要内联选择 这两个集合的查询完全相同,但生成的映射彼此非常不同。有没有一种方法可以将同一个选择与两个不同的结果映射一起使用 我必须内联运行这些查询,因为如果它是主查询的一部分,由于左连接,它将导致额外的几千条记录 我不能使用SQL,因为它只允许静态参数解析,而不允许动态参数解析 有没有一种方法可以将同一个选择与两个不同的结果映射一起使用 是的,您可以将相同的选择用于两个不同的结果贴图,如下所示 选择名字、姓氏等其他属性。。。 从桌子上 first_name={searchParams.firstName} last_name={searchParams.lastName} getAsType1SearchParams搜索参数-> getAsType2SearchParams搜索参数-> ... ... 不用担心where和and子句,MyBatis会的 您的Java代码可能如下所示: 包com.example; 导入org.apache.ibatis.annotations.Param; 导入org.springframework.stereotype.Repository; //其他进口 @存储库 公共接口PersonRepository{ 公开名单getAsType1@ParamsearchParamsSearchParams SearchParams; 公开名单getAsType2@ParamsearchParamsSearchParams SearchParams; } SearchParams只是一个带有firstName、lastName等的POJO 有没有一种方法可以将同一个选择与两个不同的结果映射一起使用 是的,您可以将相同的选择用于两个不同的结果贴图,如下所示 选择名字、姓氏等其他属性。。。 从桌子上 first_name={searchParams.firstName} last_name={searchParams.lastName} getAsType1SearchParams搜索参数-> getAsType2SearchParams搜索参数-> ... ... 不用担心where和and子句,MyBatis会的 您的Java代码可能如下所示: 包com.example; 导入org.apache.ibatis.annotations.Param; 导入org.springframework.stereotype.Repository; //其他进口 @存储库 公共接口PersonRepository{ 公开名单getAsType1@ParamsearchParamsSearchParams SearchParams; 公开名单getAsType2@ParamsearchParamsSearchParams SearchParams; }Java 如何在MyBatis中对两个不同的resultMaps重复使用相同的SELECT查询?,java,spring,mybatis,Java,Spring,Mybatis,我有一个mapper resultMap,其中有两个集合需要内联选择 这两个集合的查询完全相同,但生成的映射彼此非常不同。有没有一种方法可以将同一个选择与两个不同的结果映射一起使用 我必须内联运行这些查询,因为如果它是主查询的一部分,由于左连接,它将导致额外的几千条记录 我不能使用SQL,因为它只允许静态参数解析,而不允许动态参数解析 有没有一种方法可以将同一个选择与两个不同的结果映射一起使用 是的,您可以将相同的选择用于两个不同的结果贴图,如下所示 选择名字、姓氏等其他属性。。。 从桌子上 f
SearchParams只是一个带有名字、姓氏等的POJO。啊,太完美了。因此,它的工作原理与常规查询参数映射类似。非常感谢您的指导,非常完美。因此,它的工作原理与常规查询参数映射类似。非常感谢您的指导