Showing posts with label J2EE. Show all posts
Showing posts with label J2EE. Show all posts

Wednesday, October 21, 2009

Chapter 11: J2EE – The Eclipse Way


Why Tools?

Often we repeatedly do something which turns out to be time consuming and frustrating  over a period of time. Not only in computing but this happens in general. Most of the times, we tend to automate it & make it easier to accomplish.
So the aim of software is to automate these type human tasks and save time, effort, money. But the funny part is that the developer who creates a software also has a set of repeated tasks. What are the possibilities ?
For example, let’s take the compilation of servlets. what are we doing there ?
  1. We write the servlet program, save it as filename.java under the src folder.
  2. We compile it and A filename.class gets created.
  3. We copy (or cut) the .class file and paste it in classes folder.
  4. Reload the application.
Now even if we make a small change, we have to repeat all 4 steps. Consider if we have some 50 servlets in the src folder, repeating them lead to horrible software development.

Code for Code

Tools are developed these days to make software development quick and easy. These tools are usually termed as IDE (Integrated Development  Environment). So i tagged “Code for Code”, just because people write code to develop a tool which will be used to code :) Like “Tit for Tat”.

Advantage of Tools

Using a tool for software development makes life easy for a programmer.
Basically speaking (oops, it’s writing actually :)) tools gives,
  • Efficiency: Enhances coding productivity.
  • Speed: Lesser development time.
Technically speaking, a tool has the following common features.
  1. Syntax highlighting for better visibility.
  2. Validation mechanisms that helps get rid of errors during development itself.
  3. Code Assists that provides technical insights.
  4. Automatic compilations & builds.

What: Eclipse IDE

Eclipse is a free, open-source multi-language software development environment comprising an IDE and a plug-in system to extend it. It is written primarily in Java and can be used to develop applications in Java and, by means of the various plug-ins, in other languages as well, including C, C++, COBOL, Python, Perl, PHP, and others.
(Taken from Wikepedia)

Eclipse: Installation

Installing eclipse is equal to unzipping a .zip file. Only two steps.
  1. Download eclipse (click here to download)
  2. Unzip the downloaded file (to anywhere in your hard disk).
That’s it. Installation complete. Start coding. Have fun. Enjoy the pleasure of the advantages.

Tomcat Plug-in for Eclipse

Eclipse is a tool which has a limited set of features after installation. It provides a feature called plug-in using which we can add any feature later. Tomcat has provided a plug-in for eclipse using which we can start/stop the tomcat server from eclipse itself.
When we create a Tomcat project, eclipse will automatically create the standard folder structure for you. Like the WEB-INF, src, classes etc.,

Tomcat Plug-in: Installation

Again, Installing an eclipse plug-in is equal to unzipping a .zip file. Only two steps.
  1. Download Tomcat Plug-in for eclipse (click here to download)
  2. Unzip the downloaded file (to <eclipse-install-dir> \ plugins folder).

Download Video Source: High-Quality : 18 MB

Click below arrow to download….

Saturday, September 26, 2009

Chapter 10: More Examples: JSP + Servlets



What now?

Both JSP and servlets combined together forms a better web application. Lets write a sample application that involves both JSP and Servlets.
we will use four files for this example.
  1. home.jsp
  2. AuthenticateServlet.java
  3. welcome.jsp
  4. error.jsp

Examples

index.jsp

This is like our login page where the user will enter an username and password.
<HTML>
<BODY>     
<h5>Welcome to VikiMail !</h5>      
<h4>Login</h4>      
<FORM ACTION = "AuthenticateUser" METHOD ="POST">      
Username: <INPUT TYPE = "TEXT" NAME = "username">      
Password: <INPUT TYPE = "PASSWORD" NAME = "password">      
<INPUT TYPE = "SUBMIT" VALUE = "Login">      
</FORM>
</BODY>     
</HTML>

AuthenticateServlet.java

This is the only servlet program in our example. It will be invoked when we enter username/password and submit the index.jsp page.
For making it simple, this servlet just checks if the password is super*, goes to success.jsp. Otherwise it will go to error.jsp
import java.io.*;    
import javax.servlet.*;     
import javax.servlet.http.*; 
public class AuthenticateServlet extends HttpServlet     
{      
public void doPost     
(HttpServletRequest request,      
HttpServletResponse response)     
throws ServletException, IOException      
{      
String username = request.getParameter("username").toString();    
String password = request.getParameter("password").toString();
if(password.equals("super*"))     
response.sendRedirect("success.jsp");      
else      
response.sendRedirect("error.jsp");     
}     
} 

