I have started to build a couple of applications as a learning exercise before building a tool that will be used to replace a current mission critical tool in our small business. It has been about 7 years (1997) since I last built an application from the ground up in Java. We used JDK 1.0.2 running on Windows95, DEC Ultrix6.x, or Solaris 6 (I think). Things have changed significantly, the servlet spec was finalized the event handling model in AWT changed and I have built a bunch of stuff in J2EE, PHP, and ColdFusion using a MVC. I keep looking at the tools that are available and I am over-whelmed. A quick read of Java.net and O’Reilly gives me a lot of information about specifics for particular development issues related to Java (and other languages in the case of O’Reilly) but neither seem to have any suggestions about basic environment setup.
I was looking at the source code and tools used to build a couple of applications including Scarab, Informa and Open for Business. And there seems to be a set of standard coding practices including using the JUnit, Log4J, and others.
What are the best tools and practices for building a Java (J2EE) application? How do you best use Ant, or Maven, or other tools to improve project maintenance? Any suggestions on articles, journals or books would be great?
I am a front-end guy looking for some help with the tools I need to develop some middle and backend components.