码迷,mamicode.com
首页 > 其他好文 > 详细

SSM搭建遇到的坑

时间:2018-12-16 13:18:11      阅读:278      评论:0      收藏:0      [点我收藏+]

标签:bind   esc   exception   base   erro   ber   block   技术分享   blog   

1,Error:(6, 24) java: package org.junit.runner does not exist

技术分享图片

错误原因:

当时傻傻的把zl 包(单元测试包)放在了src/main/java/ 目录下了.

解决办法: 测试包放在src/test/java/ 目录下.

技术分享图片

2, Failed to read artifact descriptor for org.mybatis:mybatis-spring:jar:1.3.1

在pop.xml 中配置:

<!-- DAO: Mybatis -->
<dependency>
  <groupId>org.mybatis</groupId>
  <artifactId>mybatis</artifactId>
  <version>3.4.5</version>
  </dependency>
<dependency>
  <groupId>org.mybatis</groupId>
  <artifactId>mybatis-spring</artifactId>
  <version>1.3.1</version>
</dependency>

mvn不能生成mybatis 所需要的jar包,导致mybatis 不能使用

技术分享图片

解决办法: 在File->Settings->Maven,选中

技术分享图片

3.java.lang.Exception: No runnable methods

在进行单元测试的时候,我傻傻企图运行BaseTest,并且傻傻的在BaseTest中添加了一个main,调试发现test 一直为null.

技术分享图片

 

技术分享图片

 应该是运行BookDaoTest.

4.Caused by: org.apache.ibatis.binding.BindingException: Parameter ‘offset‘ not found. Available parameters are [arg1, arg0, param1, param2]

出错原因:

List <Book> queryAll( int offset, int limit);

应该写成:

List <Book> queryAll(@Param("offset") int offset, @Param("limit") int limit);

应该写成
List <Book> queryAll(@Param("offset") int offset, @Param("limit") int limit);
引用一位大神博客里面的一句解释:https://blog.csdn.net/qq598535550/article/details/51703190#commentBox
这里为什么要给方法的参数添加@Param注解呢?是因为该方法有两个或以上的参数,一定要加,不然mybatis识别不了。
上面的BookDao接口的queryById方法和reduceNumber方法只有一个参数book_id,所以可以不用加 @Param注解,当然加了也无所谓~

SSM搭建遇到的坑

标签:bind   esc   exception   base   erro   ber   block   技术分享   blog   

原文地址:https://www.cnblogs.com/changlili/p/10126160.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!