You can choose to use simple Text Editor like Textpad, Ultradedit, etc.
or IDE like Eclipse, Netbeans, etc.
There is no best choice, it really depends on what you problem is.
Notepad would do a simple HelloWorld program very well but not much people would use it to do enterprise application.
Eclipse is one of the popular IDEs and many developers like it.
You would know the best after you have experienced all.
As previously mentioned, there is no best tool to start java (or web) app coding.
If you are new java developer, so you have better to start programming manually. For example, use notepad and MS-DOS (compile and run).
This'll help you to control java commands : javac, java (and related arguments like -classpath, etc)
If you already know java programming basics, you can use eclipse for example together with the popular apache tomcat as a servlet container.
Look at sample demos of tomcat to get familiar with web app deployment.
hth