#java #sql #jdbc
#java #sql #jdbc
Вопрос:
Мы разрабатываем приложение, которое использует JDBC API. Мы имеем дело с множеством запросов для различных вариантов использования. Есть идеи о том, как изолировать эти SQL-запросы из кода? Существует ли какой-либо шаблон или конфигурационный API, который помог бы управлять этими запросами?
Ответ №1:
Я не совсем уверен, о чем вы просите, но, возможно, настройка некоторых хранимых процедур обеспечила бы желаемый уровень абстракции…
Вы могли бы настроить хранимые процедуры для каждого варианта использования, и тогда запросы в вашем коде состояли бы просто из вызова различных процедур.
Ответ №2:
Для этого вы можете использовать MyBatis SQL Mapper. Вы разделяете свои SQL-инструкции на XML-файлы. Это очень чисто и интуитивно понятно, если вы знакомы с SQL.
Ответ №3:
Использовать файл конфигурации / ресурсов и читать из него строку запроса? Хэш-таблица также была бы другим вариантом.
Ответ №4:
Вы можете попробовать поместить свои запросы в отдельные файлы как есть, а затем поместить имена файлов в любой конфигурационный файл.
Ответ №5:
- Используйте http://www.mybatis.org для экстернализации запросов в XML-файлы
- Убедитесь, что классы, которые обращаются к базе данных, выполняют только это, а не другую логику