这是我的班级..我保持简单。
public void DummyClass {
public int id;
public List<DummyClass> dummyList;
getter / setter...
}
假设我有一个表(DummyTable),其中包含2列id,parentid,并且我有多行,例如:
ID,PARENTID
1,1(条目是父母)
2,1(条目具有id为1的父)
3,2(该条目具有id为2的父级)
4,2 ...
5,3 ..
6,6(参赛作品为父母)
7,6(该条目的父母为6)
有人可以告诉我带有注释的mybatis中的样子吗?我试过这样:
public interface DummyMapper {
final String SelectAll = "Select * from DummyTable";
final String SelectDummy = "Select * from DummyTable where parentid = #{id}";
@Select(SelectAll)
@Results({
@Result(property = "id", column = "id"),
@Result(property = "dummyList", column = "id", javaType = java.util.List.class, many = @Many(select="getDummyChildren")
})
public DummyClass getAllDummies();
@Select(SelectDummy)
public DummyClass getDummyChildren()
}
某人有一个指向页面的链接,其中描述了如何执行此操作..或任何想法???
答案 0 :(得分:0)
好的,我犯了一个错误..
public interface DummyMapper {
final String SelectAll =&#34;从DummyTable&#34;中选择*; final String SelectDummy =&#34;从DummyTable中选择*,其中parentid =#{id}&#34 ;;
@Select(SelectAll)
@Results({
@Result(property = "id", column = "id"),
@Result(property = "dummyList", column = "id", javaType = java.util.List.class, many = @Many(select="getDummyChildren")
})
public DummyClass getAllDummies();
@Select(SelectDummy)
public List<DummyClass> getDummyChildren(@Param("id") int id);
}
首先你是对的..我应该使用List作为getDummyChildren的返回值。然后我通过@Param(&#34; id&#34;)和int id扩展了getDummyChildren。
问题解决了。它对我来说很好。