背景:项目启动没有问题,可是访问数据库报错。java
2019-01-21 17:42:44.677 ERROR 2966 --- [nio-8037-exec-2] o.a.c.c.C.[.[.[.[dispatcherServlet] : Servlet.service() for servlet [dispatcherServlet] in context with path [/micro-order] threw exception [Request processing failed; nested exception is org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.builder.BuilderException: Error invoking SqlProvider method (tk.mybatis.mapper.provider.base.BaseSelectProvider.dynamicSQL). Cause: java.lang.InstantiationException: tk.mybatis.mapper.provider.base.BaseSelectProvider] with root causespring
java.lang.NoSuchMethodException: tk.mybatis.mapper.provider.base.BaseSelectProvider.<init>()
at java.lang.Class.getConstructor0(Class.java:3082) ~[na:1.8.0_171]
at java.lang.Class.newInstance(Class.java:412) ~[na:1.8.0_171]
at org.apache.ibatis.builder.annotation.ProviderSqlSource.createSqlSource(ProviderSqlSource.java:117) ~[mybatis-3.4.5.jar:3.4.5]数据库
解决方式:@MapperScan导入包错误,将import org.mybatis.spring.annotation.MapperScan 改为import tk.mybatis.spring.annotation.MapperScan;apache
@MapperScan(basePackages = "cn.com.autohome.finance.dao") public class MicroInsuranceOrderServiceApplication { public static void main(String[] args) { setApolloEnv(); SpringApplication.run(MicroInsuranceOrderServiceApplication.class, args); } }