2015-07-03 4 views
0

У меня есть объект домена, содержащий переменную, в виде списка значений из netezza и еще 4 переменных, которые являются нормальными переменными, которые получат назначенные значения из oracle db с помощью mapperper.Springs Rowmapper бросающий тип несоответствие проблемы.

Заявление, приведенное ниже, вызывает ошибку: «Несоответствие типа: невозможно преобразовать из списка в Характеристики». Это потому, что объект домена содержит список как переменную внутри.

CharacteristicsValue charValue = jdbcOMTemplate.query (builtQuery, новый DimCharRowMapper());

Я могу сделать переменную как Список, которая решит проблему, но хотела бы знать, есть ли какой-либо лучший подход.

ответ

2

query() метод возвращает List значений.

queryForObject() метод возвращает один Object.

Если вы ищете один объект, замените query на queryForObject.

Если вам нужен список изменить тип переменной charValueList<CharacteristicsValue> в

Примечание:queryForObject() бросить IncorrectResultSizeDataAccessException, если результат запроса не совсем одной записи. query() вместо этого хорошо работает и для получения нуля, одной или нескольких записей.

+0

Спасибо. Так что этот объект, в свою очередь, вернет мне все столбцы из набора результатов. Не так ли? –

+0

Да, если в DimCharRowMapper вы сопоставили все столбцы. Обратите внимание, что если запись не существует, генерируется исключение (не возвращается null, как в аналогичных методах структур ORM). –

+0

Если вы считаете, что этот ответ правильный, вы можете отметить его зеленым флагом. благодаря –

Смежные вопросы