Presentasjon lastes. Vennligst vent

Presentasjon lastes. Vennligst vent

Copyright © 2003 Systek J2EE Arkitektur Java Workshop CBA Johannes Brodwall, Systek as.

Liknende presentasjoner


Presentasjon om: "Copyright © 2003 Systek J2EE Arkitektur Java Workshop CBA Johannes Brodwall, Systek as."— Utskrift av presentasjonen:

1 Copyright © 2003 Systek ASbrodwall@systek.no J2EE Arkitektur Java Workshop CBA Johannes Brodwall, Systek as

2 Copyright © 2003 Systek ASbrodwall@systek.no Oversikt Dag 1: Introduksjon og diskusjon Dag 2: Detaljer, EJB, JMS, JNDI, JAAS Dag 3: J2EE arkitektur(er), IBAS i J2EE

3 Copyright © 2003 Systek ASbrodwall@systek.no Hva må man kunne? Objektorientering Java UML Patterns Integrasjon Code generation Data access Build & CM Distribution Application Server Transactions IDE Presentasjon Distribusjon Integrasjon Persistens Databases Teknologier Arkitektur Verktøy

4 Copyright © 2003 Systek ASbrodwall@systek.no Hva må man kunne? Page iterator XDoclet Data Access Objects Ant Transfer Object JBoss Transaction scripts Eclipse Servlet, JSP, Swing EJB JCA, JMS, Web Serv Entity Beans, JDO Databases Teknologier Arkitektur Verktøy

5 Copyright © 2003 Systek ASbrodwall@systek.no Del I: Verktøy

6 Copyright © 2003 Systek ASbrodwall@systek.no XDoclet, Lomboz, Ant XDoclet: Kodegenerering av J2EE kode Ant: ”Make” for Java Lomboz: Open-source J2EE-IDE http://www.tusc.com.au/tutorial/html/ http://www.objectlearn.com/

7 Copyright © 2003 Systek ASbrodwall@systek.no Introduksjon: Arkitektur Arkitektur er ikke... ”Hva skal skje når brukeren trykker her?” ”Hva gjør systemet når...?” ”Hvilken informasjon skal være i dette svaret?” ”Hva er forretningsreglene?” ”Hvordan ser databasen ut?” ”Hvilke felter finnes i meldingen?” Arkitektur er... ”Hvor ofte trykker noen her?” ”Hvor raskt skal systemet svare?” ”Hvor komplekse er forretningsreglene, databasen, meldingene? Hvor ofte endres de?”

8 Copyright © 2003 Systek ASbrodwall@systek.no J2EE

9 Copyright © 2003 Systek ASbrodwall@systek.no Kilder Eksemplene er hentet fra: ”Designing Enterprise Applications with the J2EE Platform, 2 nd Edition” http://java.sun.com/blueprints/guidelines/designing_enterprise_applica tions_2e/http://java.sun.com/blueprints/guidelines/designing_enterprise_applica tions_2e/ Arkitekturprosessen er hentet fra ”Suntone Architecture Methodology” http://www.sun.com/service/sunps/jdc/suntoneam_wp_5.24.pdf Se også: Martin Fowler: ”Patterns of Enterprise Application Architecture” Deepak Alur et al: ”Core J2EE Patterns”

10 Copyright © 2003 Systek ASbrodwall@systek.no Del II: Design av trelagsapplikasjon

11 Copyright © 2003 Systek ASbrodwall@systek.no Transactions ACID CTM – Component Transaction Monitor Transaction levels 2PC Ressurser implementerer javax.transaction.xa.XaResource (start, prepare, commit, rollback) javax.transaction.xa.XaResource Transaksjoner kan suspenderes JDBC, JMS, JCA

12 Copyright © 2003 Systek ASbrodwall@systek.no 2-fase kommit

13 Copyright © 2003 Systek ASbrodwall@systek.no Transaksjonsnivåer Klient har transKlient ikke trans NotSupportedSuspend Supported Standard oppførsel Required Typisk for transaksjonel komp Ny trans Commit ved return RequiresNew For eksempel logging Suspend – start ny Commit ved return Ny trans Commit ved return Mandatory For eksempel fine grained Exception NeverException

14 Copyright © 2003 Systek ASbrodwall@systek.no Distribusjons ”patterns” Remote Facade (”lat som om objektet er lokalt”) RPC, CORBA, DCOM, RMI Session Facade (batch oppgaver) Data Transfer Object (send pakker med objekter) Message Passing (asynkron kontrol)

15 Copyright © 2003 Systek ASbrodwall@systek.no Session Facade

16 Copyright © 2003 Systek ASbrodwall@systek.no Session Facade - struktur

