Как заполнить значения базы данных в существующей объектной модели? - PullRequest
0 голосов
/ 13 января 2012

У меня уже есть экземпляр модели, это базовый POJO, как я могу заполнить его (выдав SELECT) значениями, используя dbutils , вызвав сеттеры, имена которых соответствуют таблице имена столбцов?

Так что BasicRowProcessor должно совпадать, я просто не могу найти подходящий класс / метод для вызова с объектом в качестве параметра.

Я хочу установить только один экземпляр, а не массив.

Ответы [ 2 ]

1 голос
/ 15 января 2012

Я не уверен, что понимаю ваш вопрос.Некоторый исходный код может помочь.

Есть много библиотек, которые выполняют ORM.Смотрите source forge для некоторых проектов ORM.Одним из них является Сормула , который я создал.Для простейшего использования см. пример нулевой конфигурации POJO .

0 голосов
/ 13 января 2012

Все, что вы можете сделать, это

YourObject result = new BasicRowProcessor().toBean(yourResultSet,YourObject.class);

Хотя это создаст экземпляр. Этот API-интерфейс не предназначен для изменения уже существующего объекта.

Если вам действительно нужно обновить существующий объект, вы можете реализовать метод YourObject.copy(YourObject obj) и вызвать его с результатом из BasicRowProcessor.toBean, но это выглядит довольно некрасиво.

Другое (также безобразное) решение состояло бы в реализации класса BeanProcessor, реализации метода BeanProcessor.newInstance(Class) для возврата вашего объекта, а затем передачи экземпляра вашей реализации в экземпляр BasicRowProcessor.

...