Можно ли использовать как JPA (для обычных CRUD), так и JDBC (для пакетного обновления и вызова сохраненного процесса) в одном проекте - PullRequest
2 голосов
/ 26 августа 2011

Я использую JPA / Hibernate для вызова простых CRUD-запросов (создание, обновление, findByXAndYAndZ ...).Однако, как я знаю, JPA плохо поддерживает вызов хранимых процедур и пакетное вставление / обновление, поэтому я думаю использовать для этого старый JDBC (например, по этой ссылке: http://www.java2s.com/Code/Java/Database-SQL-JDBC/BatchUpdateInsert.htm).

Я простоИнтересно, не вызывает ли это каких-либо проблем, когда я смешиваю JPA и JDBC. Надеюсь, что вы поделитесь некоторым реальным опытом по этому вопросу. Спасибо.

ОБНОВЛЕНИЕ: Я попробовал Spring Batch как предложение Бехранга Саидзаде, и онохорошо сработало. @Другие: пример Spring Batch можно посмотреть здесь: http://mkyong.com/spring/spring-jdbctemplate-batchupdate-example

1 Ответ

3 голосов
/ 26 августа 2011

Все нормально. Однако вам следует убедиться, что вы сделали недействительными соответствующие кэши JPA при выполнении прямых пакетных обновлений JDBC.

ОБНОВЛЕНИЕ: Кстати, вы можете рассмотреть возможность взглянуть на Spring Batch. Используя Spring Batch, вы можете делать пакетные обновления с помощью JPA или JDBC, если вы предпочитаете это.

...