1
我正在使用時態版本化數據,因此大多數查詢都需要時間點和組ID。我如何將這些傳遞給我的嵌套多對一查詢?如何從@Result在MyBatis中將參數傳遞給@One
例如:
@Select("select * "
+ "from type1 "
+ "where effective_date <= #{0, typeHandler=...} "
+ "and termination_date > #{0, typeHandler=...}")
@Results({
@Result(property = "id", column = "id"),
@Result(property = "groupId", column = "group_id"),
// ...
@Result(property = "type2", column = "type2_group_id", javaType = Type2.class,
one = @One(select = "com...mapper.Type2Mapper.getByGroupId")) // **
// ...
})
使得Type2Mapper具有:
@Select(...)
Type2 getByGroupId(Date date, Long groupId);
由// **標識的線必須與type2_group_id一起傳遞既傳給它的日期。很明顯,我可以重新排列一些事情或任何需要做的工作,我只是希望我不必去改變我的模型,以包含一個Long type2GroupId,然後在事實之後填充type2實例。
有什麼想法?
另一種解決方案是在這裏描述: http://stackoverflow.com/questions/17193040/passing-multiple-columns-in-mybatis-assoctiation –