2010-06-16 2 views
2

Мне нужен модуль сохранения, который создает встроенную базу данных, которая остается постоянной после закрытия EntityManager.Удержание единицы измерения не является постоянным

Это мой PU:

<persistence-unit name="hello-jpa" transaction-type="RESOURCE_LOCAL"> 
    <class>hello.jpa.User</class> 
    <properties> 
    <property name="hibernate.show_sql" value="true"/> 
    <property name="hibernate.format_sql" value="true"/> 
    <property name="hibernate.dialect" value="org.hibernate.dialect.HSQLDialect"/> 
    <property name="hibernate.connection.driver_class" value="org.hsqldb.jdbcDriver"/> 
    <property name="hibernate.connection.username" value="sa"/> 
    <property name="hibernate.connection.password" value=""/> 
    <property name="hibernate.connection.url" value="jdbc:hsqldb:target/hsql.db"/> 
    <property name="hibernate.hbm2ddl.auto" value="update"/> 
    </properties> 
</persistence-unit> 

И он удаляет данные после закрытия приложения.

ответ

3

Мое понимание the documentation является то, что «старый» URL jdbc:hsqldb:. создает или подключается к той же базе данных в качестве новой формы для URL jdbc:hsqldb:mem:. (т.е. в памяти).

Вместо этого попробуйте использовать следующий URL: jdbc:hsqldb:file:target/hsql.db.

+0

Я тоже не работаю :(. В обоих случаях нет файла target target/hsql.db ... – Etam

+0

@etam Не могли бы вы попытаться с абсолютным путем (просто проверить)? У меня есть сомнения относительно . рабочий каталог –

+0

Все у меня есть (с относительным и абсолютным): ~/этам-СВН/код/​​Java/Привет-JPA> целевые Ls/ классы \t \t \t \t \t hsql.db.log \t \t \t \t maven-archiver hello-jpa-derby-1.0-SNAPSHOT.jar \t hsql.db.properties \t \t \t test- классы – Etam

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