Hello, after several minutes of trying I make up how to use @Many annotation - there is no example of it neither in documentation nor in iBatis test suite:
@Select( "select product.*, product.id as idProduct, productGroup.name as groupName, productGroup.groupType" + " from product inner join productGroup on idGroup = productGroup.id" + " where id = #{id}" ) @Results({ @Result(property = "id", id = true), @Result(property = "name"), @Result(property = "group.id", column = "idGroup", id = true), @Result(property = "group.name", column = "groupName"), @Result(property = "group.groupType", column = "groupType"), @Result(property = "tags", column = "idProduct", many = @Many(select = "cz.novoj.ibatis.ProductMapper.getTagsForProduct") ) }) Product getFullProductByIdAnnotation(int id); @Select("select tag.id, tag.name" + " from tag inner join productTag on productTag.idTag = tag.id" + " where productTag.idProduct = #{value}" ) List<Tag> getTagsForProduct(int idProduct); I deduce, that I am not able to define collection loading in annotations other way than by lazy select (N + 1 problem?!). I don't see how to use it for single joined SQLs. Am I right? Cheers Jan -- -------------------------------------------------------------- Ing. Jan Novotný @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ http://blog.novoj.net Myšlenky dne otce Fura --------------------------------------------------------------