Books Software
Java Concurrency in Practice
Head First Design Patterns
Java Threads
Java Generics and Collections