我创建了一个单例记录器以在我的 java 应用程序中使用。连接到 hsql 独立数据库之前的所有语句都工作正常,即消息正在被记录。但连接到数据库后的日志记录语句没有被记录。如果我删除连接语句或者与数据库的连接失败,那么该连接语句之后的语句将正常工作。
为什么会发生这种事?
ORLogger.getLogger().log(Level.INFO, "Trying to connect databse . . .");
Class.forName("org.hsqldb.jdbc.JDBCDriver").newInstance();
ORLogger.getLogger().log(Level.INFO, "HSQL driver loaded . . .");
dbConnection = DriverManager.getConnection("jdbc:hsqldb:file:db/db", "username", "password");
ORLogger.getLogger().log(Level.INFO, "Connected to databse.");
在日志文件中,日志消息由以下语句组成
HSQL driver loaded . . .
但是,此后,日志文件中没有添加任何日志消息。 如果删除连接语句,即
dbConnection = DriverManager.getConnection("jdbc:hsqldb:file:db/db", "username", "password");
上述连接语句之后的所有消息都运行良好。
数据库连接没有问题。所有与数据库相关的工作都很好。但此日志记录无法正常工作。
最佳答案
如果您使用 log4J 或 JDK 日志记录,HSQLDB 将更改设置,除非您有系统属性告诉它不要这样做。请参阅此处:
http://hsqldb.org/doc/2.0/guide/management-chapt.html#mtc_jdc_logging
关于java - 登录java应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12153262/