Получить Hibernate для автоматического усечения данных до размера столбца, а не выбрасывать исключение - PullRequest
1 голос
/ 09 февраля 2012

У меня есть ряд атрибутов на основе строк в сущности Hibernate, по умолчанию Hibernate сопоставляет их с VARCHAR (255).Это не достаточно долго для некоторых значений, но я знаю, что могу изменить это, используя

@Column (length)

Но иногда у меня бывает, что данные, передаваемые в метод set * Attribute *, длиннее, чем длина IЯ определил, что в этих случаях я просто хочу, чтобы hibernate по существу выполнял s.substring (0, length), но вместо этого он просто выбрасывает исключение.подходить.Если я не могу, мне нужно добавить проверку длины для каждого метода набора, и если я изменю длину столбца в базе данных, то обновлю код.Это не большая головная боль, но было бы хорошо, если бы я мог избежать этого.

1 Ответ

0 голосов
/ 14 февраля 2012

реализует Hibernate UserType и

for (... map : config.GetClassMapping())
{
    // iterate properties and set usertype to all properties with columns length set
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...