dummies
 

Suchen und Finden

Titel

Autor/Verlag

Inhaltsverzeichnis

Nur ebooks mit Firmenlizenz anzeigen:

 

Enterprise JavaBeans - Die 3. Generation

Werner Eberling, Jan Leßner

 

Verlag Carl Hanser Fachbuchverlag, 2007

ISBN 9783446412941 , 293 Seiten

Format PDF, OL

Kopierschutz Wasserzeichen

Geräte

39,90 EUR

Für Firmen: Nutzung über Internet und Intranet (ab 2 Exemplaren) freigegeben

Derzeit können über den Shop maximal 500 Exemplare bestellt werden. Benötigen Sie mehr Exemplare, nehmen Sie bitte Kontakt mit uns auf.


 

Inhalt

7

Einführung

11

Bevor es losgeht

11

Zielgruppe und Leseregeln

12

Application-Server, Tools und Codebeispiele

13

Formatierungen und Sprachgebrauch

14

Danksagung

14

Feedback

15

1 Technische Grundlagen und historische Entwicklungen

16

1.1 Client-Server-Systeme

16

1.2 Die 3-Schichten-Architektur

19

1.3 Ein bisschen Komponenten-Theorie

22

1.4 EJBs und die Java Enterprise Edition

25

1.5 Handwerkszeug aus der Java Standard Edition 5

27

1.5.1 Annotationen

27

1.5.2 Generics

28

1.5.3 Autoboxing

29

2 Erste Schritte

30

2.1 Die Neuheiten kurz gefasst

30

2.2 Hello World

32

2.2.1 Installation der JEE-Plattform

32

2.2.2 Implementierung einer EJB

34

2.2.3 Installation der EJB (Deployment)

35

2.2.4 Implementierung des Clients

36

2.2.5 Aufräumen

39

2.3 Spielregeln

40

2.3.1 Rollen

40

2.3.2 Einschränkungen im Programmiermodell

42

2.4 Wie es weitergeht

44

3 SessionBeans

45

3.1 Einführung

45

3.2 Stateless SessionBeans

47

3.2.1 Bestandteile einer Stateless SessionBean

49

3.2.2 Implementierung im Detail

52

3.2.3 Lokaler Zugriff auf Stateless SessionBeans

58

3.2.4 Stateless SessionBeans als Webservice-Endpunkt

60

3.2.5 Neue Beans und alte Clients – EJB2- Sicht auf EJB3- SessionBeans

65

3.3 Stateful SessionBeans

67

3.3.1 Bestandteile einer Stateful SessionBean

68

3.3.2 Lifecycle und Event Callback Methoden

70

3.3.3 Abschließende Bemerkungen

74

3.4 Session-Context

74

3.5 Exceptions

76

3.5.1 Applikations- und System-Exception

76

3.6 Alternative zur Annotation: Der XML-Deskriptor

78

4 Entities

81

4.1 Das Problem mit der Persistenz

81

4.2 Einige Grundlagen

83

4.2.1 Die Data-Source

83

4.2.2 Die wichtigsten Begriffe vorweg

85

4.3 Eine erste Datenbankanwendung

90

4.3.1 Der Lebenszyklus von Entities

94

4.3.2 Grundfunktionen des Entity-Managers

97

4.4 O/R-Mapping

99

4.4.1 Abbildung von Klassen auf Tabellen

100

4.4.2 Abbildung von Attributen auf Spalten

103

4.4.3 Abbildung von Vererbungen

114

4.5 Beziehungen

121

4.5.1 Bi- und unidirektionale Beziehungen verstehen

122

4.5.2 Beziehungstypen

124

4.5.3 1:1-Beziehungen

124

4.5.4 1:N-Beziehungen

128

4.5.5 N:1-Beziehungen

134

4.5.6 N:M-Beziehungen

136

4.5.7 Noch mehr Beziehungen

140

4.6 Abfragen

141

4.6.1 JPA-Schnittstellen für Abfragen

144

4.6.2 Alles Wesentliche auf einen Blick

145

4.6.3 GROUP-BY und HAVING

152

4.6.4 SELECT

152

4.6.5 ORDER-BY

153

4.6.6 Unterabfragen

154

4.6.7 Massenlöschungen und -aktualisierungen

155

4.6.8 SQL- Abfragen

156

4.6.9 Benannte Abfragen

157

