If you want to ensure you're overriding the right way, take a look at this guide, which dives into the various means at your disposal and some pitfalls to watch out for.
Your FileInputStream and FileOutputstreams might introduce long GC pauses. Fortunately, Java 7's 'files.new' additions can help with your I/O efficiency.
Let's dive into using named queries for JPA entities. The @NamedQuery annotation allows for finer control and enhanced functionality for your databases.
Formatting dates is always a challenge, but Java's SimpleDataFormat class has plenty of options (and a few pitfalls) that can take the frustration out of dates.
See an overview of an application that can be tuned with Akka, the load tests and tools that can be used to measure app performance, and some test results.