Anda dapat memperbaikinya dengan dua cara:
Sesuai dengan dokumen dbutils,
Jika Anda mempertahankan kelas seperti ini
public class SezioneMenuBean implements Serializable {
private int idSezioneMenu;
private String nome;
private int ordine;
public SezioneMenuBean() {
}
// Getters and setters for bean values
}
Sesuai solusi pertama, tulis pertanyaan Anda seperti ini SELECT id_sezione_menu AS idSezioneMenu, name, ordine FROM sezione_menu
.
Atau
Berdasarkan solusi kedua, Anda dapat menggunakan GenerousBeanProcessor
yang merupakan subkelas dari BeanProcessor
itu mengabaikan garis bawah &sensitivitas huruf besar-kecil dari nama kolom. Anda tidak perlu mengimplementasikan BeanProcessor
kustom Anda sendiri
GenerousBeanProcessor
tersedia sejak versi 1.6 dari commons-dbutils .
Penggunaan:
// TODO initialize
QueryRunner queryRunner = null;
ResultSetHandler<List<SezioneMenuBean>> resultSetHandler =
new BeanListHandler<SezioneMenuBean>(SezioneMenuBean.class, new BasicRowProcessor(new GenerousBeanProcessor()));
// best practice is specifying only required columns in the query
// SELECT id_sezione_menu, name, ordine FROM sezione_menu
final List<SezioneMenuBean> sezioneMenuBeans = queryRunner.query("SELECT * FROM sezione_menu", resultSetHandler);
for (SezioneMenuBean sezioneMenuBean : sezioneMenuBeans) {
System.out.println(sezioneMenuBean.getIdSezioneMenu());
}