запуск "виртуальной" базы данных в коде Java с Hibernate - PullRequest
1 голос
/ 16 декабря 2010

Раньше я запускал свой код Java с Hibernate для mysql.

Некоторые логические изменения привели меня к решению, что мне не нужно сохранять данные в базе данных, но в классе Java, который будет обрабатывать их как базу данных (данные удаляются при каждом запуске приложения).

Как мне это сделать в Hibernate? Есть ли способ создать базу данных в памяти?

Ответы [ 4 ]

3 голосов
/ 16 декабря 2010

Рассмотрим H2 (рекомендуется) или HSQLDB. Вы, конечно, можете использовать Hibernate с ними. Фактически, HSQLDB была базой данных, используемой по умолчанию в Hibernate для их набора тестов (я думаю, что они просто изменились на H2).

2 голосов
/ 16 декабря 2010

Взгляните на Apache Derby .

1 голос
/ 16 декабря 2010

Вы также можете использовать SqlLite , который является базой данных в памяти. Я только собираюсь начать использовать его с NHibernate для той же цели в модульных тестах.

0 голосов
/ 16 декабря 2010

Вам просто нужно:

  • добавить драйвер для базы данных, которую вы хотите использовать, и изменить настройки гибернации для этого драйвера,
  • изменить настройки диалекта базы данных спящего режима,
  • изменить строку соединения jdbc
  • (добавить банки для базы данных)

Например, для Гиперзвуковая база данных H2 :

  • driverClassName = org.h2.Driver
  • dialect = org.hibernate.dialect.H2Dialect
  • строка подключения = jdbc: h2: mem: test
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...