The goal of mock-jdbc is to provide a simple way of delivering data during testing through JDBC.
Each SQL query expects a file name with the hash of the query.
col1|type,col2,.... val11,val12,... val21, val22,... ...
java -jar mock-jdbc.jar no.maddin.mockjdbc.DriverTool "select 1 from dual would generate 2a44ecfe. I.e. the data for the query has to be in <path to data file>/2a44ecfe.csv.
import javax.sql.*;
import java.io.*;
class MockJdbcTest {
    private static final String dataDbDir = new File(MockJdbcTest.class.getResource("/mockdb").getFile()).getAbsolutePath();
    
    @Test        
    public void showMockData() {
        try (Connection con = DriverManager.getConnection("jdbc:mock:csv;path=" + dataDbDir);
            PreparedStatement st = con.prepareStatement("select id, val from testTable");
            ResultSet rs = st.executeQuery()
        ) {
            while(rs.next()) {
                assertThat(rs.getMetaData().getColumnLabel(2), is(equalTo("val")));
                assertThat(rs.getMetaData().getColumnType(2), is(equalTo(columnType)));
                T val = getValue.getValue(rs);
                assertThat(val, is(instanceOf(targetClass)));
            }
        }
    }
}