web.xml

This file, usually resides inside the WEB-INF folder. Whatever servlets we have written in our application, we need to specify it here.
In our case there is one servlet called AuthenticateServlet.java.

Mapping with web.xml

Follow these steps to add a servlet mapping.
1) Create a <servlet> </servlet> tag.
2) Create a <servlet-name> tag and <servlet-class> tag INSIDE the <servlet> tag like shown below.
<servlet>  
<servlet-name> </servlet-name>    
<servlet-class>  </servlet-class>    
</servlet> 
3) In <servlet-class>, give the .class name of the servlet program. The name you specify here must be the same name as the servlet program file name.
4) In </servlet-name> tag, give any dummy name. This is like a reference name for mapping purposes. The dummy name given here needs be specified exactly in another place of the web.xml file.

<servlet>   
<servlet-name>CallAuthenticate</servlet-name>   
<servlet-class>AuthenticateServlet</servlet-class>    
</servlet> 
5) Create a <servlet-mapping> tag and inside that, create two other tags namely, <servlet-name> and <url-pattern> like the one which is shown below.
<servlet-mapping>  
<servlet-name>   </servlet-name>    
<url-pattern>       </url-pattern>    
</servlet-mapping> 
6) In the <servlet-name> tag (under <servlet-mapping>), give the same dummy name that you specified in the <servlet-name> tag under <servlet> tag.
7) Finally in the <url-pattern> tag, give this symbol first. : /
8) Followed by the slash, give any URL name.
Remember: This URL pattern will be specified in the ACTION attribute of the <form> tag in the jsp page. (Check the index.jsp page)
After changing everything, your web.xml will look something like this.
Note: Follow the same procedure for creating servlet mappings. Except for the (1)Actual java file name (2) dummy servlet name and the (3) URL Pattern, everything procedure remains same.

web.xml

<?xml version="1.0"?>  
<web-app    
xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" version="2.5"> 
<display-name>Demo Application</display-name>  
<description>   
For Learning purposes.    
</description>
<servlet>  
<servlet-name>CallAuthenticate</servlet-name>   
<servlet-class>AuthenticateServlet</servlet-class>   
</servlet>
<servlet-mapping>   
<servlet-name>CallAuthenticate</servlet-name>   
<url-pattern>/AuthenticateUser</url-pattern>   
</servlet-mapping>
</web-app>

success.jsp

This is the page that the servlet re-directs to when the password is correct.
<HTML>     
<h5>Welcome!</h5><BR>    
<h4>Login Successful</h4>     
</HTML>

error.jsp

This is the page that the servlet re-directs to when the password is wrong.
<HTML>     
<h5>Sorry!</h5><BR>     
<h4>Login failed</h4>      
</HTML>

Tuesday, September 8, 2009

Chapter 09: Beginning Servlets

What: Servlet

A Servlet is a Java Program that extends HttpServlet class. A servlet is basically responsible for processing request & sending response to the client. Servlet helps developing a more robust, secure web application.

Like: Servlet

These are the other scripting languages that are like Java Servlet. If you are learning a concept, it’s good to know the counterparts.
  1. CGI
  2. PHP
  3. ASP.NET

The King: web.xml

An XML file called "web.xml" contains information about all the servlets written in a java application. This is the most important file in a JEE web application and it is mandatory. Inside the project folder/directory, a folder called “WEB-INF” should be created. Inside this folder, the web.xml file needs to be placed.

Example:

<?xml version="1.0"?>
<web-app
xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
version="2.5">
<display-name>Demo Application</display-name>
<description>
For Learning purposes.
</description>
<servlet>
<servlet-name>MyFirstServlet</servlet-name>
<servlet-class>DemoServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>MyFirstServlet</servlet-name>
<url-pattern>/HitTheServlet</url-pattern>
</servlet-mapping>
</web-app>

Servlet Vs JSP

Both Servlet and JSP are basically same. A JSP is actually converted to a servlet before execution. Whenever a JSP file is executed, it is first compiled into a Java Servlet & then executed by the server.

My First Servlet

import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class HelloWorld extends HttpServlet
{
public void doGet(HttpServletRequest request,
HttpServletResponse response)
throws ServletException, IOException
{
PrintWriter out = response.getWriter();
out.println("Hello World");
}
}

Download Video Source: High-Quality : 33 MB

