我有一个奇怪的编译问题。我无法解决此问题。同样的代码在另一个项目中也能正常工作
org.mockito.Mockito.when(jdbcTemplate.query(org.mockito.Matchers.anyString(), org.mockito.Matchers.any(BeanPropertyRowMapper.class))).thenReturn(SOMELIST);
我收到错误消息
The method query(String, ResultSetExtractor<T>) in the type JdbcTemplate is not applicable for the arguments (String, BeanPropertyRowMapper)
但是,当我这样做时,不会出现任何错误。但是我没想到这一点。
BeanPropertyRowMapper<MyClass> mapper = new BeanPropertyRowMapper<MyClass>(MyClass.class); org.mockito.Mockito.when(jdbcTemplate.query(org.mockito.Matchers.anyString(), mapper)).thenReturn(SOMELIST);
我不确定这是否是Eclipse问题。感谢您的帮助。
由于BeanPropertyRowMapper<T>是通用接口,因此您应该any()像这样调用:
BeanPropertyRowMapper<T>
any()
Mockito.when(jdbcTemplate.query(Matchers.anyString(), Matchers.<BeanPropertyRowMapper<MyClass>>any())).thenReturn(SOMELIST);