调用mybatis时参数类型为一个包含动态内部类的参数类型,那么会报ClassNotFoundException
原因:mybatis会调用jdk的sysClassLoader.forName()方法。而Result并不是静态类型,属于动态内部类,外部不可访问,只能在ModelResult 进行实例化。故导致直接new也会报错。
解决方法:改为public static class Result
public class ModelResult {
private List<Result> list = new ArrayList<ModelResult.Result>() {
public class Result {
}
}
原因:mybatis会调用jdk的sysClassLoader.forName()方法。而Result并不是静态类型,属于动态内部类,外部不可访问,只能在ModelResult 进行实例化。故导致直接new也会报错。
解决方法:改为public static class Result