Enterprise Java Beans I

Download Report

Transcript Enterprise Java Beans I

Enterprise Java Beans
Part I
Kyungmin Cho
2001/04/10
Agenda
JavaBeans and Enterprise JavaBeans
EJB component model
EJB Architecture
2
JavaBeans and Enterprise JavaBeans
3
Defining Enterprise JavaBeans(1)
A server-side component architecture
Model to enable efficient development
and deployment of Java applications :
Transactional,Portable
Distributed,Multi-tier
Scalable
Secure
4
Defining Enterprise JavaBeans(2)
EJB is not JavaBeans
a Server Component specification for
Java
Separates business and system
programming
Portability of business objects
Extensibility through vendor features
5
Defining JavaBeans(1)
A client-side component architecture
Portable, platform-independent component model
written in the java programming language
Acts as a bridge between proprietary component
models
Provides a seamless and powerful means for
developers to build components that run in
ActiveX container applications
6
Defining JavaBeans(2)
7
JavaBeans Vs. Enterprise JavaBeans(1)
JavaBeans
EJB
Can be either visible
or non-visible
Client > Server
Java.bean.*
Intra-processor
Easier to develop than
EJB
Are decidedly non-visible,
remote objects
Server
Javax.ejb.*
Inter-processor
More difficult to develop
than JavaBeans
8
JavaBeans Vs. Enterprise JavaBeans(2)
Client
Server
Java Beans
Container
Java Beans
Java Beans
EJB1
Database
EJB2
Existing
application
Client
Java Beans
Enterprise information
Services
EJB3
Java Beans
9
Server manages
resources such
as threads,
connection pooling,
caching, and
state management
Agenda
JavaBeans and Enterprise JavaBeans
EJB component model
EJB Architecture
10
EJB component model
11
What is component?
Components are made by assembling
objects.
12
Component System
Component system is fundamental for
assembling and managing components.
13
Client component
Component = button, list, spread sheet, etc.
Container = window, form, etc.
14
Server component(1)
Component
Interface is separated from implementation.
Container
Manages message-passing between client
and component
Automatically carry out standard
infrastructure services such as transaction
and security, etc.
15
Server component(2)
16
Agenda
JavaBeans and Enterprise JavaBeans
EJB component model
EJB Architecture
What can we do with EJB?
17
EJB Architecture
18
EJB Design Goals
Simplify development/deployment of
distributed applications
Achieve broad industry acceptance
The right expert focuses on the right job
Platform independent and protocol
neutral
Enable development of portable
components - Truly enable reuse
19
EJB Architecture
20
What Is Special About EJBs?
Learn once
Write Once, Run Anywhere TM
Portable and interoperable
Flexible and extensible
Scalable
Easier to write distributed applications
Transaction management
CORBA compatible
21
EJB Architecture Roles
Bean provider
Container provider
Server provider
Application assembler
Deployer
System administrator
22
Application Life Cycle
23
EJB component feature(1)
Include business logic
Produce and manage instance at run time
Can be customized by editing environment entry.
Service information is separated from EJB class.
This makes Service information to be managed by
tools when assembling and deploying application.
Client can access EJB through container.
24
EJB component feature(2)
If EJB uses services which are defined in
EJB specification, EJB can be deployed in
all EJB containers.
EJB don’t need recompiling and editing
source code.
25
EJB Server(1)
Provides System Services
Transaction support
Database access
System resource
Namespace
Implementations
Middleware servers
Application servers
Database servers
26
EJB Server(2)
Supplies containers for EJBs
API between server and container is
currently vendor specific
Server could provide several container
types to provide various extended
services to different beans
27
EJB container(1)
Currently provided by EJB Server
EJB access to server resource through
standard API
May Contain one or multiple classes
Tools for EJB creation and deployment
28
EJB container(2)
Some standard services
Persistence
EJB instance creation & location
Namespace
Transaction control
Swapping
Security
Custom services
Application-specific
Bridge to existing systems
29