2013-08-08 1 views
0

В чем разница между установкой карты и установкой объекта в параметрClass в iBatis?установить карту в параметрический класс в iBatis

средства,

<update id="update" parameterClass="map"> 
    UPDATE city 
    SET province_id = #province_id# 
    WHERE id = #id# 
</update> 

и

<update id="update" parameterClass="City"> 
    UPDATE city 
    SET province_id = #province_id# 
    WHERE id = #id# 
</update> 

?

Я не мог найти разницы, когда тестировал оба.

Я действительно хочу, чтобы установить все с «карты», но напугал ...

+0

Что вы подразумеваете под «Я не мог найти разницы, когда я тестировал оба»? Случай карты должен передать экземпляр карты, а второй должен передать экземпляр City. – Hippoom

+0

Городской объект имеет типы для каждого элемента (long province_id, long id), тогда как карта передает только значения ({"province_id", "19283"}, {"id", "32787"}). Я задавался вопросом, как iBatis знает тип параметров, если я использую карту для цитаты в SQL. Во всяком случае, это работает, но я боюсь ..... – user2660234

ответ

0

«карта» в parameterClass="map" просто псевдоним для «java.util.Map». Вам не кажется, что это просто потому, что ваш класс City реализует интерфейс карты?

+0

при использовании параметра «Город» в качестве параметра, ibatis передает [Long, Int, String] по мере их установки. Но если я использую параметр «map» в качестве параметра, ibatis передает [String, String, String], хотя он все еще работает. Мой запрос: «Нет ли проблем с отправкой аргументов без правильных типов?» – user2660234

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

  • Нет связанных вопросов^_^