DbUnit тестирует базу данных PostgreSQL с использованием JPA без Hibernate или Spring - PullRequest
0 голосов
/ 28 сентября 2011

Я пытаюсь написать приложение Java EE 6 с использованием JPA, но без использования Hibernate или Spring. Я использовал Netbeans для генерации классов JPA и создал таблицы в Postgres, но я не могу запускать тесты DbUnit в этих классах JPA.

Я попытался основать свой тестовый модуль на примере, описанном на этом сайте: http://www.roseindia.net/testingtools/DbUnit/gettingstarted.shtml, но он не работает. Я продолжаю получать «java.lang.NoClassDefFoundError: org/slf4j/LoggerFactory», хотя я добавил slf4j в библиотеки проекта в IDE.

Одна вещь, которую я нахожу довольно странной в примере сайта roseindia, заключается в том, что на нем не создается объект вызывающего объекта для созданного тестового объекта. Я не уверен, нужен ли вообще объект вызывающей стороны (завершите n00b в JavaEE-программировании и все еще потеряно).

1 Ответ

1 голос
/ 29 сентября 2011

Если вы решите использовать сущности (java-классы, помеченные @Entity, представляющими записи базы данных), вам придется использовать поставщика JPA. Тем не менее, вы не ограничены Hibernate.

Если вы напуганы JPA, другой вариант - использовать простой JDBC. Это гораздо легче понять, если это ваше приложение для обучения, возможно, стоит попробовать и посмотреть, как оно работает. JPA построен на основе JDBC, поэтому, когда вы думаете, что готовы к этому, у вас будет солидная база знаний.

...