Hi
To return to the origins, Java was not conceived as a dedicated language
for business applications (like Cobol), but rather as a general-purpose
language (like Pascal - to perpetuate the analogy). But there is a big
advantage to use Java for business applications because of its
portability: when you migrate to another platform, you can still run
your old application as long as a Java virtual machine exists on the new
platform.
Data is better represented in Java when it fits classes. JavaBeans are
Java classes that store data. A simple application can read data from a
database, put it in some JavaBeans and write it back to the database for
persistence if the use have modified the content of some JavaBean.
In good old times, when memory was expensive and computers were slow,
this schema was very slow, unless the application was very light.
Enterprise class applications need something better: Enterprise Java
Beans (EJB) instead of simple JavaBeans.
EJBs are classes that live and "swim" in a "EJB container" (in
connection with the database) on some far away centralized server. The
user desktop can access their data remotely. With a solid hardware
server and a software "application server", including an "EJB
container", ensuring the access to the database and running the business
logic, and a client application that uses the data but runs only the
user interface triggers, performances were better. But also other
benefits were noticed: the separation between the business logic and the
user interface lead to better structured (and easier maintained) programs.
There is another approach: the Web. Have a HTTP server connected to a
"servlet container", then run some Java code in the "servlet container"
that dynamically generate HTML pages. In this case, the user's desktop
is not overloaded (all it has to do is to display the HTML page in some
browser). The "servlet container" is also an "application server" (as it
remotely executes some code), but it is different from the former one.
Of course, it can directly access data from a database or interact with
a (optionally remote) "EJB container" that contains the business logic.
One of the mostly used "servlet container" is "Catalina", provided by
the Apache foundation. The Apache Tomcat server bundles Catalina servlet
container and Coyote HTTP server (from the Apache foundation too).
Apache Tomcat has anything one can need to build Web based business
applications except for the EJB container.
For the second kind of application server, you can find Open Source as
well as commercial ones. The lot includes: Glassfish (Open Source,
bundled with NetBeans, a reference for the standards), JBoss, WebSphere,
WebLogic and so on. Each one contain an EJB container. Typically, they
also include a servlet container (some of them include the Catalina
servlet container) and an HTTP server.
Both first kind and second kind application servers offer supplementary
services, such as security services and pooled database connections.
So, if you wish, you can create different kind of applications:
-- Simple desktop applications, using just simple JavaBeans and a JDBC
database connection. There are loads of commercial (or free)
applications like this, including Open Office and Oracle Enterprise
Manager (or what ever is the name of the management console for the
Oracle database system)
-- Light client applications, using a second kind server (the one
containing a "servlet container"), such as Tomcat, Glassfish, WebSphere,
and so on. Many companies use an embedded Tomcat server, that silently
installs on your computer in order to offer you some tools that display
in the Web browser. I don't have an example under my hat, but I bet you
already encountered this kind of application.
-- 3-Tiers applications, using the first kind of server (the one
containing an "EJB container"), such as any one already enumerated
except for Tomcat. This is the case for some big, enterprise class
business applications.
Now, the Javapassion courses cover all those topics (as I could see). To
make simple: the Java EE Programming Basics deals mainly with
applications using the servlet containers. The examples use the
Glassfish server (a good occasion to discover it), but most of them
don't need more than the Tomcat server; the Advanced Java EE Programming
extends the experience to the "EJB containers" programming.
Hope it helps
mihai
Ice-Man a écrit :
That's a plattiform especifyed by Sun for development of Web or
Web+Enterprise Applications.
No matter what Sun means a JavaEE container is (limiting it to only to
EJB full suport), you freelly can make your own ApplicationServer
using a Container (middleware) FrameWork, like Spring Framework, and a
Web Container, just like Tomcat.
Sun always want to alegate a JavaEE container must mandatory fully
suport EJB, i.e., be also a EJB container. But, in my mind, u never
must use EJB to develop a Enterprise/Corporation App.., unless u
really want and/or need it.
(Obs.: EJB is /Componetization/ inicative of Sun.)
Best reguards,
Ice-Man
2010/3/10 Felipe Micaroni <felipe.micar...@comperantime.com
<mailto:felipe.micar...@comperantime.com>>
--
You received this message because you are subscribed to the Google
Groups "Java EE (J2EE) Programming with Passion!" group.
To post to this group, send email to
java-ee-j2ee-programming-with-passion@googlegroups.com
<mailto:java-ee-j2ee-programming-with-passion@googlegroups.com>
To unsubscribe from this group, send email to
java-ee-j2ee-programming-with-passion+unsubscr...@googlegroups.com
<mailto:java-ee-j2ee-programming-with-passion%2bunsubscr...@googlegroups.com>
For more options, visit this group at
http://groups.google.com/group/java-ee-j2ee-programming-with-passion?hl=en?hl=en
--
Derlon
Ao encaminhar esta mensagem (ou qualquer 1 q se destine a mim tb), não
se esqueça de retirar o meu nome e o meu End. de E-Mail e coloque
todos os End.s dos destinatários em Cópia Oculta - CcO (BCc). Ajude a
combater o Spam!
--
You received this message because you are subscribed to the Google
Groups "Java EE (J2EE) Programming with Passion!" group.
To post to this group, send email to
java-ee-j2ee-programming-with-passion@googlegroups.com
To unsubscribe from this group, send email to
java-ee-j2ee-programming-with-passion+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/java-ee-j2ee-programming-with-passion?hl=en?hl=en
To unsubscribe from this group, send email to
java-ee-j2ee-programming-with-passion+unsubscribegooglegroups.com or
reply to this email with the words "REMOVE ME" as the subject.
--
You received this message because you are subscribed to the Google
Groups "Java EE (J2EE) Programming with Passion!" group.
To post to this group, send email to
java-ee-j2ee-programming-with-passion@googlegroups.com
To unsubscribe from this group, send email to
java-ee-j2ee-programming-with-passion+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/java-ee-j2ee-programming-with-passion?hl=en?hl=en
To unsubscribe from this group, send email to
java-ee-j2ee-programming-with-passion+unsubscribegooglegroups.com or reply to this email
with the words "REMOVE ME" as the subject.