项目场景:
问题描述:@RunWith(SpringJUnit4ClassRunner.class)报错
第一步:首先确保你的pom下有这两个依赖的jar包坐标。注意junit版本要4.12或者以上。我这里用的是4.13.
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.13</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-test</artifactId>
<version>5.0.2.RELEASE</version>
</dependency>
原因分析:
版本兼容问题,确保自己修改pom的时候不能出现报错,不行的话全部删掉重新写坐标。版本不兼容出错,没及时发现<project 这一行报错。
解决方案:
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.13</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-test</artifactId>
<version>5.0.2.RELEASE</version>
</dependency>
package com.fan.test;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.test.context.ContextConfiguration;
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
import javax.annotation.Resource;
@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration("classpath:applicationContext.xml")//指定要加载的配置文件在哪
public class JdbcTemlateCRUD {
@Resource//这里要用用Resource,必须导入javax.annotation-api包,如果不想导包,用@Autowired
private JdbcTemplate jdbcTemplate;
@Test
public void testUpdate(){
String sql = "insert into user values (?,?)";
int update = jdbcTemplate.update(sql, "sary33", 44);
System.out.println(update);
}
}
@ContextConfiguration(“classpath:applicationContext.xml”)//指定要加载的配置文件在哪