2014-11-21 2 views
0

Я строю приложение, которое использует базу данных h2, мой persistence.xmlКак настроить переносимый файл persistence.xml?

<?xml version="1.0" encoding="UTF-8"?> 
<persistence version="2.1" xmlns="http://xmlns.jcp.org/xml/ns/persistence" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/persistence http://xmlns.jcp.org/xml/ns/persistence/persistence_2_1.xsd"> 
    <persistence-unit name="taskUnit" transaction-type="RESOURCE_LOCAL"> 
     <provider>org.eclipse.persistence.jpa.PersistenceProvider</provider> 
     <class>com.github.tarrsalah.jersey.todo.app.model.Task</class> 
     <properties>   
      <property name="javax.persistence.jdbc.url" value="jdbc:h2:file:/home/tarrsalah/src/github.com/tarrsalah/jaxrs-todo-app/target/todo"/> 
      <property name="javax.persistence.jdbc.user" value=""/> 
      <property name="javax.persistence.jdbc.driver" value="org.h2.Driver"/> 
      <property name="javax.persistence.jdbc.password" value=""/> 
     </properties> 
    </persistence-unit> 
</persistence> 

Как вы можете видеть, у меня есть жесткая связь в javax.persistence.jdbc.url собственности в локальной базе данных h2, и я хочу поделиться своим кодом на GitHub.

Как создать клонированную версию моего кода без изменения файла конфигурации persistence.xml?

(PS: Я использую пролетный путь для миграции баз данных)

ответ

1

Для обмена этого кода с другими, вы можете попробовать использовать в-память базы данных h2

<property name="javax.persistence.jdbc.url" value="jdbc:h2:mem:test;DB_CLOSE_DELAY=1000"/> 
+0

Как насчет миграции пролетного пути? – tarrsalah

+0

AFAIK flyway migration работает в базе данных h2 в памяти. Взгляните сюда http://stackoverflow.com/questions/21019874/table-not-found-after-apparently-successful-migration – Shailendra

+0

@Shailendar миграция прошла успешно, используя плагин flyway flyway, но кажется, что eclipseLink не может найти он (я использую тот же URL). – tarrsalah

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