我有以下内容:
public class DifferentClass {
Map<String,AnotherClass>someMap;
}
public class AnotherClass {
Class<?> dataType;
public void setDataType(Class<?> val) {
this.dataType=val;
}
}
public class A {
...
public static class B {
...
}
...
}
以下spring bean配置:
&lt; bean id =“springRefName”class =“my.project.path.to.DifferentClass”&gt;
...
&lt; property name =“someMap”&gt;
&LT;映射&GT;
...
&lt; entry key =“someName”&gt;
&lt; bean class =“my.project.path.to.AnotherClass”&gt;
&lt; property name =“dataType”value =“my.project.path.to.A $ B”/&gt;
&LT; /豆腐&GT;
&LT; /条目&GT;
...
&LT; /地图&GT;
&LT; /性&gt;
...
&LT; /豆腐&GT;
我遇到的问题是当我调用dataType.getCanonicalName()时,我只得到my.project.path.to.A。这让我相信Spring在转换为Class以分配给AnotherClass.dataType时会截断名称。我用$和a。
尝试过