Mybatis“;java.lang.IllegalArgumentException:Result Maps集合已包含“的值”;映射嵌套类时出错
我得到一个java.lang.IllegalArgumentException:Result Maps集合已包含“尝试对嵌套类执行某些XML映射时出错”的值: 我有以下嵌套类结构:Mybatis“;java.lang.IllegalArgumentException:Result Maps集合已包含“的值”;映射嵌套类时出错,java,mybatis,Java,Mybatis,我得到一个java.lang.IllegalArgumentException:Result Maps集合已包含“尝试对嵌套类执行某些XML映射时出错”的值: 我有以下嵌套类结构: package com.test; public class ObjectA { private List<ObjectB> entries; public ObjectA(List<ObjectB> entries) { this.entries = entries
package com.test;
public class ObjectA {
private List<ObjectB> entries;
public ObjectA(List<ObjectB> entries) {
this.entries = entries;
}
public void setEntries(List<ObjectB> entries) {
this.entries = entries;
}
public List<ObjectB> getEntries() {
return this.entries;
}
public class ObjectB {
private String param1;
public ObjectB(String param1) {
this.param1 = param1;
}
public void setParam1(String param1) {
this.param1 = param1;
}
public String getParam1() {
return this.param1;
}
}
}
package.com.test;
公共类对象{
私人名单条目;
公共对象A(列表条目){
this.entries=条目;
}
公共无效集合项(列表项){
this.entries=条目;
}
公共列表getEntries(){
返回此条目;
}
公共类对象B{
私有字符串param1;
公共对象B(字符串参数1){
this.param1=param1;
}
公共void setParam1(字符串param1){
this.param1=param1;
}
公共字符串getParam1(){
返回此参数。1;
}
}
}
xml映射器如下所示:
<resultMap id="ObjectA" type="com.test.ObjectA">
<collection property="entries" resultMap="Entries"/>
</resultMap>
<resultMap id="Entries" type="com.test.ObjectA.ObjectB">
<result property="param1" column="column1"/>
</resultMap>
如果我将ObjectB类置于ObjectA类之外,映射工作正常。但问题是我不想这样做。我想将其嵌套
谢谢我在这里看到两个问题:
$
,而不是
。因此,路径应该是com.test.ObjectA.ObjectB
,而不是com.test.ObjectA$ObjectB
公共静态类ObjectB…
)我认为您可以为错误添加完整堆栈跟踪。