如何实现将将该如何改写为一个长尾词的?
- 内容介绍
- 文章标签
- 相关推荐
本文共计313个文字,预计阅读时间需要2分钟。
1. 定义了一个内部类 + 2. m
javaclass Outer { private String name;
class Inner { private Integer min; private Integer max;
// getter... // setter... }}
1.定义了一个内部类
1234567891011class Outer{ private String name; class Inner{ private Integer min; private Integer max; } getter... setter...}2.mybatis实现了对应内部类的resultMap
12343.最后的结果报异常:
1org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.executor.ExecutorException: No constructor found in com.cheng.test.Outer$Inner matching [java.lang.Integer, java.lang.Integer]4.报的异常是说我缺少构造函数,但是定义类内部类的构造函数也没用.Outer类里,写Inner构造函数会提示错误.请问是哪里有问题?
以上是原问题.
根据
1jpmonty的答案我实现成功了,就是增加了一个静态声明就解决了. 在
1mybatis中调用内部类要用
1$符号,这也是网上查到的,但是没有说明需要使用静态内部类.至于原因,我的猜测是,静态内部类能直接调用
1new Inner(),而内部类却只能通过
1new Outer()生成的实例来调用内部类.所以可以通过这种方法实现.
本文共计313个文字,预计阅读时间需要2分钟。
1. 定义了一个内部类 + 2. m
javaclass Outer { private String name;
class Inner { private Integer min; private Integer max;
// getter... // setter... }}
1.定义了一个内部类
1234567891011class Outer{ private String name; class Inner{ private Integer min; private Integer max; } getter... setter...}2.mybatis实现了对应内部类的resultMap
12343.最后的结果报异常:
1org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.executor.ExecutorException: No constructor found in com.cheng.test.Outer$Inner matching [java.lang.Integer, java.lang.Integer]4.报的异常是说我缺少构造函数,但是定义类内部类的构造函数也没用.Outer类里,写Inner构造函数会提示错误.请问是哪里有问题?
以上是原问题.
根据
1jpmonty的答案我实现成功了,就是增加了一个静态声明就解决了. 在
1mybatis中调用内部类要用
1$符号,这也是网上查到的,但是没有说明需要使用静态内部类.至于原因,我的猜测是,静态内部类能直接调用
1new Inner(),而内部类却只能通过
1new Outer()生成的实例来调用内部类.所以可以通过这种方法实现.

