The applications we have developed so far were running on a single JVM. We already have some experience with concurrent programming, and this is something that will come in handy now. When we program a web application, part of the code will run on the server and a part of the application logic will execute in the browser. The server part will be written in Java, the browser part will be implemented in HTML, CSS, and JavaScript. Since this is a Java book, we will focus mainly on the server part, but we should still be aware of the fact that much of the functionality can, and should be, implemented to run in the browser. The two programs communicate with each other over the IP network, that is, the internet, or, in the case of an enterprise internal application, the company network.
Today, a browser can execute powerful applications, implemented...