使用maven javafx与嵌入式derby db进行jpa [英] jpa with embedded derby db using maven javafx

查看:58
本文介绍了使用maven javafx与嵌入式derby db进行jpa的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我的持久性文件内容:"jdbc:derby:deliceplaceDB; create = true".但是我在执行"mvn clean javafx:run"时数据库"deliceplaceDB"被分配给数据库.未创建.请帮助!!!

My persistence file content: "jdbc:derby:deliceplaceDB;create=true". But I when execute "mvn clean javafx:run" the database "deliceplaceDB" is not created. Please need help!!!

我的persistence.xml

My 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="deliceplacePU" transaction-type="RESOURCE_LOCAL">
        <provider>org.eclipse.persistence.jpa.PersistenceProvider</provider>
        <properties>
            <property name="eclipselink.target-database" value="Derby"/>
            <property name="javax.persistence.jdbc.driver" value="org.apache.derby.jdbc.EmbeddedDriver" />
            <property name="javax.persistence.jdbc.url" value="jdbc:derby:deliceplaceDB;create=true" />
             <property name="javax.persistence.sql-load-script-source" value="sql/create.sql"/>
            <property name="javax.persistence.jdbc.user" value="" />
            <property name="javax.persistence.jdbc.password" value="" />
            <property name="eclipselink.logging.level" value="ALL" />
            <property name="eclipselink.ddl-generation.output-mode" value="database"/>
        </properties>
    </persistence-unit>
</persistence>

我想加载我的sql文件"create.sql",在运行时,但不起作用.谢谢

And I would like to load my sql file "create.sql" at runtime but is not working. thanks

推荐答案

您已经指定了一个加载脚本源(用于后期创建脚本),并且指定的DDL生成将进入数据库,但这仅在您执行以下操作后才会发生打开它.

You've specified a load script source - which is used for post creation scripts - and specified DDL generation would go to the database, but this only occurs once you turn it on.

指定属性:

   <property name="javax.persistence.schema-generation.database.action" value="create"/>
   <property name="javax.persistence.schema-generation.create-source" value="script"/>
   <property name="javax.persistence.schema-generation.create-script-source" value="sql/create.sql"/>

第一个告诉JPA在部署时创建数据库,第二个告诉JPA查找脚本,第三个告诉脚本所在的位置.

the first tell JPA to create the database when deploying, the second tells it to look for a script, the third where the script is.

请参见此处其他选项的完整说明,如果有任何问题,请检查并发布日志.

See here for a good description of other options, and check and post the logs if there are any problem.

这篇关于使用maven javafx与嵌入式derby db进行jpa的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