关于SpringBoot项目在自动注入时mapper报空指针异常的问题
关于SpringBoot项目在自动注入时mapper报空指针异常的问题
今天在做一个入门前后端分离项目的时候,测试DAO层遇到一个问题
@SpringBootTest
public class BookMapperTest {
@Autowired
private BookMapper bookMapper; //debug显示bookMapper为null
@Test
public void findAll(){
List books = bookMapper.selectList(null); //空指针异常
for (Book book: books) {
System.out.println(book);
}
}
}
首先想到的是mapper接口中是不是没写@Mapper
@Mapper
public interface BookMapper extends BaseMapper {
}
一查发现是写了的
在网上查了很久终于发现一位博主的解答完美解决
只需要在测试类上加上@RunWith注解即可
@SpringBootTest
@RunWith(SpringJUnit4ClassRunner.class)
public class BookMapperTest {
@Autowired
private BookMapper bookMapper;
@Test
public void findAll(){
List books = bookMapper.selectList(null);
for (Book book: books) {
System.out.println(book);
}
}
}