While the way to mock jdbc in your application is of course dependant on how you've implemented your actual jdbc transactions.
If you're using jdbc as is, I'd assume you have written yourself an utility class of sorts to do some tasks in the line of DBUtils.getMetadataFor(String tablename)
. What this would mean is that you'd have to create a mock of that class and that could be all you need. This would be rather easy solution for you since you apparently already have a series of jdbc related mock objects available. Note that I'm assuming your jdbc code isn't exploded all around the application - if it is, refactor!!!
If you're however using any framework for database handling (like Spring Framework's JDBC Template classes) you can and should mock the interface class using EasyMock or some other equivalent. That way you can have all the power in the world required for easy mocking of the connection.
And last if nothing else works, you can do what others have said already and use DBUnit and/or derby.