我正在使用mybatis 3.2.2,并且所有mapper接口都扩展了一个基本接口,代码如下: 基础界面:
public interface BaseMapper<T>{
public int insert(T record);
public int insertSelective(T record);
}
public interface JobMapper extends BaseMapper<Job>{
}
然后我测试惰性方法,
jobMapper.insert(job);
错误是:
java.lang.NoSuchMethodError: com.xxx.framework.dao.ifaces.JobMapper.insert(Lcom/xxx/framework/model/Job;)I
但如果是这样的话:
public interface BaseMapper{
public int insert(Job record);
public int insertSelective(Job record);
}
public interface JobMapper extends BaseMapper{
}
结果是正确的。
我真的想使用通用基接口来实现一些常见的方法,比如添加,更新,删除等。 有人能告诉我吗?
答案 0 :(得分:0)
我在我的一个项目中有一个通用基接口的工作示例,因此可以使用正确的mybatis配置。然而,由于没有附上你的mybatis配置,很难说出你的情况有什么不妥。
我认为你可以尝试添加类型别名包配置(如果你还没有)来解决这个问题:
<typeAliases>
<package name="com.xxx.framework.model"/>
</typeAliases>