PostgreSQL
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> PostgreSQL

JDBCTemplate đặt POJO lồng nhau với BeanPropertyRowMapper

Có lẽ bạn có thể chuyển vào RowMapper tùy chỉnh có thể ánh xạ từng hàng của một truy vấn kết hợp tổng hợp (giữa tin nhắn và người dùng) thành một MessageUser lồng nhau . Một cái gì đó như thế này:

List<Message> messages = jdbcTemplate.query("SELECT * FROM message m, user u WHERE u.message_id = m.message_id", new RowMapper<Message>() {
    @Override
    public Message mapRow(ResultSet rs, int rowNum) throws SQLException {
        Message message = new Message();
        message.setTitle(rs.getString(1));
        message.setQuestion(rs.getString(2));

        User user = new User();
        user.setUserName(rs.getString(3));
        user.setDisplayName(rs.getString(4));

        message.setUser(user);

        return message;
    }
});


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. HikariCP - kết nối không khả dụng

  2. Làm thế nào để chọn bằng mệnh đề WITH RECURSIVE

  3. Truy vấn LIKE trên các phần tử của mảng jsonb phẳng

  4. Cách kiểm tra ngày trùng lặp trong PostgreSQL

  5. Mảng Postgres 9.4 jsonb dưới dạng bảng