1.最近在搭建一个定时任务工程,整合用到了mybatis,本人之前用的是Eclipse所以在resource下创建mapper包都是com.xxx.xxx.mapper一串写下来,但最近转到了idea,今天按照之前创建方式竟然一直报错,网上搜索了很多,但都没有解决问题,先把Exception贴一下:
org.apache.ibatis.binding.BindingException: Invalid bound statement (not found): com.xxx.del.mapper.ScheduletaskListenerMapper.queryByDTO at org.apache.ibatis.binding.MapperMethod$SqlCommand.<init>(MapperMethod.java:189) at org.apache.ibatis.binding.MapperMethod.<init>(MapperMethod.java:43) at org.apache.ibatis.binding.MapperProxy.cachedMapperMethod(MapperProxy.java:58) at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:51) at com.sun.proxy.$Proxy79.queryByDTO(Unknown Source) at com.xxx.del.service.impl.ScheduletaskListenerServiceImpl.queryByIdAndCode(ScheduletaskListenerServiceImpl.java:50) at com.xxx.del.schedule.ScheduleTask.isEnabled(ScheduleTask.java:103) at com.xxx.del.schedule.ScheduleTask.deleteTaskToLog(ScheduleTask.java:70) at com.xxx.del.schedule.ScheduleTask$$FastClassBySpringCGLIB$$e1c8be98.invoke(<generated>) at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:204) at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.invokeJoinpoint(CglibAopProxy.java:720) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:157) at org.springframework.aop.interceptor.AsyncExecutionInterceptor$1.call(AsyncExecutionInterceptor.java:108) at java.util.concurrent.FutureTask.run$$$capture(FutureTask.java:266) at java.util.concurrent.FutureTask.run(FutureTask.java) at java.lang.Thread.run(Thread.java:745)
配置是没有问题的,我也检查很多遍,还是不行
说一下我的解决方式:
1.Resource下那个mapper包删掉
2.先创建一个com包
3.在com上右击创建新包
大家也看出来了,就是一个包一个包去创建,最后把xml放到里面
下方高能,请勿下拉!!!
启动成功!!!