关于SpringBoot项目在自动注入时mapper报空指针异常的问题


关于SpringBoot项目在自动注入时mapper报空指针异常的问题

今天在做一个入门前后端分离项目的时候,测试DAO层遇到一个问题

@SpringBootTest
public class BookMapperTest {
	
	@Autowired
	private BookMapper bookMapper;				//debug显示bookMapper为null
	
	@Test
	public void findAll(){
		
		List<Book> books = bookMapper.selectList(null);			//空指针异常
		
		for (Book book: books) {
			System.out.println(book);
		}	
	}	
}

首先想到的是mapper接口中是不是没写@Mapper

@Mapper
public interface BookMapper extends BaseMapper<Book> {
}

一查发现是写了的

在网上查了很久终于发现一位博主的解答完美解决

只需要在测试类上加上@RunWith注解即可

@SpringBootTest
@RunWith(SpringJUnit4ClassRunner.class)
public class BookMapperTest {	
	@Autowired
	private BookMapper bookMapper;	
	@Test
	public void findAll(){	
		List<Book> books = bookMapper.selectList(null);		
		for (Book book: books) {
			System.out.println(book);
		}
	}
}
image-20220216163113625


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM