Enterprise javabeans
This presentation is the property of its rightful owner.
Sponsored Links
1 / 87

Enterprise JavaBeans PowerPoint PPT Presentation


  • 88 Views
  • Uploaded on
  • Presentation posted in: General

Enterprise JavaBeans. Lesson 1: Introduction to Server-Side Component Software. Objectives. Define client-server and multi-tier architecture Discuss the benefits and issues of distributed architectures Define software components

Download Presentation

Enterprise JavaBeans

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


Enterprise javabeans

Enterprise JavaBeans


Lesson 1 introduction to server side component software

Lesson 1:Introduction to Server-Side Component Software


Objectives

Objectives

  • Define client-server and multi-tier architecture

  • Discuss the benefits and issues of distributed architectures

  • Define software components

  • Discuss server-side component architecture and architecture solutions

  • Define J2EE technologies

  • Define EJB technology


Client server and multi tiered architectures

Client-Server andMulti-Tiered Architectures

  • Scalability

  • Extensibility

  • Security

  • Issues concerning distributed architectures

    • Complexity

    • Communication/bandwidth

    • Maintenance costs


Centralized mainframe architecture

CentralizedMainframe Architecture


Two tier architecture

Two-TierArchitecture


Three tier architecture

Three-TierArchitecture


Software components

SoftwareComponents

  • Component architectures

    • Component development tools

    • Container

    • Maintenance deployment tools


Component architecture solutions

ComponentArchitecture Solutions

  • .NET Enterprise Architecture

  • CORBA

  • J2EE


J2ee technologies

EJB

RMI/RMI-IIOP

JNDI

JDBC

JTA/JTS

JMS

JSP

IDL

JavaMail

Connectors

XML

J2EETechnologies


Enterprise javabeans1

EnterpriseJavaBeans

  • Differences between JavaBeans and Enterprise JavaBeans

  • EJB development tasks

    • J2EE product provider

    • Bean developer

    • Application assembler

    • Deployer

    • System administrator

    • Tool provider


Summary

Summary

  • Define client-server and multi-tier architecture

  • Discuss the benefits and issues of distributed architectures

  • Define software components

  • Discuss server-side component architecture and architecture solutions

  • Define J2EE technologies

  • Define EJB technology


Lesson 2 overview of the enterprise javabeans framework

Lesson 2:Overview of the Enterprise JavaBeans Framework


Objectives1

Objectives

  • Define an EJB server’s main components

  • Discuss EJB and client interaction

  • Identify EJB container services

  • Describe home objects and EJB objects

  • Compare session beans and entity beans

  • Define a deployment descriptor

  • Identify the EJB-JAR file


Ejb architecture

EJBArchitecture

  • Primary components

    • EJB-compliant server

    • EJB-compliant container

    • Home object (bean factory)

    • EJB object (remote interface)

    • EJB


Example of ejb architecture

Example ofEJB Architecture


Client interaction with enterprise javabeans

Client Interactionwith Enterprise JavaBeans


Ejb container services

EJBContainer Services

  • Distributed transaction management

  • Persistence

  • Security

  • Component resource and life cycle management

  • Remote accessibility

  • Transparent location of components

  • Identification of components


The ejb home object

The EJBHome Object

  • Location transparency


The ejb object

TheEJB Object

Stubs

Skeletons


Types of enterprise javabeans

Types ofEnterprise JavaBeans

  • Session beans

    • Stateful

    • Stateless

  • Entity beans


Deployment descriptors

DeploymentDescriptors

  • An XML document that describes the properties of an EJB


The ejb jar file

TheEJB-JAR File

  • Contains the class files for a bean, its home and remote interfaces, and the deployment descriptors


Summary1

Summary

  • Define an EJB server’s main components

  • Discuss EJB and client interaction

  • Identify EJB container services

  • Describe home objects and EJB objects

  • Compare session beans and entity beans

  • Define a deployment descriptor

  • Identify the EJB-JAR file


Lesson 3 creating session beans

Lesson 3:Creating Session Beans


Objectives2

Objectives

  • Define the methods of the SessionBean interface

  • Describe the EJBContext and the SessionContext interfaces

  • Contrast stateful and stateless session beans

  • Explain how to write business methods for a session bean

  • Discuss the enterprise bean’s life cycle


Objectives cont d

Objectives (cont’d)

  • Create a session bean

  • Define the EJBHome and EJBObject interfaces and their methods

  • Discuss the superclass for the home and remote interfaces

  • Describe system and application exceptions

  • Deploy and connect to a session bean


Creating the enterprise bean class

Creating theEnterprise Bean Class

  • ejbCreate methods

  • The SessionBean interface

  • The EJBContext interface

  • The SessionContext interface


