Tôi đang nâng cấp ứng dụng Spring 3 lên Spring 4. My @Repository
có ParameterizedRowMapper
đối tượng để ánh xạ kết quả SQL cho các đối tượng. Nhưng kể từ mùa xuân 4 giao diện đó đã được deprecated "ủng hộ thường xuyên SingleColumnRowMapper
". Nhưng tôi sử dụng người lập bản đồ để lập bản đồ nhiều cột. Làm cách nào để lập bản đồ nhiều cột bằng cách sử dụng SingleColumnRowMapper
? Hay tôi muốn làm điều gì đó hoàn toàn khác biệt?Nâng cấp từ ParameterizedRowMapper sang SingleColumnRowMapper cho nhiều cột
Ví dụ, đây là loại mã tôi có bây giờ:
private static final ParameterizedRowMapper<Thing> THING_ENTRY_MAPPER = new ParameterizedRowMapper<Thing>() {
@Override
public Thing mapRow(ResultSet rs, int rowNum) throws SQLException {
return new Thing(rs.getLong(1), rs.getLong(2), rs.getInt(3));
}
};
@Override
public List<Thing> getThings(
ID id, long start, long end) {
final Map<String, Object> params = new HashMap<String, Object>(4);
putIDParams(params, id);
putTimeRangeParams(params, start, end);
return getNamedParameterJdbcTemplate().query(QUERY_THING, params,
THING_ENTRY_MAPPER);
}
Làm thế nào tôi nên được thực hiện rằng loại chức năng bây giờ?
Hmm không chắc tại sao nó ở đó nhưng tôi chắc chắn đó là lỗi đánh máy. Nó phải là ['RowMapper'] thông thường (http://docs.spring.io/spring-framework/docs/current/javadoc-api/org/springframework/jdbc/core/RowMapper.html) thay thế. Vì Spring 3.x được tham số hóa và vì vậy 'ParameterizedRowMapper' đã lỗi thời. –
Xem thêm http://stackoverflow.com/questions/6960542/parameterizedrowmapper-is-recommended-or-rowmapper – Raedwald