I just started reading about
Hibernate. It seems that if we used it, the database connection is specified in a hibernate.properties file, and SnipSnap wouldn't care where the storage is. It could still default to McKoi though.
The main requirement is that the snips be proper java beans, with a getter and setter for each instance variable that we want to save in the database.