Java “我如何设置属性”;价格类别“';如果sql的结果集不';t包括列“;价格“U类”;?

Java “我如何设置属性”;价格类别“';如果sql的结果集不';t包括列“;价格“U类”;?,java,orm,ibatis,Java,Orm,Ibatis,我遇到了一个关于ibatis动态sql映射的问题。 我的数据库查询是通过存储过程实现的,根据某些条件,该过程将转到子过程A或B。现在问题来了,子过程A将返回列“price_category”,它将被ibatis的resultMap映射到属性“priceCategory”,但是子过程B将不返回列“price_category”,ibatis将抛出异常,因为无法进行映射。 所以我的想法是通过动态映射来解决这个问题,这意味着如果sql不返回列“price_category”,ibatis将在resul

我遇到了一个关于ibatis动态sql映射的问题。 我的数据库查询是通过存储过程实现的,根据某些条件,该过程将转到子过程A或B。现在问题来了,子过程A将返回列“price_category”,它将被ibatis的resultMap映射到属性“priceCategory”,但是子过程B将不返回列“price_category”,ibatis将抛出异常,因为无法进行映射。 所以我的想法是通过动态映射来解决这个问题,这意味着如果sql不返回列“price_category”,ibatis将在resultMap中将“priceCategory”设置为null。这可以通过ibatis中的一些配置技巧来实现吗?我认为ibatis应该能够做到这一点,但我没有在其他地方找到相关信息。你能给我讲几点吗?
谢谢大家。

您可以让过程B返回一个空值的伪列。例如:

select a, b, c, null as priceCategory from myTable
// rest of your procedure code here