Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/326.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java:Hibernate和嵌入式Derby;在其他位置/目录上创建derby_Java_Directory_Derby - Fatal编程技术网

Java:Hibernate和嵌入式Derby;在其他位置/目录上创建derby

Java:Hibernate和嵌入式Derby;在其他位置/目录上创建derby,java,directory,derby,Java,Directory,Derby,我还没有在谷歌上找到任何与此相关的信息,但我认为这一定是可能的 我的Hibernate项目遇到了严重问题: 我有两个模块,一个主模块和一个工具模块。它们应该使用相同的DB(嵌入式Derby,因为这两个模块不会同时启动) 因此,如果我启动一个模块,它会在Java项目目录中创建DB,但我不希望DB在项目目录上创建一个级别。hibernate.cfg.xml、映射文件和DAO位于主模块中 所以我希望它看起来是这样的: `rootDirecotry | +----myEmbeddedDe

我还没有在谷歌上找到任何与此相关的信息,但我认为这一定是可能的

我的Hibernate项目遇到了严重问题:

我有两个模块,一个主模块和一个工具模块。它们应该使用相同的DB(嵌入式Derby,因为这两个模块不会同时启动)

因此,如果我启动一个模块,它会在Java项目目录中创建DB,但我不希望DB在项目目录上创建一个级别。hibernate.cfg.xml、映射文件和DAO位于主模块中

所以我希望它看起来是这样的:

`rootDirecotry
    |
    +----myEmbeddedDerby
    |
    +----MainModule
    |
    +----ToolModule
但实际上看起来是这样的:

`rootDirecotry
    |
    +----MainModule
    |     |
    |     +----myEmbeddedDerby
    |
    |
    +----ToolModule
    |     |
    |     +----myEmbeddedDerby
这是我的hibernate配置文件的相关部分:

<property name="hibernate.connection.driver_class">org.apache.derby.jdbc.EmbeddedDriver</property>
<property name="hibernate.connection.password">password/property>
<property name="hibernate.connection.url">jdbc:derby:myEmbeddedDB;create=true</property>
<property name="hibernate.connection.username">admin</property>
<property name="hibernate.dialect">org.hibernate.dialect.DerbyDialect</property>
<property name="cache.provider_class">org.hibernate.cache.NoCacheProvider</property>
org.apache.derby.jdbc.EmbeddedDriver
密码/属性>
jdbc:derby:myEmbeddedDB;create=true
管理
org.hibernate.dialogue.derbydialogue
org.hibernate.cache.NoCacheProvider
非常感谢您的帮助。

试试:

<property name="hibernate.connection.url">jdbc:derby:../myEmbeddedDB;create=true</property>
jdbc:derby:../myEmbeddedDB;create=true
不确定这是否有效。

试试:

<property name="hibernate.connection.url">jdbc:derby:../myEmbeddedDB;create=true</property>
jdbc:derby:../myEmbeddedDB;create=true
但是,不确定这是否有效。

在连接之前设置属性“derby.system.home”

private void setDerbyDBSystemDir() {
    // Decide on the Derby db system directory: <userhome>/.anotherDir/for/DerbyDB
    String systemDir = "./anotherDir/for/DerbyDB";

    // Set the db system directory.
    System.setProperty("derby.system.home", systemDir);
    System.err.println("setDBSystemDir: derby.system.home="+systemDir);
}
private void setDerbyDBSystemDir(){
//决定Derby db系统目录:/.anotherDir/for/DerbyDB
字符串systemDir=“/anotherDir/for/DerbyDB”;
//设置数据库系统目录。
setProperty(“derby.System.home”,systemDir);
System.err.println(“setDBSystemDir:derby.System.home=“+systemDir”);
}
在连接之前设置属性“derby.system.home”

private void setDerbyDBSystemDir() {
    // Decide on the Derby db system directory: <userhome>/.anotherDir/for/DerbyDB
    String systemDir = "./anotherDir/for/DerbyDB";

    // Set the db system directory.
    System.setProperty("derby.system.home", systemDir);
    System.err.println("setDBSystemDir: derby.system.home="+systemDir);
}
private void setDerbyDBSystemDir(){
//决定Derby db系统目录:/.anotherDir/for/DerbyDB
字符串systemDir=“/anotherDir/for/DerbyDB”;
//设置数据库系统目录。
setProperty(“derby.System.home”,systemDir);
System.err.println(“setDBSystemDir:derby.System.home=“+systemDir”);
}

org.apache.derby.jdbc.ClientDriver
jdbc:derby://localhost:/;create=true
管理
管理
10
符合事实的
org.hibernate.dialogue.derbydialogue
使现代化
这将尝试,也许你会得到解决方案

使用上述代码将有助于您的解决方案。


org.apache.derby.jdbc.ClientDriver
jdbc:derby://localhost:/;create=true
管理
管理
10
符合事实的
org.hibernate.dialogue.derbydialogue
使现代化
这将尝试,也许你会得到解决方案


使用上面的代码,将有助于您的解决方案。

我终于让它工作了:jdbc:derby:directory:../myEmbeddedDB;create=trueinterest,虽然不需要它:我终于让它工作了:jdbc:derby:directory:../myEmbeddedDB;create=trueinterest,尽管不需要它:还值得了解的是derby.system.home-您可以使用此系统属性来设置基本路径。然后URL可以只包含DB名称,也值得了解的是derby.system.home-您可以使用此系统属性来设置基本路径。然后URL可以只包含DB名称