Как установить логическое значение в спящем режиме? - PullRequest
1 голос
/ 13 июня 2011

Это боб,

public boolean paid;
public boolean isPaid()
{
    return paid;
}
public void setPaid(boolean paid)
{
    this.paid=paid;
}

Но когда я создаю объект для сохранения в базе данных, как,

Стоимость CourseFee = новый CourseFee (); fee.setPaid (ложь); hibernateTemplate.save (платно);

Я получаю следующее исключение,

java.sql.BatchUpdateException: слишком длинные данные для столбца «оплачено» в строке 1

Как правильно установить логические значения в спящем режиме?

Ответы [ 3 ]

11 голосов
/ 01 ноября 2011

Я так использую.

@Column(name="isAdmin", columnDefinition = "tinyint default false")
public boolean isAdmin() {
   return admin;
}
5 голосов
/ 11 июля 2013

Мне не удается использовать значение по умолчанию.Компилируется, но значение по умолчанию никогда не используется.

Я выполнил следующие шаги:

  • поставить объявление класса

    @ DynamicInsert @ DynamicUpdate

  • добавлено свойство

    @ Column (nullable = false, columnDefinition = "BOOLEAN DEFAULT false"
    )

Справка: http://www.mkyong.com/hibernate/hibernate-dynamic-insert-attribute-example/

3 голосов
/ 13 июня 2011

Попробуйте использовать большой Boolean в вашем классе POJO.

Или попробуйте обновить отображение следующим образом:

<property name="paid" not-null="true" >
   <column sql-type="BOOLEAN" not-null="true" name="paid" />
</property>

Спасибо.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...