新手java ssm整合后的一个问题

qq_20482491 2017-04-02 02:17:27

这个是配置文件,下面是mybatis的配置内容
<!-- spring和MyBatis完美整合,不需要mybatis的配置映射文件 -->
<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
<property name="dataSource" ref="dataSource" />
<!-- 自动扫描mapping.xml文件 -->
<property name="mapperLocations" value="classpath:com/cn/hnust/mapping/*.xml"></property>
</bean>

<!-- DAO接口所在包名,Spring会自动查找其下的类 -->
<bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
<property name="basePackage" value="com.cn.hnust.dao" />
<property name="sqlSessionFactoryBeanName" value="sqlSessionFactory"></property>
</bean>

这是mybatis的包名等等

然后问题就出来了,我无论是改动dao的名称,还是自己新增一个dao,都报错,甚至在原来的dao里加个方法都报错,报错内容如下:
org.springframework.web.util.NestedServletException: Request processing failed; nested exception is org.apache.ibatis.binding.BindingException: Invalid bound statement (not found): com.cn.hnust.dao.IUserDao.getAll
org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:973)
org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:852)
javax.servlet.http.HttpServlet.service(HttpServlet.java:624)
org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:837)
javax.servlet.http.HttpServlet.service(HttpServlet.java:731)
org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:88)
org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:108)
我用的是idea,文件之间都是可以跳转的,说明名字都没错,网上找来找去都没有好的解决方法,求救呀
...全文
170 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
qq_20482491 2017-04-02
  • 打赏
  • 举报
回复
引用 3 楼 pany1209 的回复:
[quote=引用 2 楼 qq_20482491 的回复:]
[quote=引用 1 楼 pany1209 的回复:]
Invalid bound statement (not found): com.cn.hnust.dao.IUserDao.getAll
注意NameSpace+id对应接口的全限定名+方法名


我接口里的方法是这样子的
List<User> getAll();

xml里是这样子的
<select id="getAll" resultMap="BaseResultMap">
select * from user_t
</select>
namespace是对的[/quote]
或者mapper.xml文件的路径写错。。检查一下[/quote]


按住ctrl加左键能跳过去,而且idea的mybatis插件也已经可以来回跳转了,路径应该是没问题的,我刚才把selectByPrimeKey方法名改成了select如图,然后也报同一个错
李德胜1995 2017-04-02
  • 打赏
  • 举报
回复
引用 2 楼 qq_20482491 的回复:
[quote=引用 1 楼 pany1209 的回复:] Invalid bound statement (not found): com.cn.hnust.dao.IUserDao.getAll 注意NameSpace+id对应接口的全限定名+方法名
我接口里的方法是这样子的 List<User> getAll(); xml里是这样子的 <select id="getAll" resultMap="BaseResultMap"> select * from user_t </select> namespace是对的[/quote] 或者mapper.xml文件的路径写错。。检查一下
qq_20482491 2017-04-02
  • 打赏
  • 举报
回复
引用 1 楼 pany1209 的回复:
Invalid bound statement (not found): com.cn.hnust.dao.IUserDao.getAll 注意NameSpace+id对应接口的全限定名+方法名
我接口里的方法是这样子的 List<User> getAll(); xml里是这样子的 <select id="getAll" resultMap="BaseResultMap"> select * from user_t </select> namespace是对的
李德胜1995 2017-04-02
  • 打赏
  • 举报
回复
Invalid bound statement (not found): com.cn.hnust.dao.IUserDao.getAll 注意NameSpace+id对应接口的全限定名+方法名

81,092

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