Подключение пула печати информации к консоли
Я использую "com.mchange.v2.c3p0.ComboPooledDataSource" в моем автономном приложении для загрузки базы данных Java. После инициализации подключения к данным он выводит информацию о подключении к окнам консоли в Eclipse. Он также включает в себя имя пользователя базы данных и информацию о пароле.
Db используется MariaDB.
"Initializing c3p0 pool... com.mchange.v2.c3p0.PoolBackedDataSource@b1a58a3 [connectionPoolDataSource -> com.mchange.v2.c3p0.WrapperConnectionPoolDataSource@7a4f0f29"
Как я могу предотвратить показ этого сообщения на консоли. Содержимое выводится на консоль после этой строки кода
myConn = DataSource.getInstance().getConnection();
Реализация:
public class DataSource {
private static DataSource datasource;
private ComboPooledDataSource cpds;
Properties prop = new Properties();
InputStream input = null;
private DataSource() throws IOException, SQLException, PropertyVetoException {
input = new FileInputStream("config.properties");
prop.load(input);
cpds = new ComboPooledDataSource();
cpds.setDriverClass(prop.getProperty("driverclass")); //loads the jdbc driver
cpds.setJdbcUrl(prop.getProperty("database"));
cpds.setUser(prop.getProperty("dbuser"));
cpds.setPassword(prop.getProperty("dbpassword"));
cpds.setMinPoolSize(5);
cpds.setAcquireIncrement(5);
cpds.setMaxPoolSize(20);
cpds.setMaxStatements(180);
}
public static DataSource getInstance() throws IOException, SQLException, PropertyVetoException {
if (datasource == null) {
datasource = new DataSource();
return datasource;
} else {
return datasource;
}
}
public Connection getConnection() throws SQLException {
return this.cpds.getConnection();
}
}
Я прочитал файл config.properties, в котором я храню имя базы данных и данные crdentials.
Я вызываю пул соединений из моего основного класса следующим образом:
myConn = DataSource.getInstance().getConnection();
myConn.setAutoCommit(false);
Вскоре после выполнения этой строки я вижу запись в консоли, в которой упоминаются подробности о пуле соединений, включая имя базы данных, имя пользователя и пароль. Я не использую log4j для пула соединений, он используется только для регистрации на уровне приложений.