mybatis报找不到类

调用mybatis时参数类型为一个包含动态内部类的参数类型,那么会报ClassNotFoundException
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

猜你喜欢

转载自nj-link.iteye.com/blog/2195888