今天刚接触SSM,在搭建好框架后,写了一个单元测试,看看后端程序是否能运行起来,结果一直报错,错误大致如下:
org.apache.ibatis.binding.BindingException:Invalid bound statement (not found): com.doctor.dao.UserDAO.queryByNameAndAge
at org.apache.ibatis.binding.MapperMethod$SqlCommand.<init>(MapperMethod.java:223)
at org.apache.ibatis.binding.MapperMethod.<init>(MapperMethod.java:48)
at org.apache.ibatis.binding.MapperProxy.cachedMapperMethod(MapperProxy.java:59)
at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:52)
at com.sun.proxy.$Proxy14.queryByNameAndAge(Unknown Source)
at com.doctor.service.serviceImpl.UserServiceImpl.queryByNameAndAge(UserServiceImpl.java:37)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:333)
一直报错,检查了很多地方,在搜索过很多相关BUG解决方法,最后发现,DAO的类与Mapper的xml名称也要保持一致,不仅方法名连文件名都要一致。