Posted against http://www.freeroller.net/page/ktorn/20030713
I learned a lot from the old standards Java Examples in a Nutshell and Java Enterprise in a Nutshell. I also liked Darwin’s Java Cookbook, he has some useful stuff about common gotchas and using the collections classes properly. There is a debate about his typesafe enums because they will not serialise properly.
I can only echo all of the points made earlier about making your code easy to understand so that when you come back to it you can easily see what was important.
Also try using the Code Coach in JDeveloper (free to use), remember lint from the old days? You need a decent IDE, I personally use Eclipse and JDeveloper depending upon whether it is pure Java or needs some wizards to do the hand cranking for me. Being lazy I prefer to get on with the job and not have to write all of the EJB or whatever code from scratch.
Added Later : Got Java Cookbook mixed up with Effective Java (Bloch)