Java was developed by Sun Microsystems and is a programming language with complete functionality like that of C++. Java's original goal was to be completely portable to any platform, and it is. However, at this point, Java's niche is on the World Wide Web since it is one of the few areas when you'd need a program to work on any platform. Probably the most important things that Java brings to the Web are the capacity for more interactivity on the Internet through multimedia and animation. Most modern browsers have support for Java.
Server side technologies are what you need to use if you want to take your Web site to the next level. Server-side technologies can be regarded as those technologies that enable you to dynamically generate your websites. Let's take a quick example to get things clearer. Take Amazon.com for example., Amazon won't make separate web page for each of their products. If you pay close attention to an Amazon.com page, you'll notice that it has many contents that are presented depending on the product you are viewing like 'related products', 'product reviews'. That's not all! You'll notice that you can post a product review on the site, and it'll appear instantly. Do you think that there's someone behind the screen to paste your review and save it as an HTML page for you to view on your browser?! No! And if I can recall back from my statistic classes, the number of different page combination and permutation, would certainly exceed thousands of Gigabytes!
So here comes the wonders and magic of server side technologies. Come to think that the 'someone' we mentioned earlier is the web server. So the task of generating HTML pages is left to that of the server. The instructions needed to decide on what content are to be included in the HTML page is made possible through CGI or server scripting languages which will be discussed later in this article. To thoroughly understand the significance of server-side programming languages, it is appropriate to examine the weakness of HTML. HTML produces static web pages, or web pages that never automatically change. To alter any static page, you must make it happen.
A server side document using an interpreted programming language can be written in a simple text editor and then uploaded to your web server. When someone makes a request for a page from his web browser the script file is sent to the appropriate interpreter, the code is executed, and HTML is automatically. The resulting document is pure HTML, and the user requesting the document, will never see the actual scripting language. By making use of server side technologies you turn your website into an application that can not only display data, but also store and process it. You can build highly interactive web applications, customized to user preferences. Web applications can be made to interact with databases or other files, to store data, retrieve data, and manipulate data. More examples and applications will be given throughout this section.