2つの方法で修正できます:
このようなクラスを維持している場合
public class SezioneMenuBean implements Serializable {
private int idSezioneMenu;
private String nome;
private int ordine;
public SezioneMenuBean() {
}
// Getters and setters for bean values
}
最初の解決策に従って、次のようなクエリを記述します。SELECT id_sezione_menu AS idSezioneMenu, name, ordine FROM sezione_menu
。
または
2番目のソリューションに基づいて、GenerousBeanProcessor
を使用できます。 これはBeanProcessor
のサブクラスです 列名のアンダースコアと大文字と小文字の区別は無視されます。独自のカスタムBeanProcessor
を実装する必要はありません
GenerousBeanProcessor
commons-dbutilsのバージョン1.6以降で利用可能です 。
使用法:
// 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());
}