I think these books are userful for everyone, from newbie to expert.
1) Just Java 2. If you don't want to read "Thinking in Java", please read it!
2) Swing, Free book, and one of the best Java books focus on Swing.
3) Concurrent programming in Java, must read!
4) Professional Java server programming, J2EE version, it seems that everything involving Java server-side developing in it!
5) Design patterns!
6) Some website,