我是 Spring 新手,正在阅读“Spring in Action”一书,我对以下示例有疑问:
public Employee getEmployeeById(long id) {
return jdbcTemplate.queryForObject(
"select id, firstname, lastname, salary " +
"from employee where id=?",
new RowMapper<Employee>() {
public Employee mapRow(ResultSet rs,
int rowNum) throws SQLException {
Employee employee = new Employee();
employee.setId(rs.getLong("id"));
employee.setFirstName(rs.getString("firstname"));
employee.setLastName(rs.getString("lastname"));
employee.setSalary(rs.getBigDecimal("salary"));
return employee;
}
},
id);
}
queryForObject(...) 的第二个参数“new RowMapper() ...”的类型是什么,这是什么Java语法?
它看起来像是获得了一个类 RowMapper 的新实例,直到大括号,它看起来像只有一个方法 mapRow 的类声明。这种语法看起来很奇怪,我从未在 Java 中看到过。
那么有人会解释这是什么吗?
非常感谢!