В проекте, над которым я работаю, интенсивно используется среда ExtJS.У нас есть много данных для отображения, и мы делаем это с помощью сеток, которые имеют стандартный набор функций подкачки, сортировки и фильтрации.
В настоящее время наш бэкэнд находится на PHP, и мы используем прямой SQL.Я написал оболочку SQL в PHP, которая принимала бы запрос, список фильтров, информацию о сортировке и информацию о странице и выводила запрос, который имел соответствующие функции WHERE, ORDER BY и нумерацию страниц, используя исходный запрос в качестве подзапроса.Должен отметить, что наш проект привязан к Oracle.
Фильтры могут быть представлены в виде сравнений (=, <, <=,> =,>, IS NULL) или списков (IN ()) и сортировки.это просто один столбец с направлением.Нумерация страниц - это начальное и конечное число.
Короче говоря, мы движемся к архитектуре на основе Java с использованием Spring и MyBatis.Мне трудно понять, как легко реализовать ту же функциональность с помощью MyBatis.Приятной особенностью обертки было то, что нам нужно было написать наш базовый запрос только один раз, и тогда он трансформировался бы в любой запрос, необходимый для сетки.Поскольку речь идет о потенциально десятках тысяч записей, и нам нужно разбить на страницы, вытащить что-то обратно на сервер и выполнить фильтрацию / сортировку на основе Java на самом деле не вариант.
Кто-нибудь решил эту проблему (илипохоже) проблема раньше?Я видел возможности динамического SQL в MyBatis (кратко), но, похоже, он не обладает достаточной гибкостью и мощью, которые мне нужны.Я не прав?
Буду признателен за любые рекомендации опытных пользователей MyBatis.
Я должен отметить, что мы сейчас в поиске и что использование ORM не совсем не обсуждается.Это легче сделать, скажем, с помощью Hibernate?