Stateless and stateful session beans

Stateless andStateful Session Beans

  • Stateless session beans

    • Do not keep track of any information from one method call to the next

  • Stateful session beans

    • Can change their state during a conversation with a client


Writing business methods for an enterprise bean

Writing Business Methods for an Enterprise Bean

  • Each EJB must declare the business methods that define the work that the EJB is designed to perform


The home interface

The Home Interface

  • Extends EJBHome

  • Provides mechanisms to create and remove EJB components


The ejb object1

The EJB Object

  • Extends the EJBObject interface


Exceptions in ejb

Exceptions in EJB

  • System exceptions

  • Application exceptions


Example a session bean

Example:A Session Bean

  • The Teller bean class

  • The Teller remote interface

  • The Teller home interface


The library application

The LibraryApplication

  • The Book entity bean

  • The Patron entity bean

  • The CheckOutRecord entity bean

  • The CheckOut session bean

  • The CheckIn session bean


Librarydb schema

LibraryDBSchema


Introduction to ejb deployment

Introduction toEJB Deployment

  • The deployment descriptor

    • DD XML tags

  • Environment data

    • Environment property XML tags

    • Accessing environment data

  • Using bean references

    • EJB reference XML tags

    • Using the EJB reference

  • Using resource factories

    • Factory resource XML tags


Additional deployment concepts

AdditionalDeployment Concepts

  • Assembler/deployer roles with the deployment descriptor

  • EJB deployment in an EJB server


Summary2

Summary

  • Define the methods of the SessionBean interface

  • Describe the EJBContext and the SessionContext interfaces

  • Contrast stateful and stateless session beans

  • Explain how to write business methods for a session bean

  • Discuss the enterprise bean’s life cycle


Summary cont d

Summary (cont’d)

  • Create a session bean

  • Define the EJBHome and EJBObject interfaces and their methods

  • Discuss the superclass for the home and remote interfaces

  • Describe system and application exceptions

  • Deploy and connect to a session bean


Lesson 4 entity beans

Lesson 4: Entity Beans


Objectives3

Objectives

  • Discuss entity beans and their persistence management techniques

  • Identify the methods of the EntityBean and EntityContext interfaces

  • Define primary keys and their use

  • Describe the mechanics involved in entity beans

  • Use finder methods

  • Write an entity bean and its required interfaces


What is an entity bean

What Is an Entity Bean?

  • The EntityBean interface

  • The EntityContext interface

  • Primary keys


Entity bean architecture

Entity BeanArchitecture

  • Creating entity beans

  • Invoking business methods on entity beans

  • Swapping entity beans

  • Invoking remove( ) on an entity bean

  • Life cycle of an entity bean instance


Life cycle of an entity bean instance

Life Cycle of anEntity Bean Instance


Bean managed persistence

Bean-ManagedPersistence

  • Using JDBC

  • Using a resource factory to connect to a database


Using resource factories

UsingResource Factories


Entity bean methods

Entity Bean Methods

  • The ejbCreate( ) method

  • The ejbPostCreate( ) method

  • The ejbRemove( ) method

  • The ejbLoad( ) method

  • The ejbStore( ) method


Using finder methods

UsingFinder Methods

  • The ejbFindByPrimaryKey( ) method

  • Multiple row finders


The remote interface

The Remote Interface

  • All remote interfaces extend javax.ejb.EJBObject


The home interface1

The Home Interface

  • The Account entity bean


Summary3

Summary

  • Discuss entity beans and their persistence management techniques

  • Identify the methods of the EntityBean and EntityContext interfaces

  • Define primary keys and their use

  • Describe the mechanics involved in entity beans

  • Use finder methods

  • Write an entity bean and its required interfaces


Lesson 5 enterprise javabeans clients

Lesson 5:Enterprise JavaBeans Clients


Objectives4

Objectives

  • Use JNDI to obtain a reference to the home object

  • Instantiate an EJB instance using the home object

  • Call an enterprise bean's business methods

  • Remove an enterprise bean

  • Write an EJB client


Using jndi

Using JNDI


Creating an ejb instance

Creatingan EJB Instance

  • Invocation of business methods


Summary4

Summary

  • Use JNDI to obtain a reference to the home object

  • Instantiate an EJB instance using the home object

  • Call an enterprise bean's business methods

  • Remove an enterprise bean

  • Write an EJB client


Lesson 6 container managed persistence

Lesson 6:Container-ManagedPersistence


Objectives5

Objectives

  • Discuss entity beans and CMP

  • Explain the benefits and disadvantages of using CMP

  • Describe the primary key as it relates to CMP

  • Define an ejbCreate() method that uses CMP

  • Write the requisite methods for an entity bean to use CMP


