Hibernate как добавить ограничение для фильтрации результатов по столбцу Integer id - PullRequest
0 голосов
/ 03 февраля 2012

Хотите спросить, как добавить ограничение для фильтрации результатов по столбцу с целочисленным идентификатором

Мне нужно что-то вроде

Restriction.like("id", myFilterValue) // id - это первичный ключ целого числа

1 Ответ

1 голос
/ 03 февраля 2012

Если вы хотите получить объект по его первичному ключу в Hibernate, вы можете использовать Session.get():

Foo foo = session.get(Foo.class, id);

В противном случае, если вы хотите добавить ограничение равенства с использованием критериев:

Criteria crit = session.createCriteria(Foo.class);
crit.add(Restrictions.eq("id", id);
List foos = crit.list();

Полагаю, что если вы действительно хотите найти какие-либо строки, в которых десятичные цифры числового столбца содержат определенную подстроку из цифр, то вам придется CAST столбец до VARCHAR ( синтаксис которого может варьироваться в зависимости от базы данных, и вы не указали, какую вы используете), и тогда вы сможете использовать что-то вроде WHERE CAST(id AS VARCHAR) LIKE '%12%'. Но если вы делаете это, вам, возможно, придется пересмотреть то, что вы пытаетесь выполнить, на гораздо более высоком уровне, поскольку это заставит меня поверить, что могут быть проблемы с базовым дизайном вашей системы.

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