Java EE and Java SE


Differences between Java EE and Java SE
and
Java technology is both a programming language and a platform. The Java programming language is a high-level object-oriented language that has a particular syntax and style. A Java platform is a particular environment in which Java programming language applications run.
There are several Java platforms. Many developers, even long-time Java programming language developers, do not understand how the different platforms relate to each other.
The Java Programming Language Platforms
There are three platforms of the Java programming language:
  • Java Platform, Standard Edition (Java SE)
  • Java Platform, Enterprise Edition (Java EE)
  • Java Platform, Micro Edition (Java ME)
All Java platforms consist of a Java Virtual Machine (VM) and an application programming interface (API). The Java Virtual Machine is a program, for a particular hardware and software platform, that runs Java applications. An API is a collection of software components that you can use to create other software components or applications. Each Java platform provides a virtual machine and an API, and this allows applications written for that platform to run on any compatible system with all the advantages of the Java programming language: platform-independence, power, stability, ease-of-development, and security.
and
Java SE
and
When most people think of the Java programming language, they think of the Java SE API. Java SE's API provides the core functionality of the Java programming language. It defines everything from the basic types and objects of the Java programming language to high-level classes that are used for networking, security, database access, graphical user interface (GUI) development, and XML parsing.
In addition to the core API, the Java SE platform consists of a virtual machine, development tools, deployment technologies, and other class libraries and toolkits commonly used in Java applications.
and
Java EE
and
The Java EE platform is built on top of the Java SE platform. Java EE provides an API and runtime environment for developing and running large-scale, multi-tiered, scalable, reliable, and secure network applications.
and
Java ME
and
The Java ME platform provides an API and a small-footprint virtual machine for running Java programming language applications on small devices, like cellular phones. The API is a subset of the Java SE API, along with special class libraries useful for small device application development. Java ME applications are often clients of Java EE application services.
Overview of Enterprise Applications
This section describes enterprise applications and how they are designed and developed.
As stated above, the Java EE platform is designed to help developers create large-scale, multi-tiered, scalable, reliable, and secure network applications. A shorthand name for such applications is "enterprise applications," so called because these applications are designed to solve the problems encountered by large enterprises. Enterprise applications are not only useful for large corporations, agencies, and governments, however. The benefits of an enterprise application are helpful, even essential, for individual developers and small organizations in an increasingly networked world.
The features that make enterprise applications powerful, like security and reliability, often make these applications complex. The Java EE platform is designed to reduce the complexity of enterprise application development by providing a development model, API, and runtime environment that allows developers to concentrate on functionality.
and
Tiered Applications
and
In a multi-tiered application, the functionality of the application is separated into isolated functional areas, called tiers. Typically, multi-tiered applications have a client tier, a middle tier, and a data tier (often called the enterprise information systems tier). The client tier consists of a client program that makes requests to the middle tier. The middle tier's business functions handle client requests and process application data, storing it in a permanent datastore in the data tier.
Java EE application development concentrates on the middle tier to make enterprise application management easier, more robust, and more secure.
and
The Client Tier
and
The client tier consists of application clients that access a Java EE server and that are usually located on a different machine from the server. The clients make requests to the server. The server processes the requests and returns a response back to the client. Many different types of applications can be Java EE clients, and they are not always, or even often Java applications. Clients can be a web browser, a stand-alone application, or other servers, and they run on a different machine from the Java EE server.
and
The Web Tier
and
The web tier consists of components that handle the interaction between clients and the business tier. Its primary tasks are the following:
  • Dynamically generate content in various formats for the client.
  • Collect input from users of the client interface and return appropriate results from the components in the business tier.
  • Control the flow of screens or pages on the client.
  • Maintain the state of data for a user's session.
  • Perform some basic logic and hold some data temporarily in JavaBeans components.
The following Java EE technologies are used in the web tier in Java EE applications:
Table 2-1
Technology
Purpose
Servlets
Java programming language classes that dynamically process requests and construct responses, usually for HTML pages
JavaServer Pages (JSP)
Text-based documents that are compiled into servlets and define how dynamic content can be added to static pages, such as HTML pages.
JavaServer Faces technology
A user-interface component framework for web applications that allows you to include UI components (such as fields and buttons) on a page, convert and validate UI component data, save UI component data to server-side data stores, and maintain component state.
JavaServer Pages Standard Tag Library
A tag library that encapsulates core functionality common to JSP pages
JavaBeans Components
Objects that act as temporary data stores for the pages of an application

and

The business tier consists of components that provide the business logic for an application. Business logic is code that provides functionality to a particular business domain, like the financial industry, or an e-commerce site. In a properly designed enterprise application, the core functionality exists in the business tier components.
and
The following Java EE technologies are used in the business tier in Java EE applications:
  • Enterprise JavaBeans (enterprise bean) components
  • JAX-WS web service endpoints
  • Java Persistence API entities

Enterprise Informations Systems Tier

The enterprise information systems (EIS) tier consists of database servers, enterprise resource planning systems, and other legacy data sources, like mainframes. These resources typically are located on a separate machine than the Java EE server, and are accessed by components on the business tier.
and
The following Java EE technologies are used to access the EIS tier in Java EE applications:
  • The Java Database Connectivity API (JDBC)
  • The Java Persistence API
  • The J2EE Connector Architecture
  • The Java Transaction API (JTA)
DOTNUTSHELL can design and implement robust n-tier applications written in Java.
More on Java can be found at
http://java.sun.com/javaee/5/docs/firstcup/doc/p3.html#gcrlo

Home | Privacy Policy | Site Map | Links | Company | Contact Us | Arena           

We provide cutting edge software development, consultancy and web design services            

There are currently 639 user(s) with 40685 hits.