Introduction to container managed persistence cmp

Introduction to Container-Managed Persistence (CMP)

  • Benefits

    • Less code needed

    • Optimization techniques

    • More portable

    • Fewer bugs

  • Disadvantages

    • Less flexibility

    • Inaccessible code


The primary key

ThePrimary Key

  • Primary key class

    • Must be serializable

    • Must be of a legal value type in RMI-IIOP


Ejb methods and cmp

EJBMethods and CMP

  • ejbCreate()

  • ejbRemove()

  • ejbLoad()

  • ejbStore()

  • Other methods

  • Finder methods


The deployment descriptor

TheDeployment Descriptor

  • EJB requirements

  • DD XML tags


The deployment descriptor and cmp

The Deployment Descriptor and CMP

  • Example: A CMP entity bean

    • The EmployeeEJB bean class

    • The home interface

    • The remote interface


Summary5

Summary

  • Discuss entity beans and CMP

  • Explain the benefits and disadvantages of using CMP

  • Describe the primary key as it relates to CMP

  • Define an ejbCreate() method that uses CMP

  • Write the requisite methods for an entity bean to use CMP


Lesson 7 transactions in enterprise javabeans

Lesson 7:Transactions in Enterprise JavaBeans


Objectives6

Objectives

  • Define transactions and explain their use

  • Distinguish transaction participants

  • Define transaction properties

  • Explain the EJB transactional model

  • Describe distributed transactions

  • Define transaction isolation levels

  • Discuss EJB transaction attributes


What are transactions

What Are Transactions?

  • Operations or series of operations that are treated as single units of work

  • Transactional management


Participants in transactions

Participantsin Transactions

  • Transactional objects or applications

  • Transaction managers

  • Resources

  • Resource managers


Properties of transactions

Propertiesof Transactions

  • Atomicity

  • Consistency

  • Isolation

  • Durability


Ejb transactional models

EJBTransactional Models

  • Flat transactional model

  • Nested transactional model


Flat transactional model

FlatTransactional Model


Nested transactional model

NestedTransactional Model


Distributed transactions

DistributedTransactions

  • Two-phase commits

  • Transparent transaction control

    • Transaction context


Isolation levels

Isolation Levels

  • Strict

    • Each concurrent transaction is isolated from all other transactions

  • Nonstrict

    • Increased transactional performance

    • Possibility of corrupted data


Transactions in ejb

Transactions in EJB

  • Transaction demarcation

  • Container-managed transactions

    • Attributes

  • Defining CMT in the DD

  • Setting CMT in Deploytool


Container managed transactions

Container-Managed Transactions

  • Container-managed transaction attributes

  • Which methods require transaction attributes?

  • The setRollbackOnly( ) and getRollbackOnly( ) methods

  • Defining CMT in the DD

  • Setting CMT in Deploytool


Bean managed transactions

Bean-ManagedTransactions

  • UserTransaction interface

    • Properties

    • Methods

  • Setting BMT in the DD

  • BMT and stateful session beans

  • BMT and stateless session beans


Summary6

Summary

  • Define transactions and explain their use

  • Distinguish transaction participants

  • Define transaction properties

  • Explain the EJB transactional model

  • Describe distributed transactions

  • Define transaction isolation levels

  • Discuss EJB transaction attributes


Lesson 8 enterprise javabeans security

Lesson 8:Enterprise JavaBeans Security


Objectives7

Objectives

  • Define users in EJB security

  • Discuss principals in EJB security

  • Identify roles in EJB security

  • Describe the DD’s role in EJB security

  • Explain the EJB container’s role in EJB security


Defining users principals and roles

Defining Users,Principals and Roles

  • Overview of EJB security

    • Authentication

    • Authorization

  • Authorization in EJB code


Example users principals and roles

Example: Users,Principals and Roles


Security and the deployment descriptor

Security and the Deployment Descriptor

  • The bean developer and the DD

  • The application assembler and the DD

  • The deployer and the DD


Summary7

Summary

  • Define users in EJB security

  • Discuss principals in EJB security

  • Identify roles in EJB security

  • Describe the DD’s role in EJB security

  • Explain the EJB container’s role in EJB security


Enterprise javabeans2

Enterprise JavaBeans

  • Introduction to Server-Side Component Software

  • Overview of the Enterprise JavaBeans Framework

  • Creating Session Beans

  • Entity Beans


Enterprise javabeans3

EnterpriseJavaBeans

  • Enterprise JavaBeans Clients

  • Container-Managed Persistence

  • Transactions in Enterprise JavaBeans

  • Enterprise JavaBeans Security


  • Login