spring jdbctemplate 实体列与数据表列 查询

1. BeanPropertyRowMapper接口

  1. 当我查询时,使用下面的接口,原理是根据实体类的字段名和表的列名相同时才有结果,否则对应的字段是null
List<MusicSong> songList = jdbcTemplate.query(sql.toString(), 
				new Object[]{
    
    musicListId, startLine, endLine},
                new BeanPropertyRowMapper<>(MusicSong.class));

2. 创建mapper类实现接口

class MusicSongRowMapper implements RowMapper<MusicSong> {
    
    

    @Override
    public MusicSong mapRow(ResultSet rs, int rowNum) throws SQLException {
    
    
        MusicSong song = new MusicSong();

		// 设置结果集
        song.setSongId(rs.getLong("music_song_id"));
        song.setTitle(rs.getString("music_title"));
        song.setCoverImg(rs.getString("music_cover_img"));
        song.setSinger(rs.getString("music_singer"));
        song.setDetails(rs.getString("music_details"));
        song.setListeningVolume(rs.getLong("music_listening_volume"));
        song.setLyricsId(rs.getLong("lyrics_id"));
        song.setCreateDate(rs.getDate("music_create_date"));
        return song;
    }
}

变更如下,用子类

List<MusicSong> songList = jdbcTemplate.query(sql.toString(), 
				new Object[]{
    
    musicListId, startLine, endLine},
                new MusicSongRowMapper());

猜你喜欢

转载自blog.csdn.net/qq_44783283/article/details/108108912
今日推荐