【问题标题】:derby In memory database + junitderby 内存数据库 + junit
【发布时间】:2015-10-14 15:38:00
【问题描述】:

尝试在 JUNITTEST 的内存数据库中使用 derby 时出现以下异常。

java.sql.SQLNonTransientConnectionException:数据库“内存:testDB” 掉了。在 org.apache.derby.iapi.error.StandardException.newException(未知 来源)

@Before
public void setUp() throws Exception {
    String driver = "org.apache.derby.jdbc.EmbeddedDriver";
    String connectionURL = "jdbc:derby:memory:testDB;create=true";
    Class.forName(driver);
    Connection conn = DriverManager.getConnection(connectionURL);
    super.setUp();
}

@After
public void tearDown() throws Exception {
    String connectionURL = "jdbc:derby:memory:testDB;drop=true";
    DriverManager.getConnection(connectionURL);
}

【问题讨论】:

  • 我假设异常发生在您的 tearDown() 方法中? “drop=true”抛出“Database dropped”异常是正常的。这就是你的问题吗?

标签: junit derby in-memory


【解决方案1】:

如果您使用 Maven 进行构建,您可以使用我编写的 derby-maven-plugin,它可以在 GitHub 上和通过 Maven Central 获得。它将在您的测试之前为您启动和停止数据库。

您可以查看here 以获取我对类似问题的回答。

【讨论】:

    猜你喜欢
    • 2011-06-10
    • 1970-01-01
    • 2011-01-19
    • 1970-01-01
    • 1970-01-01
    • 2016-02-28
    • 2012-08-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多