17 Copyright © 2003 Systek ASbrodwall@systek.no Data Transfer Objects (aka ”Value Objects”)

18 Copyright © 2003 Systek ASbrodwall@systek.no Page Iterator (variant) ClientSessionDAODatabase doQuerygetResult Read primary keys Read row data next_Page Get Row Row/page count Store primary keys Get next pagesize rows Row collection

19 Copyright © 2003 Systek ASbrodwall@systek.no SOAP server.getStateNum(41); 41 class Server { String getStateNum(int statenum) { return ”South Dakota”; } South Dakota

20 Copyright © 2003 Systek ASbrodwall@systek.no Web Services Integrasjon via HTTP, XML (SOAP) Firewall-vennlig, internet-vennlig, debug-vennlig, interop-vennlig Standarder er under utvikling for transaksjoner, sikkerhet, og mye annet Meldingsbasert eller RPC-basert RPC-basert har mest

21 Copyright © 2003 Systek ASbrodwall@systek.no JMS (reprise)

22 Copyright © 2003 Systek ASbrodwall@systek.no Meldingsbasert integrasjon JCA – ressurser Arbeidsfordeling Notifikasjoner til klienter Asynkron behandling av oppgaver Arbeidsflyt mellom ”fortress” (=> Message bus) Meldingbasert integrasjon er mer robust ved nettverksfeil

23 Copyright © 2003 Systek ASbrodwall@systek.no Data-strategier Data Access Objects Fleksibel Manuell Bean-managed persistence Object-relation mapping Kan ha problemer med OO-konsepter Automatisk Container-managed persistence

24 Copyright © 2003 Systek ASbrodwall@systek.no DAO

25 Copyright © 2003 Systek ASbrodwall@systek.no XDoclet DAO

26 Copyright © 2003 Systek ASbrodwall@systek.no CRUD Browser WebServer EJB Container Resource Order Table OrderBean OrderFacade OrderMain. jsp Order Delegate OrderView Order Action Order Form Bean Order Data Object Order Update Object Order Data Object Order Update Object

27 Copyright © 2003 Systek ASbrodwall@systek.no Del III: Integrasjon

28 Copyright © 2003 Systek ASbrodwall@systek.no Hvordan ser det ut?

29 Copyright © 2003 Systek ASbrodwall@systek.no J2EE Blueprint

30 Copyright © 2003 Systek ASbrodwall@systek.no Fortress Integrasjon Presentasjon Forretning Data

31 Copyright © 2003 Systek ASbrodwall@systek.no Integrasjonsstrategier - database Fortress 1 Presentasjon Forretning Data Fortress 2 Presentasjon Forretning Data

32 Copyright © 2003 Systek ASbrodwall@systek.no Integrasjonsstrategier – synkron Fortress 1 Presentasjon Forretning Data Fortress 2 Presentasjon Forretning Data portlets RMI

33 Copyright © 2003 Systek ASbrodwall@systek.no Fortress 2 Integrasjon Presentasjon Forretning Data Visuell integrasjon Fortress 1 Integrasjon Presentasjon Forretning Data Fortress 3 Integrasjon Presentasjon Forretning Data Presentasjonsfort Presentasjon Portlet Portal

34 Copyright © 2003 Systek ASbrodwall@systek.no Integrasjonsstrategier – asynkron Fortress Presentasjon Forretning Data Fortress Presentasjon Forretning Data JMS Replikering

35 Copyright © 2003 Systek ASbrodwall@systek.no Fortress 2 Integrasjon Presentasjon Forretning Data Fortress-basert arkitektur Fortress 1 Integrasjon Presentasjon Forretning Data Fortress 3 Integrasjon Presentasjon Forretning Data Message Broker Asynchronous XML messaging Etc. Integrasjon Presentasjon Forretning Data Workflow-baserte systemer

36 Copyright © 2003 Systek ASbrodwall@systek.no Fortress: Design anbefaling Fortress RDBMS-OO DAO, Entity Beans eller JDO Services Session beans (eller annen teknologi) Signal change Replicate incoming objects Broadcast changes Asynkron Bør autogenereres i så stor grad som mulig Portlets eller tilsvarende sikrer presenasjon-integrasjon mellom fortress

37 Copyright © 2003 Systek ASbrodwall@systek.no Oppsummering? Objektorientering Java UML Patterns Integrasjon Code generation Data access Build & CM Distribution Application Server Transactions IDE EJB Servlet & JSP JCA JMS Databases Technologies Architecture Tools


Laste ned ppt "Copyright © 2003 Systek J2EE Arkitektur Java Workshop CBA Johannes Brodwall, Systek as."

Liknende presentasjoner


Annonser fra Google