關於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