summer training java
DESCRIPTION
CETPA INFOTECH PVT LTD is one of the IT education and training service provider brands of India that is preferably working in 3 most important domains. It includes IT Training services, software and embedded product development and consulting services. http://www.cetpainfotech.comTRANSCRIPT
![Page 1: Summer training java](https://reader038.vdocuments.us/reader038/viewer/2022102710/54640d2faf795970018b5ddf/html5/thumbnails/1.jpg)
![Page 2: Summer training java](https://reader038.vdocuments.us/reader038/viewer/2022102710/54640d2faf795970018b5ddf/html5/thumbnails/2.jpg)
What is J2EE?
![Page 3: Summer training java](https://reader038.vdocuments.us/reader038/viewer/2022102710/54640d2faf795970018b5ddf/html5/thumbnails/3.jpg)
ChallengesPortabilityDiverse EnvironmentsTime-to-marketCore CompetenceAssemblyIntegration
Key Technologies
J2SE™
J2EE™
JMS
Servlet
JSP
Connector
XML
Data Binding
XSLT
Products
App Servers
Web Servers
Components
Databases
Object to DB tools
LegacySystems
Databases
TP Monitors
EIS Systems
![Page 4: Summer training java](https://reader038.vdocuments.us/reader038/viewer/2022102710/54640d2faf795970018b5ddf/html5/thumbnails/4.jpg)
Open and standard based platform for developing, deploying and managing n-tier, Web-enabled, server-centric, and
component-based enterprise applications
![Page 5: Summer training java](https://reader038.vdocuments.us/reader038/viewer/2022102710/54640d2faf795970018b5ddf/html5/thumbnails/5.jpg)
High-EndServer
Java Technology Enabled Desktop
WorkgroupServer
Java Technology Enabled Devices
![Page 6: Summer training java](https://reader038.vdocuments.us/reader038/viewer/2022102710/54640d2faf795970018b5ddf/html5/thumbnails/6.jpg)
OptionalPackages
Java 2Enterprise
Edition(J2EE)
Java 2StandardEdition(J2SE)
JVM
Java Card APIs
CardVM
OptionalPackages
Personal Basis Profile
Personal Profile
Foundation Profile
CDC
MIDP
CLDC
KVM
Java 2 Platform Micro Edition(J2METM)
* Under development in JCP
![Page 7: Summer training java](https://reader038.vdocuments.us/reader038/viewer/2022102710/54640d2faf795970018b5ddf/html5/thumbnails/7.jpg)
Use "component and container" model in which container provides system services in a well-defined and as industry standard
J2EE is that standard that also provides portability of code because it is based on Java technology and standard-based Java programming APIs
![Page 8: Summer training java](https://reader038.vdocuments.us/reader038/viewer/2022102710/54640d2faf795970018b5ddf/html5/thumbnails/8.jpg)
Why J2EE?
![Page 9: Summer training java](https://reader038.vdocuments.us/reader038/viewer/2022102710/54640d2faf795970018b5ddf/html5/thumbnails/9.jpg)
Can use any J2EE implementation for development and deployment Use production-quality standard implementation
which is free for development/deployment Use high-end commercial J2EE products for
scalability and fault-tolerance
Vast amount of J2EE community resources Many J2EE related books, articles, tutorials, quality
code you can use, best practice guidelines, design patterns etc.
Can use off-the-shelf 3rd-party business components
![Page 10: Summer training java](https://reader038.vdocuments.us/reader038/viewer/2022102710/54640d2faf795970018b5ddf/html5/thumbnails/10.jpg)
Vendors work together on specifications and then compete in implementations In the areas of Scalability, Performance,
Reliability, Availability, Management and development tools, and so on
Freedom to innovate while maintaining the portability of applications
Do not have create/maintain their own proprietary APIs
![Page 11: Summer training java](https://reader038.vdocuments.us/reader038/viewer/2022102710/54640d2faf795970018b5ddf/html5/thumbnails/11.jpg)
Application portability Many implementation choices are
possible based on various requirements Price (free to high-end), scalability (single CPU
to clustered model), reliability, performance, tools, and more
Best of breed of applications and platforms Large developer pool
![Page 12: Summer training java](https://reader038.vdocuments.us/reader038/viewer/2022102710/54640d2faf795970018b5ddf/html5/thumbnails/12.jpg)
J2EE APIs &Technologies
![Page 13: Summer training java](https://reader038.vdocuments.us/reader038/viewer/2022102710/54640d2faf795970018b5ddf/html5/thumbnails/13.jpg)
J2SE 1.4 (improved) JAX-RPC (new) Web Service for
J2EE J2EE Management J2EE Deployment JMX 1.1 JMS 1.1 JTA 1.0
Servlet 2.4 JSP 2.0 EJB 2.1 JAXR Connector 1.5 JACC JAXP 1.2 JavaMail 1.3 JAF 1.0
![Page 14: Summer training java](https://reader038.vdocuments.us/reader038/viewer/2022102710/54640d2faf795970018b5ddf/html5/thumbnails/14.jpg)
JAX-WS 2.0 & JSR 181 Java Persistence EJB 3.0 JAXB 2.0 JavaSever Faces 1.2 – new to Platform JSP 2.1 – Unification w/ JSF 1.2 StAX – Pull Parser – new to Platform
![Page 15: Summer training java](https://reader038.vdocuments.us/reader038/viewer/2022102710/54640d2faf795970018b5ddf/html5/thumbnails/15.jpg)
![Page 16: Summer training java](https://reader038.vdocuments.us/reader038/viewer/2022102710/54640d2faf795970018b5ddf/html5/thumbnails/16.jpg)
Java™ objects which extend the functionality of a HTTP server
Dynamic contents generation Better alternative to CGI, NSAPI, ISAPI,
etc. Efficient Platform and server independent Session management Java-based
![Page 17: Summer training java](https://reader038.vdocuments.us/reader038/viewer/2022102710/54640d2faf795970018b5ddf/html5/thumbnails/17.jpg)
CGIBased
Webserver
CGIBased
Webserver
Request CGI1Child for CGI1
CGIBased
Webserver
Servlet Based Webserver
JVM
Request CGI1Child for CGI1
Request Servlet1
CGIBased
Webserver
Servlet Based Webserver
JVMServlet1
Request CGI1Child for CGI1
Request CGI2
Request Servlet1
CGIBased
WebserverChild for CGI2
Servlet Based Webserver
JVMServlet1
Request CGI1Child for CGI1
Request CGI2
Request Servlet1
Request Servlet2
CGIBased
WebserverChild for CGI2
Servlet Based Webserver
JVMServlet1
Servlet2
Request CGI1Child for CGI1
Request CGI2
Request CGI1
Request Servlet1
Request Servlet2
CGIBased
WebserverChild for CGI2
Child for CGI1
Servlet Based Webserver
JVMServlet1
Servlet2
Request CGI1Child for CGI1
Request CGI2
Request CGI1
Request Servlet1
Request Servlet2
Request Servlet1
CGIBased
WebserverChild for CGI2
Child for CGI1
Servlet Based Webserver
JVMServlet1
Servlet2
Request CGI1Child for CGI1
![Page 18: Summer training java](https://reader038.vdocuments.us/reader038/viewer/2022102710/54640d2faf795970018b5ddf/html5/thumbnails/18.jpg)
Enables separation of business logic from presentation Presentation is in the form of HTML or
XML/XSLT Business logic is implemented as Java
Beans or custom tags Better maintainability, reusability
Extensible via custom tags Builds on Servlet technology
![Page 19: Summer training java](https://reader038.vdocuments.us/reader038/viewer/2022102710/54640d2faf795970018b5ddf/html5/thumbnails/19.jpg)
![Page 20: Summer training java](https://reader038.vdocuments.us/reader038/viewer/2022102710/54640d2faf795970018b5ddf/html5/thumbnails/20.jpg)
A server-side component technology Easy development and deployment of
Java technology-based application that are: Transactional, distributed, multi-tier, portable,
scalable, secure, …
![Page 21: Summer training java](https://reader038.vdocuments.us/reader038/viewer/2022102710/54640d2faf795970018b5ddf/html5/thumbnails/21.jpg)
● Leverages the benefits of component-model on the server side
● Separates business logic from system code Container provides system services
● Provides framework for portable components Over different J2EE-compliant servers Over different operational environments
● Enables deployment-time configuration Deployment descriptor
![Page 22: Summer training java](https://reader038.vdocuments.us/reader038/viewer/2022102710/54640d2faf795970018b5ddf/html5/thumbnails/22.jpg)
![Page 23: Summer training java](https://reader038.vdocuments.us/reader038/viewer/2022102710/54640d2faf795970018b5ddf/html5/thumbnails/23.jpg)
Enterprise JavaBeans
Entity Bean Message-Driven Bean
Synchronous communication Asynchronous communication
Stateless Stateful
Bean managedPersistence
(BMP)
Container managedPersistence
(CMP)
Session Bean
![Page 24: Summer training java](https://reader038.vdocuments.us/reader038/viewer/2022102710/54640d2faf795970018b5ddf/html5/thumbnails/24.jpg)
![Page 25: Summer training java](https://reader038.vdocuments.us/reader038/viewer/2022102710/54640d2faf795970018b5ddf/html5/thumbnails/25.jpg)
Messaging systems (MOM) provide De-coupled communication Asynchronous communication Plays a role of centralized post office
Benefits of Messaging systems Flexible, Reliable, Scalable communication
systems Point-to-Point, Publish and Subscribe JMS defines standard Java APIs to
messaging systems
![Page 26: Summer training java](https://reader038.vdocuments.us/reader038/viewer/2022102710/54640d2faf795970018b5ddf/html5/thumbnails/26.jpg)
![Page 27: Summer training java](https://reader038.vdocuments.us/reader038/viewer/2022102710/54640d2faf795970018b5ddf/html5/thumbnails/27.jpg)
Defines standard API for integrating J2EE technology with EIS systems CICS, SAP, PeopleSoft, etc.
Before Connector architecture, each App server has to provide an proprietary adaptor for each EIS system m (# of App servers) x n (# of EIS's) Adaptors
With Connector architecture, same adaptor works with all J2EE compliant containers 1 (common to all App servers) x n (# of EIS's)
Adaptors
![Page 28: Summer training java](https://reader038.vdocuments.us/reader038/viewer/2022102710/54640d2faf795970018b5ddf/html5/thumbnails/28.jpg)
AppServer1
AppServer
AppServer3
AppServer2
SAP
EIS4
EIS3
m n
EIS2
![Page 29: Summer training java](https://reader038.vdocuments.us/reader038/viewer/2022102710/54640d2faf795970018b5ddf/html5/thumbnails/29.jpg)
![Page 30: Summer training java](https://reader038.vdocuments.us/reader038/viewer/2022102710/54640d2faf795970018b5ddf/html5/thumbnails/30.jpg)
Pluggable authentication framework Userid/password Smartcard Kerberos Biometric
Application portability regardless of authentication schemes underneath JAAS provides authentication scheme independent
API Authentication schemes are specified Login
configuration file, which will be read by JAAS
![Page 31: Summer training java](https://reader038.vdocuments.us/reader038/viewer/2022102710/54640d2faf795970018b5ddf/html5/thumbnails/31.jpg)
![Page 32: Summer training java](https://reader038.vdocuments.us/reader038/viewer/2022102710/54640d2faf795970018b5ddf/html5/thumbnails/32.jpg)
![Page 33: Summer training java](https://reader038.vdocuments.us/reader038/viewer/2022102710/54640d2faf795970018b5ddf/html5/thumbnails/33.jpg)
Java Naming and Directory Interface
Utilized by J2EE applications to locate resources and objects in portable fashion Applications use symbolic names to find
object references to resources via JNDI The symbolic names and object references
have to be configured by system administrator when the application is deployed.
![Page 34: Summer training java](https://reader038.vdocuments.us/reader038/viewer/2022102710/54640d2faf795970018b5ddf/html5/thumbnails/34.jpg)
Provides standard Java programming API to relational database Uses SQL
Vendors provide JDBC compliant driver which can be invoked via standard Java programming API
![Page 35: Summer training java](https://reader038.vdocuments.us/reader038/viewer/2022102710/54640d2faf795970018b5ddf/html5/thumbnails/35.jpg)
Management applications should be able to discover and interpret the managed data of any J2EE platform
Single management platform can manage multiple J2EE servers from different vendors
Management protocol specifications ensure a uniform view by SNMP and WBEM management stations
Leverages JMX
![Page 36: Summer training java](https://reader038.vdocuments.us/reader038/viewer/2022102710/54640d2faf795970018b5ddf/html5/thumbnails/36.jpg)
Tools J2EE PlatformsStandard
Deployment API(Universal Remote)
IDEs
Vendor Deploy Tools
Management Tools
![Page 37: Summer training java](https://reader038.vdocuments.us/reader038/viewer/2022102710/54640d2faf795970018b5ddf/html5/thumbnails/37.jpg)
J2EE App ServerApp
JMX
JMX
JMX defacto
Dynamic DeploymentJMX API into the J2EE 1.4 platform
A single technology for the J2EE platform
![Page 38: Summer training java](https://reader038.vdocuments.us/reader038/viewer/2022102710/54640d2faf795970018b5ddf/html5/thumbnails/38.jpg)
J2EE is an End-to-EndArchitecture
![Page 39: Summer training java](https://reader038.vdocuments.us/reader038/viewer/2022102710/54640d2faf795970018b5ddf/html5/thumbnails/39.jpg)
Web Tier EJB Tier
![Page 40: Summer training java](https://reader038.vdocuments.us/reader038/viewer/2022102710/54640d2faf795970018b5ddf/html5/thumbnails/40.jpg)
J2EE J2EE Component & ContainerComponent & Container
ArchitectureArchitecture
![Page 41: Summer training java](https://reader038.vdocuments.us/reader038/viewer/2022102710/54640d2faf795970018b5ddf/html5/thumbnails/41.jpg)
JN
DI
J2SE
JM
S
RM
I/IIO
P
JD
BC
Database
AppClient
App Client Container
HTTP/HTTPS
J2SE
RMI
J2SE
JN
DI
JM
S
RM
I/IIO
P
JD
BC
JT
A JavaMail
JAF JN
DI
JM
S
RM
I/IIO
P
JD
BC
JT
A
JavaMail
JAF
HTTP/HTTPS
Applet Container
Applet JSP Servlet EJB
Web Container EJB Container
RMI
J2SE
![Page 42: Summer training java](https://reader038.vdocuments.us/reader038/viewer/2022102710/54640d2faf795970018b5ddf/html5/thumbnails/42.jpg)
ComponentsHandle
Concurrency Security Availability Scalability Persistence Transaction Life-cycle
management Management
Presentation Business Logic
ContainersHandle
![Page 43: Summer training java](https://reader038.vdocuments.us/reader038/viewer/2022102710/54640d2faf795970018b5ddf/html5/thumbnails/43.jpg)
Containers do their work invisibly– No complicated APIs
– They control by interposition
Containers implement J2EE– Look the same to components
– Vendors making the containers have great freedom to innovate
![Page 44: Summer training java](https://reader038.vdocuments.us/reader038/viewer/2022102710/54640d2faf795970018b5ddf/html5/thumbnails/44.jpg)
J2EE ApplicationAnatomies
![Page 45: Summer training java](https://reader038.vdocuments.us/reader038/viewer/2022102710/54640d2faf795970018b5ddf/html5/thumbnails/45.jpg)
DB & EISResources
Browser
Stand-alone
Web Server EJB Server
Web Server EJB Server
![Page 46: Summer training java](https://reader038.vdocuments.us/reader038/viewer/2022102710/54640d2faf795970018b5ddf/html5/thumbnails/46.jpg)
● 4-tier J2EE applications– HTML client, JSP/Servlets, EJB, JDBC/Connector
● 3-tier J2EE applications– HTML client, JSP/Servlets, JDBC
● 3-tier J2EE applications– EJB standalone applications, EJB,
JDBC/Connector
● B2B Enterprise applications– J2EE platform to J2EE platform through the
exchange of JMS or XML-based messages
![Page 47: Summer training java](https://reader038.vdocuments.us/reader038/viewer/2022102710/54640d2faf795970018b5ddf/html5/thumbnails/47.jpg)
● Depends on several factors Requirements of applications Availability of EJB tier Availability of developer resource