blob: 0d62b190c6cb5d659a3129a67be316a591366dcd [file] [log] [blame]
<?xml version="1.0" encoding="utf-8"?>
<!--Arbortext, Inc., 1988-2006, v.4002-->
<!DOCTYPE concept PUBLIC "-//OASIS//DTD DITA Concept//EN"
"concept.dtd">
<concept id="cjavaee5" xml:lang="en-us">
<title outputclass="id_title"><tm tmclass="special" tmowner="Sun Microsystems, Inc."
tmtype="tm" trademark="Java">Java</tm> EE 5: Overview</title>
<shortdesc outputclass="id_shortdesc">Using the <tm tmclass="special" tmowner="Sun Microsystems, Inc."
tmtype="tm" trademark="Java">Java</tm> Platform, Enterprise Edition (<tm tmclass="special"
tmowner="Sun Microsystems, Inc." tmtype="tm" trademark="Java">Java</tm> EE)
architecture, you can build distributed Web and enterprise applications. This
architecture helps you focus on presentation and application issues, rather
than on systems issues.</shortdesc>
<prolog><metadata>
<keywords><indexterm>Java EE 5</indexterm><indexterm>Oerview</indexterm></keywords>
</metadata></prolog>
<conbody>
<p>You can use the <tm tmclass="special" tmowner="Sun Microsystems, Inc."
tmtype="tm" trademark="Java">Java</tm> EE 5 tools and features to create applications
that are structured around modules with different purposes, such as Web sites
and Enterprise <tm tmclass="special" tmowner="Sun Microsystems, Inc." tmtype="tm"
trademark="JavaBeans">JavaBeans</tm> (EJB) applications. When you use EJB
3.0 components, you can create a distributed, secure application with transactional
support. When you develop applications that access persistent data, you can
use the new <tm tmclass="special" tmowner="Sun Microsystems, Inc." tmtype="tm"
trademark="Java">Java</tm> Persistence API (JPA). This standard simplifies
the creation and use of persistent entities, as well as adding new features.
For developing presentation logic, you can use technologies such as JavaServer
Pages (JSP) or JavaServer Faces (JSF).</p>
<p>Using the <tm tmclass="special" tmowner="Sun Microsystems, Inc." tmtype="tm"
trademark="Java">Java</tm> EE 5 Platform Enterprise Edition (Java EE) , you
can develop applications more quickly and conveniently than in previous versions.
The <tm tmclass="special" tmowner="Sun Microsystems, Inc." tmtype="tm" trademark="Java">Java</tm> EE
5 platform replaces <tm tmclass="special" tmowner="Sun Microsystems, Inc."
tmtype="tm" trademark="Java">Java</tm> 2 Enterprise Edition (J2EE), version
1.4. The product tools support for both versions. Java EE 5 significantly
enhances ease of use providing<ul>
<li>Reduced development time</li>
<li>Reduced application complexity</li>
<li>Improved application performance</li>
</ul></p>
<p>Java EE 5 provides a simplified programming model, including the following
tools:<ul>
<li>Inline configuration with annotations, making deployment descriptors now
optional</li>
<li>Dependency injection, hiding resource creation and lookup from application
code</li>
<li>Java persistence API (JPA) allows data management without explicit SQL
or JDBC</li>
<li>Use of plain old Java objects (POJOs) for Enterprise JavaBeans and Web
services</li>
</ul></p>
<p>Java EE 5 provides simplified packaging rules for enterprise applications:<ul>
<li>Web applications us .WAR files</li>
<li>Resource adapters use .RAR files</li>
<li>Enterprise applications use .EAR files</li>
<li>The <codeph>lib</codeph> directory contains shared .JAR files</li>
<li>A .JAR file with <codeph>Main-Class</codeph> implies an application client</li>
<li>A .JAR file with @Stateless annotation implies an EJB application</li>
<li>Many simple applications no longer require deployment descriptors, including<ul>
<li>EJB applications (.JAR files)</li>
<li>Web applications that use JSP technology only</li>
<li>Application clients</li>
<li>Enterprise applications (.EAR files)</li>
</ul></li>
</ul></p>
<p>Java EE 5 provides simplified resource access using dependency injection:<ul>
<li>In the Dependency Injection pattern, an external entity automatically
supplies an object's dependencies.<ul>
<li>The object need not request these resources explicitly</li>
</ul></li>
<li>In Java EE 5, dependency injection can be applied to all resources that
a component needs<ul>
<li>Creation and lookup of resources are hidden from application code</li>
</ul></li>
<li>Dependency injection can be applied throughout Java EE 5 technology:<ul>
<li>EJB containers</li>
<li>Web containers</li>
<li>Clients</li>
<li>Web services</li>
</ul></li>
</ul></p>
</conbody>
</concept>