у нас есть код Spring Hibernate, который генерирует объект спецификации данных Spring JPA. Это хорошо работает (мы можем использовать объект Specification для таких вещей, как подсчет). Есть ли способ каким-то образом получить простой SQL where-clause из объекта спецификации?
Текущий код:
// The line below builds the spec based on business logic. Won't go in the details here, but it is working.
Specification<Crash> querySpec = buildQuerySpec(query);
long count = myDataRepository.count(querySpec);
// Here is what I need: a simple plain T-SQL / Microsoft SQL Server where-clause to be used on other disconnected systems. So something like this:
String whereClause = query.Spec.getPlainSQLWhereClause(...); // e.g. weather in ("raining", "cold") and year in (2014, 2015)
Причина: объект спецификации (и связанный с ним репозиторий ) используются в основной системе. Теперь у нас есть другие полностью отключенные / отдельные корпоративные системы (система Esri GIS), в которых ее API-интерфейсы могут использовать только простой SQL where-clause.
PS Я знаю, что кода для работы не так много, поэтому некоторые указатели Мы будем очень признательны за / guides.