东莞物流网站设计公司,汽油价格92号最新调整时间,seo网站优化服务,想给学校社团做网站由于正在创建内存数据库,因此启动tcp服务器将无济于事.我建议改为在线程中启动控制台,并在同一段代码(例如,使用jdbc)中打开与此数据库的连接,但不要关闭/释放它.使用此代码段执行此操作#xff1a;请根据H2文档添加其他选项,例如允许其他人使用(我建议暂时将其保留)org.h2.to…由于正在创建内存数据库,因此启动tcp服务器将无济于事.我建议改为在线程中启动控制台,并在同一段代码(例如,使用jdbc)中打开与此数据库的连接,但不要关闭/释放它.使用此代码段执行此操作请根据H2文档添加其他选项,例如允许其他人使用(我建议暂时将其保留)org.h2.tools.Server.createWebServer().start();使用jdbc / jooq在第二个线程中打开数据库将如下所示(这是在Nashorn javascript中,但可以轻松地适应Java)var conn (new org.h2.Driver()).connect(jdbc:h2:mem:sampledb,new java.util.Properties());var DB org.jooq.impl.DSL.using(conn, org.jooq.SQLDialect.H2);这样,基于内存的数据库将不会意外关闭,您将能够远程访问它.希望将其放在线程中可以保护您免受断点的影响.更新根据与该问题原始作者的讨论,最佳解决方案是在单独的过程中打开基于内存的H2,并在其上提供一个tcp服务器.这解决了问题,但是在一个单独的过程中.这是开始单独过程的方法java -jar h2-1.4.188.jar -tcp -tcpPort 9092 -baseDir mem:mydb这是要使用的JDBC网址jdbch2tcp// localhost9092 / memmydb重要说明如果该基于内存的数据库上的所有连接均已关闭,则内容将消失.因此,应谨慎使用此方法.如果您需要在测试中保持持久性,请使用基于文件的标准H2 DB.