Click below arrow to download….
Watch it !

Saturday, September 5, 2009

Chapter 08: More JSP Examples

With this chapter, we will wind up jsp and start learning Servlets. Of course there are too many topics we missed out in jsp but the objective of my blog is to get you started. Once you get the start, you will learn everything on your own. From my experience, Self-Learning is the best learning.
I will discuss two more examples on jsp in this chapter.

Example 1: The Dynamic Table

We will build a multiplication table which we've come across during our early school days.
First, i will build it with HTML Alone. Then we will do it the JSP way.

table.html

The following table is a static one. It’s just a multiplication table of 5.

<html>
<h3>5 Table</h3>

<TABLE border = 1>

<TR><TH>A</TH><TH>B</TH></TR>

<tr><td>1 * 5</td><td>5</td></tr>
<tr><td>2 * 5</td><td>10</td></tr>
<tr><td>3 * 5</td><td>15</td></tr>
<tr><td>4 * 5</td><td>20</td></tr>
<tr><td>5 * 5</td><td>25</td></tr>

<TABLE>

</html>

table.jsp

Here we go…Our cute dynamic one. Notice the number of Multiply operation performed in both the examples. It’s 5 lines in the HTML version. But here, it’s just ONLY ONE line. The number you define in the for loop, decides the number of rows. Check out the video @ the end of this blog to see this in action.

<html>

<h3>5 Tables</h3>

<TABLE border = 1>
<TR><TH>A</TH><TH>B</TH></TR>

<%
int number = 5;
for(int i = 1; i <= number ; i++)
{
%>
<tr><td>1 * <%=number%></td><td><%=number*i%></td></tr>
<%
}
%>

<TABLE>

</html>


Example 2: Website Helper


where1.jsp

This is a typical “Re-direct” example. If you just say the name of the site, it takes you right there. This where1.jsp has the HTML form where you give the input.

<HTML>
<h3>Where do you want to go ?</h3>
Enter the site name alone. Dont give www, http.
<BR>Eg., Yahoo.

<FORM ACTION = "where2.jsp" METHOD = "POST">
<BR><B>Website : <INPUT TYPE = TEXT NAME = "website">
<BR><INPUT TYPE = SUBMIT VALUE = "Go !">
</FORM>
</HTML>

where2.jsp

Once you define a site, the following piece of code will attach http, www, com to the name and performs a re-direct.

<HTML>
<%
String siteName = request.getParameter("website");
String siteURL = "http://www."+ siteName + ".com";
response.sendRedirect(siteURL);
%>
</HTML>

What Next?

Well, there is a lot, lot & lot to learn. It will never end and you should never stop learning. What i have taught you in 8 chapters is just a start. You need to keep surfing more & explore JSP. We will now move to servlets.

Download Video Source: High-Quality : 23 MB

Click below arrow to download….

Video: Part 1



Video: Part 2

Friday, August 28, 2009

Chapter 07: Working with Forms



 

Download Video Source: High-Quality : 15 MB

Click below arrow to download….

Why Forms ?

Forms are the foremost feature found in any web application. I refer form to the HTML "Form" Tag. We do know that we can add Text Box, Buttons, List box to the web page using this Form tag.
So to interact with the user, using forms is inevitable. Let's go and see some examples around the web & figure out how important Forms are....

Examples

Yahoo! Mail - Registration Page
This site is world famous & most of us have created an account in Yahoo!
This registration page is built using HTML "Forms" Tag only.
Google - Advanced Search Window
Yet another example of a form...See, if you want to get data from the user, you need a form. Just imagine how it is processed. Let's imagine the steps that follows...
  1. You will fill the form.
  2. Then submit the form.
  3. Then Google server will catch all your inputs.
  4. It will completely 'change' it's way of search.
  5. When you search again, you get different results.
This is indeed a terrific example of a web application. Based on user input in the form, What you see after that completely changes. Ok...Let's stop our crap stories...we had enough...Now let's go to our favorite...programming....

HTML Forms

