我像这样启动一个hsqldb 1.8服务器:
java -cp“%classpath%; .; Y:\ PlantOperations \ bldPlantOperations \ code \ lib \ jboss \ hsqldb-1.8.0-10.jar; C:\ Documents and Settings \ BThirup \ Application Data \ Rockwell Automation \ FactoryTalk ProductionCentre \ ProcessDesigner \ hsqldb-1.8.0-10.jar; C:\ Documents and Settings \ BThirup \ Application Data \ Rockwell Automation \ FactoryTalk ProductionCentre \ ShopOperation \ hsqldb-1.8.0-10.jar;“ org.hsqldb.Server -database.0文件:“C:\ Documents and Settings \ BThirup \ Application Data \ Rockwell Automation \ FactoryTalk ProductionCentre \ logs \ ApplicationLog \ mydb”-dbname.0 xdb
我有多个客户端使用jdbc连接(无特定顺序):hsqldb:hsql:// localhost / xdb; shutdown = true
我想在没有更多客户端连接时关闭Hsqldb服务器。
我在文档中读到添加shutdown = true,因为我在jdbc url中会导致hsqldb在没有连接更多客户端后关闭。但我没有看到这种情况发生。
我也试过
Properties info = new Properties();
info.put("user", "SA");
info.put("password", "");
info.put("shutdown", "true");
conn = DriverManager.getConnection(dbString, info);
以上也不会导致hsqldb服务器在最后一个客户端断开连接后关闭。
对此有任何帮助表示赞赏
巴拉
答案 0 :(得分:0)
shutdown=true
属性与进程内连接一起使用,而不是通过服务器连接。
如果在服务器启动时将此属性添加到数据库URL,则可能会有效。这会导致数据库关闭,从而导致服务器关闭。
java -cp ... org.hsqldb.Server -database.0 file:“C:\ Documents and Settings \ BThirup \ Application Data \ Rockwell Automation \ FactoryTalk ProductionCentre \ logs \ ApplicationLog \ mydb; shutdown = true” - dbname.0 xdb
与此无关,您只需要在类路径中对hsqldb-1.8.0-10.jar进行一次引用。