В старые времена мы использовали для доступа к базе данных с помощью хранимых процедур. Их рассматривали как «лучший» способ управления данными. Мы храним данные в базе данных, и любой язык / платформа может получить к ним доступ через JDBC / ODBC / и т. Д.
Тем не менее, в последние годы стали популярными такие механизмы поиска хранилищ, основанные на отражении / метаданных, как Hibernate / DataNucleus. Первоначально мы волновались, что они будут медленными из-за дополнительных шагов (рефлексия дорогая) и того, как они извлекают ненужные данные (весь объект), когда все, что нам нужно, это одно поле.
Я начинаю планировать большой проект хранилища данных, использующий J2EE, но я немного не уверен, стоит ли переходить на хранимые процедуры или JDO / JPA и тому подобное. Недавно я работал с Hibernate, и, честно говоря, я не скучаю по написанию хранимых процедур CRUD!
По сути, это сводится к:
Хранимые процедуры
+ Может быть оптимизирован на сервере (хотя только запросы)
- Вероятно, для каждой таблицы будет более тысячи хранимых процедур: добавление, удаление, обновление, getById и т. Д.
JDO
+ Я не буду тратить следующие несколько месяцев на написание параметров.add ("@ firstNames", customer.getFirstName ()); ...
- Будет медленнее, чем SP (но большинство поддерживает пейджинг)
Чего бы ты хотел в моей ситуации? В этом случае я думаю, что это очень много.
Спасибо
John