Let’s start with a sample login form. We will have a username & password text box.
And finally, we will also add one login button at the bottom of the page.
Here is how the code will look like. Name it, “one.jsp”.
<HTML>
<FORM ACTION = "two.jsp" METHOD = "POST">
<BR><B>Username : <INPUT TYPE = TEXT NAME = "username">
<BR><B>Password : <INPUT TYPE = TEXT NAME = "password">
<BR><INPUT TYPE = SUBMIT VALUE = "LOGIN">
</FORM>
</HTML>
HTML Forms & JSP
Now let’s find out what JSP has to do with this. Listen, you designed a page. You got text boxes to type. Think what next. Well, the answer is processing. Once you have your data, you need to process. For example, say once you click on the login button, you have to search the database and validate the login. Whether the user actually has an account & given the right password. Too much theory ? Don’t worry.
HTML can only design the form. It is not having any feature to process data. But JSP can…
JSP uses the request attribute to get the form data. So let’s see how actually JSP does it with an example.
The following file is two.jsp
<HTML>
<h3>Form submitted successfully. </h3>
User name : <%=request.getParameter("username").toString()%>
<BR>Password : <%=request.getParameter("password").toString()%>
</HTML>

response Object

Just like the request, we have another object called response. It’s evident from the name that it contains details regarding a page response. One of the famous example used is sendRedirect. This method is used to navigate from one page to another page. Below example will check if the password entered in page one is ‘jothika’.
If yes, then it goes to success.jsp. Otherwise, it will go to failed.jsp. Try it…See it for yourselves.
<HTML>
<h3>Form submitted successfully. </h3>
User name : <%=request.getParameter("username").toString()%>
<BR>Password : <%=request.getParameter("password").toString()%>
<%
String username = request.getParameter("username").toString();
String password = request.getParameter("password").toString();
if(password.equals("jothika"))
response.sendRedirect("success.jsp");
else
response.sendRedirect("failed.jsp");
%>
</HTML>

Monday, August 24, 2009

Chapter 06: Digging JSP

We discussed some basics of JSP in previous chapter. Let’s try and get along more with JSP :)

Focus for the chapter would be:

  1. Scriptlets
  2. out Object
  3. request Object

1.Scriptlets

We have already seen how to embed Java expressions in JSP pages by putting them between the <%= and %> character sequences. But it is difficult to do much programming just by putting Java expressions inside HTML.

JSP also allows you to write blocks of Java code inside the JSP. You do this by placing your Java code between <% and %> characters (just like expressions, but without the = sign at the start of the sequence.)

This block of code is known as a "scriptlet". A scriptlet contains Java code that is executed every time the JSP is invoked.

Here is a modified version of our JSP from previous section, adding in a scriptlet.

<HTML>
<BODY>

<%
System.out.println( "Evaluating date now" );
java.util.Date date = new java.util.Date();
%>
Hello! The time is now <%= date %>

</BODY>
</HTML>

If you run the above example, you will notice the output from the "System.out.println" on the server log file. It will not print on the browser.

2. out Object

By itself a scriptlet does not generate HTML. If a scriptlet wants to generate HTML, it can use a variable called "out". This variable does not need to be declared. It is already predefined for scriptlets, along with some other variables. The following example shows how the scriptlet can generate HTML output.

<HTML>
<BODY>
<%
//This scriptlet declares and initializes "date"
System.out.println( "Evaluating date now" );
java.util.Date date = new java.util.Date();
%>

Hello! The time is now
<%
out.println(date);
%>
</BODY>
</HTML>

Here, instead of using an expression, we are generating the HTML directly by printing to the "out" variable. The "out" variable is of type javax.servlet.jsp.JspWriter.

Greetings ! Example

Ok. Lets try out a more informative example. This is the scenario.

  1. If it’s a morning, it should greet me “Good Morning. Have a nice day”.
  2. If it’s a evening, it should greet me “Good Evening, Good day”.

Ok. Try this example & let me know if you are able to do it…

3. request Object

Another very useful pre-defined variable (or object) is "request".

It is of type javax.servlet.http.HttpServletRequest

A "request" in server-side processing refers to the transaction between a browser and the server. When someone clicks or enters a URL, the browser sends a "request" to the server for that URL, and shows the data returned. As a part of this "request", various data is available, including the file the browser wants from the server, and if the request is coming from pressing a SUBMIT button, the information the user has entered in the form fields.

The JSP "request" variable is used to obtain information from the request as sent by the browser. For instance, you can find out the name of the client's host (if available, otherwise the IP address will be returned.) Let us modify the code as shown:

<HTML>
<BODY>

<%
// This scriptlet declares and initializes "date"
System.out.println( "Evaluating date now" );
java.util.Date date = new java.util.Date();
%>

Hello! The time is now

<%
out.println( date );
out.println( "<BR>Your machine's address is " );
out.println( request.getRemoteHost());
%>

