J2EE Java 2 Enterprise Edition

12
1 J2EE Java 2 Enterprise Edition Rozproszone programowanie komponentowe Jakub Ratajczak

description

J2EE Java 2 Enterprise Edition. Rozproszone programowanie komponentowe Jakub Ratajczak. Bibliografia. http://java.sun.com/j2ee J2EE. Vademecum profesjonalisty. Wydanie 2 , S.Bodoff, E.Armstrong, J.Ball, D.B.Carson , Helion, 2005 - PowerPoint PPT Presentation

Transcript of J2EE Java 2 Enterprise Edition

Page 1: J2EE Java 2 Enterprise Edition

1

J2EEJava 2 Enterprise Edition

Rozproszone programowanie komponentowe

Jakub Ratajczak

Page 2: J2EE Java 2 Enterprise Edition

2

Bibliografia

• http://java.sun.com/j2ee

• J2EE. Vademecum profesjonalisty. Wydanie 2, S.Bodoff, E.Armstrong, J.Ball, D.B.Carson, Helion, 2005

• J2EE. Wzorce projektowe. Wydanie 2, D.Alur, J.Crupi, D.Malks, Helion, 2004

Page 3: J2EE Java 2 Enterprise Edition

3

Wstęp - Java 2

• Standard Edition (J2SE)– lang, io, math, util, text, sql, awt, rmi, crypto,

sound, swing, xml, corba, security

• Micro Edition (J2ME)– Connected Limited Device Configuration

(CLDC), Mobile Information Device Profile (MIDP)

• Enterprise Edition (J2EE)

Page 4: J2EE Java 2 Enterprise Edition

4

J2EERozproszony model komponentowy

• projektowanie, tworzenie, składanie, instalacja aplikacji klasy „enterprise”

• wielowarstwowość

• wielokrotne użycie komponentów

• wspólny model zabezpieczeń

• zarządzanie transakcjami

• wsparcie aplikacji www

Page 5: J2EE Java 2 Enterprise Edition

5

J2EE

• Platformy– kontenery

• Warstwy

• WebServices

• EJB Enterprise Java Bean

• Transakcje

• Bezpieczeństwo

Page 6: J2EE Java 2 Enterprise Edition

6

Platformy, narzędzia

• IDE– NetBeans (Sun) www.netbeans.org

– JDeveloper (Oracle)

www.oracle.com/technology/software/products/jdev/ – Eclipse (IBM) www.eclipse.org, Lombozz, myEclipse

• Serwery (kontenery)– JBoss (JBoss) www.jboss.org

– Resin (Caucho) www.caucho.com

– WebLogic (BEA) www.bea.com

Page 7: J2EE Java 2 Enterprise Edition

7

Warstwy J2EE

AplikacjaAplikacja

wwwWarstwa Maszyna

Aplikacja klienta

Strony (dyn.) HTML

Prezentacji Klienta

Strony JSP, Servlet

Sieci Serwer www

Enterprise Beans

Enterprise Beans

Logiki biznesowej

Serwer aplikacji

Baza danych Baza danych Danych Serwer bazy danych

Page 8: J2EE Java 2 Enterprise Edition

8

WebServices

• XML

• SOAP Simple Object Access Protocol

• WSDL Web Service Description Language

• JAX-RPC

• SAAJ SOAP with Attachements for Java

• UDDI Universal Description, Discovery and Integration

Page 9: J2EE Java 2 Enterprise Edition

9

EJB

• Komponenty po stronie serwera– session – realizacja zadań, serwisów– entity – odwzorowanie obiektów warstwy danych– message driven – asynchroniczne przetwarzanie komunikatów

(JMS)

• Mapowanie relacyjno-obiektowe– relacje– CMP Container-Managed Persistence– BMP Bean-Managed Persistence– Hibernate

• JNDI Java Naming & Directory Interface

Page 10: J2EE Java 2 Enterprise Edition

10

EJB - nazwy

Obiekt Nazwa Przykład

Nazwa Enterprise Bean (DD)

<name>Bean AccountBean

EJB JAR nazwa wyświetlana (DD)

<name>JAR AccountJAR

Klasa Enterprise Bean <name>Bean AccountBean

Home interface <name>Home AccountHome

Remote interface <name> Account

Local home interface <name>LocalHome AccountLocalHome

Local interface <name>Local AccountLocal

Schemat (DD) <name> Account

Page 11: J2EE Java 2 Enterprise Edition

11

Transakcje

• Container-Managed Transactions– „transakcyjność” metod opisywana w

deskryptorze– brak zagnieżdżeń

• Bean-Managed Transactions– większa kontrola nad transakcjami– JTA Java Transaction API– JDBC

Page 12: J2EE Java 2 Enterprise Edition

12

Bezpieczeństwo

• Deklaratywne– zewnętrznie wobec aplikacji– deskryptor wdrożenia

• Programowe• Identyfikacja, Autoryzacja• Użytkownicy, grupy, role• Warstwy www, SSL• Warstwy EJB• JAX-RPC