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.
If you find yourself encoding and decoding URLs often, take a look at how to do it in Java while staying on alert in case you need multiple iterations.