</BODY>
</HTML>

A similar variable is "response". This can be used to affect the response being sent to the browser. For instance, you can call response.sendRedirect( anotherUrl ); to send a response to the browser that it should load a different URL. This response will actualy go all the way to the browser. The browser will then send a different request, to "anotherUrl". This is a little different from some other JSP mechanisms we will come across, for including another page or forwarding the browser to another page.

Download Video Source: High-Quality : 15 MB

Click below arrow to download….




Sunday, August 23, 2009

Chapter 05: Beginning JSP

What is JSP ?

JSP is the abbreviation of Java Server Pages.
Simply put,

JSP = HTML + Java.

HTML is a markup language & it's features are very limited. It is still simple & superb but can only generate static content. The key concept of a web application, i.e, the Dynamic Content Generation cannot be performed by HTML. So this only happens when it gets some help. To conclude the story, here is viki’s bottom liner.

When the power of Java combined with the simply-superb HTML, the outcome is technically termed JSP.

JSP: Static content

JSP simply puts Java inside HTML pages. You can take any existing HTML page and change its extension to ".jsp" instead of ".html". Take the HTML file you used in the previous exercise. Change its extension from ".html" to ".jsp". Now load the new file, with the ".jsp" extension, in your browser.

You will see the same output, but it will take longer! But only the first time. If you reload it again, it will load normally.

What is happening behind the scenes is that your JSP is being turned into a Java file, compiled and loaded. This compilation happens only once and after the first load, the file will not take more time to load. (But everytime you change the JSP file, it will be re-compiled again.)

Of course, it is not very useful to just write HTML pages with a .jsp extension!

JSP: Dynamic content

what makes JSP useful is the ability to embed Java. Put the following text in a file with .jsp extension (let us call it hello.jsp), place it in your JSP directory, and view it in a browser.

<HTML>
<BODY>
Hello! The time is now <%= new java.util.Date() %>
</BODY>
</HTML>

Notice that each time you reload the page in the browser, it comes up with the current time.

The character sequences <%= and %> enclose Java expressions, which are evaluated at run time.

This is what makes it possible to use JSP to generate dynamic HTML pages that change in response to user actions or vary from user to user.

Watch a demo below.

Download Video Source: High-Quality : 8 MB

Click below arrow to download….


Chapter 04: Know your Server

There are two things you must know if you have a server.

  1. Where to place the files (or programs) in the server.
  2. How to access them from a web browser.
We are gonna write a sample HTML program and try to do the above steps.
In apache Tomcat, we have to place the files in the webapps folder of tomcat's installation directory. For me, it's F:\tomcat 6.0.
So, if your application name is "demo", then create a folder called "demo" under the following directory.
F:\Tomcat 6.0\webapps\demo
View the below video for understanding more.

Download Video Source: High-Quality : 7 MB

Click below arrow to download….


Chapter 03: Before Beginning: The basic Tool sets

You might wonder why we still didn't write a single line of code even after the 3rd chapter. I understand your thoughts. But you need some patience. We are not done yet. We need to install some softwares before we get going.

Basically we need THREE tools. Java, Server, Editor.

We need to download & install the following tools.
No tutorial is necessary for installing java. You are not eligible to learn JEE if you don't even know how to install java. However it's not the same case for Apache Tomcat. So lets discuss about it.

Apache Tomcat:
Apache Tomcat
is a servlet container developed by the Apache Software Foundation (ASF). Tomcat implements the Java Servlet and the JavaServer Pages (JSP) specifications from Sun Microsystems, and provides a "pure Java" HTTP web server environment for Java code to run.
Tomcat should not be confused with the Apache web server, which is a C implementation of an HTTP web server; these two web servers are not bundled together. Apache Tomcat includes tools for configuration and management, but can also be configured by editing XML configuration files.

Download Video Source: High-Quality : 8 MB

Click below arrow to download….



All right. We are geared up to get our hands dirty with JEE code....

Chapter 02: Before Beginning: The basic skill sets


We just can't jump into J2EE and start learning. There are few basics concepts or skills we need to acquire first., The following skill set are compulsory learnings before beginning J2EE.
  1. Basic knowledge on Java programming
  2. Good understanding of HTML
  3. Client - Server
  4. Working knowledge of HTTP.
  5. Basic knowledge on XML.
However, these are optional learnings but important for JEE mastery.
  1. Java Script
  2. CSS
  3. Good knowledge in java
