我理解在以编程方式创建hsqldb服务器时使用org.hsqldb.server.Server类是有用的。
我总是使用java类(java.sql.Connection)连接到服务器,我觉得连接服务器是基于内存的还是基于文件的就足够了。
为什么我们需要hsqldb的org.hsqldb.jdbc.JDBCConnection类?
发布于 2017-05-04 04:29:20
我对HSQLDB的工作并不多,但是API文档似乎是您问题的最佳来源。
类JDBCConnection的文件上说-
JDBC4.0注释: 从JDBC4.0(JDK1.6)开始,增强了DriverManager方法getConnection和getDrivers,以支持服务提供程序机制。当构建在支持JDBC4.0的Java运行时,包含驱动程序实现的HSQLDB发行版jars还包括文件META/services/java.sql.Driver。该文件包含java.sql.Driver的HSQLDB实现的完全限定类名(‘java.sql.Driver’)。 因此,在JDBC4.0或更高版本下,应用程序不再需要使用Class.forName()显式加载HSQLDB驱动程序。当然,使用Class.forName()加载JDBC驱动程序的现有程序将继续工作,无需修改。
所以我想你可以继续使用标准化的代码。
这个类可能有一些特定于HSQLDB的额外方法。
此外,如果计划使用这些特定方法,则必须进行类型转换,
JDBCConnection connection =
(JDBCConnection) DriverManager.getConnection(url, connProperties);关于另一个问题,模式是- <url>[;key=value]*,即在url之后放置一个分号,然后以key=value格式指定键值。每个key=value需要用分号分隔。
例如,jdbc:hsqldb:hsql://localhost/cities;user=bill;password=password,即在添加键值对之前添加分号,最后键值对不添加分号。
https://stackoverflow.com/questions/43773036
复制相似问题