MyBatis ResultMap 关联 Java Api

MyBatis ResultMap Association Java Api

我在mybatis的文档中指的是这个部分: https://mybatis.org/mybatis-3/sqlmap-xml.html#Nested_Results_for_Association

我有一个 table 行,其中包含有关两个实体 (A, B) 的信息。我想解析一个实体并将另一个实体关联到第一个实体:

public class A {
    int id;
    String name;
    B b;
}

public class B {
    long number;
    String description;
}

我可以看到我是通过 xml 和两个 resultMap 做到这一点的,其中一个通过关联标签与另一个关联。

如何用 Java Api 做同样的事情?

我的第一次尝试出现异常:

@Results( value = { ..., @Result(property = "prop", javaType = B.class, one = @One(resultMap = "de.mycompany.path.to.ClassADao.resultMapId")) })
Caused by: java.lang.IllegalStateException: No typehandler found for property prop

编辑:我在 One-Annotation 中完全限定了 resultMap 的路径。

我使用的是旧版本的 mybatis (3.5.3)。我缺少的功能出现在这个提交中:https://github.com/mybatis/mybatis-3/commit/e05d686bf8bb5b0d7c319a117e47e77e969880cb#diff-07ec4f0ed5561eb9a977945899598048e355554d0fa2e50f173e525e6b8f3574

从 3.5.5 开始可用。我升级到 3.5.7.