Japex is a Haskell application for doing japanese vocabulary exercises.
It uses a plain-text database with japanese-english expression pairs and supports categories for more focused workouts.
AFAIK it's completely broken on Windows because of a lack of monospace fonts with japanese characters for the command line (please shoot me an email if this is wrong/fixable somehow).