Metode queryforInt / queryforLong di JdbcTemplate tidak digunakan lagi di Spring 3.2. Saya tidak dapat mengetahui mengapa atau apa yang dianggap praktik terbaik untuk mengganti kode yang ada menggunakan metode ini.
Metode tipikal:
int rowCount = jscoreJdbcTemplate.queryForInt(
"SELECT count(*) FROM _player WHERE nameKey = ? AND teamClub = ?",
playerNameKey.toUpperCase(),
teamNameKey.toUpperCase()
);
OK cara diatas perlu ditulis ulang sebagai berikut:
Object[] params = new Object[] {
playerNameKey.toUpperCase(),
teamNameKey.toUpperCase()
};
int rowCount = jscoreJdbcTemplate.queryForObject(
"SELECT count(*) FROM _player WHERE nameKey = ? AND teamClub = ?",
params, Integer.class);
Jelas penghentian ini membuat kelas JdbcTemplate lebih sederhana (atau bukan?). QueryForInt selalu merupakan metode praktis (saya kira) dan sudah ada sejak lama. Mengapa telah dihapus. Akibatnya, kode menjadi lebih rumit.
@Deprecated
null
(bukan kasus dalam contoh Anda). Saya tidak menemukan cara lain selain menduplikasi sekarang kode cek nol dari queryForInt / Long.