Effective Java / Joshua Bloch, Addison-Wesley, 2008
“I sure wish I had this book ten years ago. Some might think that I don’t need any Java books, but I need this one.” — James Gosling, inventor of Java.
“This is a truly excellent book done by the guy who designed several of the better recent Java platform API’s (including the Collections API).” — James Clark, of XML fame.
Java : the complete reference / Herbert Schildt. McGraw-Hill, 2007.
1024 pages, Updated and expanded for Java SE 6. I wish I had time to read this.
Holub on patterns : learning design patterns by looking at code / Allen Holub. Apress, 2004
An opinionated look at design patterns. If you are using a language not known for rapid development then you want to choose the right patterns in advance so you won’t be refactoring too much. This book discusses which patterns are most useful, with examples in Java. Not recently written, but worth reading.
Programming interviews exposed : secrets to landing your next job / John Mongan, Noah Suojanen, Eric Giguère. Wiley Pub., 2007
If you work in technology, whether programming or similar, you probably need to look for new work now and then. This book is the best I have seen for advice on how to interview, negotiate pay, and prepare your resume. Useful to hiring managers too.
There is another way to approach this book. More than half of the book is programming algorithms that you would learn in undergrad CS, and you can read it to refresh your knowledge.
Beginning JSP, JSF and Tomcat web development : from novice to professional / Giulio Zambon, Apress 2007
For the Java programmer developing a web application, a framework such as JSF is recommended so you can reuse the work of many others. Here is a current intro.
SCEA Sun certified enterprise architect for Java EE study guide (exam 310-051) / Paul R. Allen, McGraw Hill, c2007
For the Java pro who needs to be certified.
Beginning JBoss Seam : from novice to professional / Joseph Faisal Nusairat, Apress 2007
Here’s a good book for Java programmers. Agile and Enterprise in the same sentence! Seam is a framework that attempts to streamline the development of a web app. I will read this book before I do my next web app.
The definitive guide to SWT and JFace / Rob Warner with Robert Harris. Apress Springer Verlag, c2004.
Here is a good introduction to Eclipse GUI programming. Though somewhat dated, it is still worth reading. It will help if you are doing a Rich Client (RCP) or extending Eclipse with a new plugin. SWT is way better than Swing, but there seem to be fewer books on it. There is a lot to learn, and too many sources on the net, so use this book to get started.
Thinking in Java / Bruce Eckel. Prentice Hall, 2006
The most readable book on Java that I know of, and at 1482 pages it is a weighty tome. Read it all to improve your design skills, or use it as a reference.
Official Eclipse 3.0 FAQs / John Arthorne, Chris Laffra. Addison-Wesley, 2004
Eclipse is a big system, and there is a lot to be learned about it. This book is somewhat dated, but you will want to read it if you are using or extending Eclipse.