Skip to content

Instantly share code, notes, and snippets.

@dineshbhagat
Last active May 26, 2021 10:52
Show Gist options
  • Save dineshbhagat/7ed71007003e209082a1ccf8c48da765 to your computer and use it in GitHub Desktop.
Save dineshbhagat/7ed71007003e209082a1ccf8c48da765 to your computer and use it in GitHub Desktop.
  • Add driver class

        // https://mvnrepository.com/artifact/org.mariadb.jdbc/mariadb-java-client
      implementation group: 'org.mariadb.jdbc', name: 'mariadb-java-client', version: '2.7.3'
  • Mariadb installation Ref

  • Run java class project

    public class DemoApplication {
    
        public static void main(String[] args) throws SQLException {
            HikariConfig hikariConfig = new HikariConfig();
            hikariConfig.setMaximumPoolSize(10);
            // cannot use driverClassName and dataSourceClassName together.
    //        hikariConfig.setDataSourceClassName("org.mariadb.jdbc.MariaDbDataSource");
            hikariConfig.setDriverClassName("org.mariadb.jdbc.Driver");
            hikariConfig.setJdbcUrl("jdbc:mariadb://localhost:3306/test");
            hikariConfig.setUsername("nonroot"); // here, it's a custom user
    //        hikariConfig.setPassword("root");
    
            hikariConfig.setConnectionTimeout(1000L);
            hikariConfig.addDataSourceProperty("autoReconnect", true);
            hikariConfig.addDataSourceProperty("cachePrepStmts", true);
            hikariConfig.addDataSourceProperty("prepStmtCacheSize", 250);
            hikariConfig.addDataSourceProperty("prepStmtCacheSqlLimit", 2048);
            hikariConfig.addDataSourceProperty("useServerPrepStmts", true);
            hikariConfig.addDataSourceProperty("cacheResultSetMetadata", true);
    
            final HikariDataSource hikariDataSource = new HikariDataSource(hikariConfig);// line 37
    //        hikariDataSource
            final Statement s = hikariDataSource.getConnection().createStatement();
            final ResultSet resultSet = s.executeQuery("select * from Article");
            while (resultSet.next()) {
                final String o1 = resultSet.getObject(2, String.class);
                System.out.println(o1);
            }
            hikariDataSource.close();
        }
    }

    OUTPUT:

    16:12:49.783 [main] DEBUG com.zaxxer.hikari.HikariConfig - Driver class org.mariadb.jdbc.Driver found in Thread context class loader sun.misc.Launcher$AppClassLoader@18b4aac2
    16:12:49.854 [main] DEBUG com.zaxxer.hikari.HikariConfig - HikariPool-1 - configuration:
    16:12:49.863 [main] DEBUG com.zaxxer.hikari.HikariConfig - allowPoolSuspension.............false
    16:12:49.863 [main] DEBUG com.zaxxer.hikari.HikariConfig - autoCommit......................true
    16:12:49.863 [main] DEBUG com.zaxxer.hikari.HikariConfig - catalog.........................none
    16:12:49.863 [main] DEBUG com.zaxxer.hikari.HikariConfig - connectionInitSql...............none
    16:12:49.864 [main] DEBUG com.zaxxer.hikari.HikariConfig - connectionTestQuery.............none
    16:12:49.864 [main] DEBUG com.zaxxer.hikari.HikariConfig - connectionTimeout...............1000
    16:12:49.864 [main] DEBUG com.zaxxer.hikari.HikariConfig - dataSource......................none
    16:12:49.864 [main] DEBUG com.zaxxer.hikari.HikariConfig - dataSourceClassName.............none
    16:12:49.864 [main] DEBUG com.zaxxer.hikari.HikariConfig - dataSourceJNDI..................none
    16:12:49.865 [main] DEBUG com.zaxxer.hikari.HikariConfig - dataSourceProperties............{autoReconnect=true, cacheResultSetMetadata=true, password=<masked>, prepStmtCacheSqlLimit=2048, cachePrepStmts=true, useServerPrepStmts=true, prepStmtCacheSize=250}
    16:12:49.866 [main] DEBUG com.zaxxer.hikari.HikariConfig - driverClassName................."org.mariadb.jdbc.Driver"
    16:12:49.866 [main] DEBUG com.zaxxer.hikari.HikariConfig - healthCheckProperties...........{}
    16:12:49.866 [main] DEBUG com.zaxxer.hikari.HikariConfig - healthCheckRegistry.............none
    16:12:49.866 [main] DEBUG com.zaxxer.hikari.HikariConfig - idleTimeout.....................600000
    16:12:49.866 [main] DEBUG com.zaxxer.hikari.HikariConfig - initializationFailTimeout.......1
    16:12:49.866 [main] DEBUG com.zaxxer.hikari.HikariConfig - isolateInternalQueries..........false
    16:12:49.866 [main] DEBUG com.zaxxer.hikari.HikariConfig - jdbcUrl.........................jdbc:mariadb://localhost:3306/test
    16:12:49.867 [main] DEBUG com.zaxxer.hikari.HikariConfig - leakDetectionThreshold..........0
    16:12:49.867 [main] DEBUG com.zaxxer.hikari.HikariConfig - maxLifetime.....................1800000
    16:12:49.867 [main] DEBUG com.zaxxer.hikari.HikariConfig - maximumPoolSize.................10
    16:12:49.867 [main] DEBUG com.zaxxer.hikari.HikariConfig - metricRegistry..................none
    16:12:49.867 [main] DEBUG com.zaxxer.hikari.HikariConfig - metricsTrackerFactory...........none
    16:12:49.867 [main] DEBUG com.zaxxer.hikari.HikariConfig - minimumIdle.....................10
    16:12:49.867 [main] DEBUG com.zaxxer.hikari.HikariConfig - password........................<masked>
    16:12:49.867 [main] DEBUG com.zaxxer.hikari.HikariConfig - poolName........................"HikariPool-1"
    16:12:49.867 [main] DEBUG com.zaxxer.hikari.HikariConfig - readOnly........................false
    16:12:49.867 [main] DEBUG com.zaxxer.hikari.HikariConfig - registerMbeans..................false
    16:12:49.867 [main] DEBUG com.zaxxer.hikari.HikariConfig - scheduledExecutor...............none
    16:12:49.868 [main] DEBUG com.zaxxer.hikari.HikariConfig - schema..........................none
    16:12:49.868 [main] DEBUG com.zaxxer.hikari.HikariConfig - threadFactory...................internal
    16:12:49.868 [main] DEBUG com.zaxxer.hikari.HikariConfig - transactionIsolation............default
    16:12:49.868 [main] DEBUG com.zaxxer.hikari.HikariConfig - username........................"nonroot"
    16:12:49.868 [main] DEBUG com.zaxxer.hikari.HikariConfig - validationTimeout...............5000
    16:12:49.869 [main] INFO com.zaxxer.hikari.HikariDataSource - HikariPool-1 - Starting...
    16:12:49.975 [main] DEBUG com.zaxxer.hikari.pool.HikariPool - HikariPool-1 - Added connection org.mariadb.jdbc.MariaDbConnection@737996a0
    16:12:49.977 [main] INFO com.zaxxer.hikari.HikariDataSource - HikariPool-1 - Start completed.
    This is my first article
    This is my second article
    16:12:49.985 [main] INFO com.zaxxer.hikari.HikariDataSource - HikariPool-1 - Shutdown initiated...
    16:12:49.985 [main] DEBUG com.zaxxer.hikari.pool.HikariPool - HikariPool-1 - Before shutdown stats (total=1, active=1, idle=0, waiting=0)
    16:12:49.997 [main] DEBUG com.zaxxer.hikari.pool.HikariPool - HikariPool-1 - After shutdown stats (total=0, active=0, idle=0, waiting=0)
    16:12:49.997 [main] INFO com.zaxxer.hikari.HikariDataSource - HikariPool-1 - Shutdown completed.
    
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment