2015-10-23 3 views
1

Я использую базу данных, которая работает в памяти (HSQL) для модульного теста. Но в моей реальной базе данных у меня есть определенные функции, которые могут потребоваться в моей базе данных для тестирования.Выполнение функции сценария с использованием JPA

Есть ли способ создания функций SQL в моей базе данных с кодом Java?

+0

Я не думаю, что это отличная идея, для тестирования я бы рекомендовал ** насмехаться ** с базой данных. Существует даже фреймворк, который очень упрощает настройку: [mockito] (http://mockito.org/) – Oceans

+0

@ Oceans, спасибо за ваш ответ, я попробую. Но я должен настаивать на своем вопросе, если есть какой-то способ сделать это, потому что для моих тестов я использую HSQL, а в своем приложении я использую PostgreSQL. Таким образом, у меня также есть настройки. Поэтому я хочу проверить свой вопрос. Вы можете мне помочь? –

ответ

0

Вы всегда можете выполнить любой SQL с EntityManager.createNativeQuery:

EntityManager em = ... 
em.createNativeQuery("CREATE FUNCTION ...").executeUpdate(); 

Вы можете позвонить, что во время запуска приложения.

Примечание: В Hibernate вам нужно, чтобы избежать каких-либо : с \, поскольку он пытается заменить параметры в SQL.

Смежные вопросы