Java skills
You don't need to be a java guru to learn JEE. It's just an extra edge and absolutely not mandate. So you should have a basic understanding concepts like Class, Objects, Inheritance, Interface, Packages, Constructors, Exception Handling.

HTML skills

Again, You don't need to be a HTML guru to learn JEE. It's just an extra edge and absolutely not mandate. So you should have a basic skills on creating a sample HTML page, creating Forms, Tables, etc. If you don't have much idea, i suggest you to read the below tutorial.

Client - Server
Server - One who process the request. Basically server is like a java program only. It communicates with the clients who speak HTTP. I refer 'speak' to processing a request & sending back a response.HTTP is a network protocol. Client - One who raises the request. It's just YOU. When you type, "google.com" in a browser (like internet explorer) you want to open the google page. This operation is technically termed "HTTP Request". Now the GOOGLE server will accept your request, process it, returns the "google search" page. This returning operation is technically termed a "HTTP Response".

HTTP
HTTP is expanded to Hyper Text Transfer Protocol. Never care about the long confusing abbreviation. It's just a language for communication between a client & server.
If you take humans, I will order, "Tea, please".
This a request. And obviously, there comes a cup of Tea. And Voila, that's the response.
Same way, Client request is HTTP Request & Server response is HTTP Response.
But the problem is the language representation. It's not as explicit as common english.
The following passage is NOT a HTTP request.
"Dear computer Ji, i want to steal a code for my lab assignment. Please give me a working C++ program for generating the fibonacci series".
IF this is not, then what is a valid request. Interested in seeing how a valid HTTP Request will look like ?
Here you go..

The following HTTP request was received from IP address 123.236.74.4 (port 2818) by IP address 91.84.196.2 (port 80):

GET /dumprequest HTTP/1.1
Host: djce.org.uk
Connection: keep-alive
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US) AppleWebKit/530.5 (KHTML, like Gecko) Chrome/2.0.172.39 Safari/530.5
Accept:application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;
Accept-Encoding: gzip,deflate,sdch
Accept-Language: en-US,en;q=0.8
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.3
I know you cannot understand it easily. It's a computer's language & obviously it will be complicated. So to understand clearly,

XML skills

If you know what is XML and if you can create a sample XML document, Fair Enough,. You are ready to go & begin JEE learning. Or else, read the following tutorial.

http://www.w3schools.com/xml

Download Video Source: High-Quality : 10 MB

Click below arrow to download….


Friday, August 21, 2009

Chapter 01: Introduction to J2EE

This chapter gives an overview of the what & why of J2EE. In Tamil language, i have interactively explained assuming that my best friend is sitting next to me.

J2EE is the abbreviation of Java 2 Enterprise Edition.
The jargon 'Java' can be broke up into THREE main components.
  1. J2SE : Java 2 Standard Edition
  2. J2EE : Java 2 Enterprise Edition.
  3. J2ME : Java 2 Micro (or Mobile) Edition.
J2SE:
J2SE is the basic form. This is the actual programming language. The other two are actually
derivatives. It's also termed as "core java" or "pure java" in some locales. Basically used to create small scale applications that runs on a CUI. Implementation of "Applets" concept helps create GUI based applications.
Note:
CUI is Character user interface. It's like the black-white DOS prompt where you can interact with the system only via characters. GUI is Graphical user interface. As the name indicates, "Graphical", you can control the applcation through mouse & clicking buttons, etc.
J2ME:
Simply put, This edition is used for creating operating systems, softwares & games for mobiles.
J2EE:
This is what we are gonna dig in & get our hands dirty. The real deal.
Till version 1.4, it is named J2EE 1.4. Ever since 1.4, it's termed JEE these days.
Latest version, 1.5 is named JEE 5. And FYI, JEE 6 is released recently.

Normal Java (termed J2SE) is a programming language.
J2EE is Not a Programming language or a Software.
J2EE is officially termed as a "Tehnology".
For me,
JEE is
  1. J2SE + Some API's.
  2. Server programming language.
  3. Used for building java - based web applications.
  4. Supports Dynamic web page creation thorugh 'JSP' & 'Servlets' concept.
NOTE:
PHP, ASP (from Microsoft) are other counterparts for JSP. These languages are scripting languages. They are all used for building dynamic web applications.

Watch the chapter as an interactive video in tamil.

 

Download Video Source: High-Quality : 16 MB

Click below arrow to download….

Part 1:

Part 2:

Our Google Group

Our Facebook Group