Class MySQL

All Implemented Interfaces:
AutoCloseable

public class MySQL extends AbstractDatabaseContainer
Testcontainers-backed MySQL database used when schemas declare either the modern or legacy MySQL driver. Provides a specialised container implementation that can resolve the JDBC driver from a supplied class loader.
See Also:
  • Constructor Details

    • MySQL

      public MySQL(@Nonnull String dockerImageName)
      Creates a MySQL Testcontainer using supplied Docker image and default class loader.
      Parameters:
      dockerImageName - Docker tag to launch
    • MySQL

      public MySQL(@Nonnull String dockerImageName, @Nonnull ClassLoader driverClassLoader)
      Creates a MySQL Testcontainer using supplied Docker image and explicit driver loader.
      Parameters:
      dockerImageName - Docker tag to launch
      driverClassLoader - ClassLoader capable of resolving the JDBC driver
  • Method Details

    • supportsDriverClassName

      public static boolean supportsDriverClassName(@Nonnull String driverClassName)
      Verifies whether provided driver class name is supported by this container.
      Parameters:
      driverClassName - used in Flyway / jOOQ Gradle configurations
      Returns:
      true if current implementation supports given driver, false otherwise
    • getDriverClassName

      @Nonnull public String getDriverClassName()
      Description copied from class: AbstractDatabaseContainer
      Provides database driver Java class name
      Overrides:
      getDriverClassName in class AbstractDatabaseContainer
      Returns:
      database driver Java class name