Den nemmeste måde at bruge en in memory-database på, der er fuldt kompatibel med MySQL og kan bruges i JUnit-testsager, er imho MariaDB4j.du skal bare have en Gradle (/Maven) afhængighed (http://search.maven.org/#search%7Cga%7C1%7Ca%3A%22mariaDB4j%22 ) og et par linjer kode for at starte:
DB database = DB.newEmbeddedDB(3306);
database.start();
Connection connection = DriverManager.getConnection("jdbc:mysql://localhost/test", "root", "");
et startscript kan inkluderes via
database.source("path/to/resource.sql");
Flere oplysninger om GitHub readme:https://github.com/vorburger/MariaDB4j
EDIT:Jeg har tilføjet nogle tip til dette svar:MariaDB4j ser ud til at tilføje filer i systemets midlertidige mappe. Så det vil fungere på en indlejret måde, hvilket betyder, at der ikke er behov for at installere noget, og du kan bare bruge afhængigheden via dit ønskede byggeværktøj. Men det er ikke en ægte in-memory-only-løsning, og derfor kan vi ikke længere tale om enhedstests, fordi enhedstests ikke må stole på filer eller databaser