Tôi đang sử dụng Spring JDBC và tôi không chắc chắn về cách làm việc với nhiều quan hệ một-nhiều (hoặc nhiều-nhiều). Trong trường hợp này tôi đang tiêm một kho lưu trữ vào một trong các resultsetextractors của tôi để tôi có thể truy xuất các kết hợp của nó. Đây có phải là cách để làm điều đó không? Nó có tồi không? Có cách nào khác tốt hơn không?Nhiều mối quan hệ một-nhiều trong Spring JDBC
Lưu ý: Tôi đã bỏ qua việc tiêm kho
public class SomeResultSetExtractor implements ResultSetExtractor {
public Object extractData(ResultSet rs) throws SQLException, DataAccessException {
List result = new LinkedList();
while (rs.next()) {
SomeObject object = new SomeObject(rs.getString(1), rs.getLong(2));
result.add(object);
List<AnotherObject> otherObjects = anotherRepository.findAllById(object.getId);
object.setOtherObjects(otherObjects);
// and so on
}
return result;
}
}
Okey nên sau khi đọc Dmytro Polivenok câu trả lời tôi đã thay đổi giao diện RowMapper thay vào đó và tôi hiện đang sử dụng các kho khác để cư tất cả các hiệp hội như Tôi thể hiện trong ví dụ của tôi. Đây có phải là cách hay để làm điều đó không?
Kho lưu trữ có bắt đầu một truy vấn SQL mới không? – tkr