4.7 Noch mehr Entities

158

4.8 Entities im Rückblick

160

5 Message-Driven Beans

162

5.1 Einführung

162

5.2 Nachrichtenbasierte Systeme mit JMS

163

5.2.1 Der Nachrichtenserver als Kommunikationsbus

164

5.2.2 Einer sendet, einer empfängt – das Punkt-zu-Punkt-Modell

164

5.2.3 Einer sendet, viele hören zu – das Publish-Subscribe-Modell

169

5.3 Bestandteile einer Message-Driven Bean

171

5.3.1 Lebenszyklus einer Message-Driven Bean

171

5.3.2 Bestandteile einer Message-Driven Bean

172

5.4 Alternative zur Annotation: Der XML-Deskriptor

175

5.5 Abschließende Bemerkungen

176

6 EJB-Konfiguration

178

6.1 Einführung

178

6.2 Der lokale JNDI-Kontext

178

6.3 EJB-Referenzen

181

6.4 Konfigurations-Parameter

185

6.5 Ressourcen-Manager-Fabriken

186

6.6 Nachrichtenziele

189

6.7 Noch mehr referenzierte Objekte

191

6.8 Abschließende Bemerkungen zum Deployment- Deskriptor

192

7 Transaktionen

195

7.1 Systemkonsistenz in Komponentenarchitekturen

195

7.1.1 Ressourcen

197

7.2 Container-verwaltete Transaktionen

200

7.2.1 Zurückrollen von CMTs

201

7.2.2 Deklaration von CMTs

204

7.2.3 CMTs in Message-Driven Beans

208

7.2.4 Situationen mit unspezifiziertem Transaktionskontext

208

7.3 Bean-verwaltete Transaktionen

209

7.4 Transaktionale Ressourcen

212

7.4.1 Persistenzkontexte

212

7.4.2 Data-Sources

212

7.4.3 JMS-Verbindungen

213

7.4.4 Stateful SessionBeans und SessionSynchronization

214

7.5 Client-verwaltete Transaktionen

217

8 Sicherheit

219

8.1 Einführung

219

8.2 Wer klopft denn da? – Die Authentifizierung

219

8.2.1 Erste Schritte

219

8.2.2 Der Caller-Principal

221

8.2.3 Principal Delegation

221

8.2.4 Technische Details der Authentifizierung des Clients

222

8.2.5 Serverseitige Authentifizierung

228

8.3 Rollenbasierte Autorisierung

232

8.3.1 Deklaratives Sicherheitsmanagement

233

8.3.2 Programmatisches Sicherheitsmanagement

235

8.3.3 Abbildung der logischen Rollen

236

8.3.4 Grenzen des rollenbasierten Ansatzes

237

8.4 Datenverschlüsselung und Integrität

238

9 Noch mehr EJBs

240

9.1 Einfache Aspektorientierung mit EJB3

240

9.1.1 Interceptor-Methoden

241

9.1.2 Interceptor-Klassen

244

9.1.3 Aspekte über XML-Deskriptoren

247

9.2 Timed Objects

249

9.3 Ein alternativer Weg zur Remote-Referenz: Der Handle

251

10 Blick über den Tellerrand

253

10.1 Testen von EJBs

253

10.1.1 Warum Testen?

253

10.1.2 Unit-Tests mit Entities und Dependency-Injection

255

10.1.3 Server-unterstütztes Testen

256

10.2 Wichtige EJB-Entwurfmuster

258

10.2.1 Evtl. bekannte Muster sind weiter gültig

258

10.2.2 Neue Muster mit EJB 3.0

262

10.2.3 Was es nicht mehr gibt

263

10.3 Migration auf EJB3

264

10.3.1 Drei (und eine) Migrations-Strategien

264

10.3.2 Migrieren, aber wie?

267

11 Ein Stein würfelt nicht

270

11.1 Zum Spiel

270

11.2 Funktionsweise der Spielplattform

272

11.3 Technisches Modell

273

11.3.1 Versuchungen

273

11.3.2 Design-Entscheidungen

274

11.3.3 Das Komponentenmodell

276

11.3.4 Das Entitätenmodell

277

11.3.5 Die Package-Struktur

278

11.4 Hingucker

279

11.5 Erweiterungsmöglichkeiten

282

11.6 Einige Anmerkungen zum Schluss

283

Literatur

284

Register

286