Suchen und Finden

Titel

Autor/Verlag

Inhaltsverzeichnis

Nur eBooks für mein Endgerät anzeigen:

 

Newsletter

Spring im Einsatz

von: Craig Walls

Carl Hanser Fachbuchverlag, 2007

ISBN: 9783446414181, 675 Seiten

Format: PDF, OL

Mac OSX,Windows PC,Mac OSX,Windows PC Bookeen Cybook Orizon,Ectaco Lite,Aluratek Libre,eLyricon EBX-500.TFT,PocketBook 302,FlatReader,BeBook 'One',iRiver Story,Sony Reader PRS-3xx,Bookeen CyBook Opus,Hanvon/Hexaglot N518,PocketBook 301+,COOL-ER eReader,Inves-Book 600,eLyricon EBX-600.E-Ink, Bookeen CyBook Gen3 ab Rev: 1.9,Italica Reader,Sony Reader PRS-505, -6xx, -7xx,Pocketbook 360,Hanvon N516 Weltbild Apple iPad, Android Tablet PC's Online-Lesen für: Linux,Mac OSX,Windows PC

Preis: 49,90 EUR

  • Windows Presentation Foundation - WPF - Grafische Oberflächen entwickeln mit .NET 3.0
    Einführung in Microsoft Access
    Java Web Services mit Apache Axis2
    Pragmatisches Denken und Lernen
    Datenbanksysteme - Eine Einführung
    E-Commerce Programmierung mit ASP - in 21 Tagen
    Postfix
    Web Application Development mit ColdFusion 4.5
  • Technisches Schreiben
    Datenbank-Anwendungen mit PostgreSQL
    Struts
    Konfigurationsmanagement mit Subversion, Maven und Redmine - Grundlagen für Softwarearchitekten und Entwickler

     

     

     

     

     

 

Mehr zum Inhalt

Spring im Einsatz


 

Inhalt

7

Vorwort

15

Vorwort zur ersten Auflage

17

Danksagung

19

Zu diesem Buch

21

Teil 1 Der Kern von Spring

26

1 Spring ins kalte Wasser

28

1.1 Was ist Spring?

29

1.1.1 Die Spring-Module

31

1.2 Der erste Schritt

35

1.3 Überblick über die Dependency Injection

38

1.3.1 Abhängigkeiten injizieren

38

1.3.2 DI im Einsatz

39

1.3.3 DI in Unternehmensanwendungen

45

1.4 Die aspektorientierte Programmierung

47

1.4.1 Einführung in AOP

47

1.4.2 AOP im Einsatz

48

1.5 Zusammenfassung

52

2 Grundlagen der Bean-Verschaltung

54

2.1 Beans im Container

55

2.1.1 Grundlagen zur BeanFactory

56

2.1.2 Mit einem Anwendungskontext arbeiten

58

2.1.3 Ein Bohnenleben

59

2.2 Beans erstellen

62

2.2.1 Eine einfache Bean deklarieren

62

2.2.2 Injektion über Konstruktoren

63

2.3 Injektion in Bean-Eigenschaften

68

2.3.1 Einfache Werte injizieren

69

2.3.2 Andere Beans referenzieren

70

2.3.3 Collections verschalten

73

2.3.4 Nichts (

78

verschalten

78

2.4 Autowiring

79

2.4.1 Die vier Typen des Autowiring

79

2.4.2 Gemischter Einsatz von automatischer und expliziter Verschaltung

83

2.4.3 Autowiring: Ja oder nein?

83

2.5 Steuerung der Bean-Erstellung

85

2.5.1 Geltungsbereiche für Beans

85

2.5.2 Beans aus Factory-Methoden erstellen

86

2.5.3 Beans initialisieren und zerstören

88

2.6 Zusammenfassung

90

3 Fortgeschrittene Bean-Verschaltung

92

3.1 Abgeleitete Beans deklarieren

93

3.1.1 Abstrahieren eines Bean-Basistyps

93

3.1.2 Gemeinsame Eigenschaften abstrahieren

96

3.2 Die Methodeninjektion

98

3.2.1 Methodenersetzung

99

3.2.2 Die Getter-Injektion

102

3.3 Nicht-Spring-Beans injizieren

104

3.4 Editoren für benutzerdefinierte Eigenschaften registrieren

106

3.5 Mit speziellen Spring-Beans arbeiten

109

3.5.1 Beans nachbearbeiten

110

3.5.2 Nachbearbeitung der

112

3.5.3 Konfigurationseigenschaften externalisieren

114

3.5.4 Textnachrichten auflösen

116

3.5.5 Entkopplung mit Anwendungsereignissen

117

3.5.6 Bewusstseinserweiterung für Beans

120

3.6 Skript-Beans

122

3.6.1 Wie die Limone in die Kokosnuss kommt

123

3.6.2 Beans skripten

124

3.6.3 Eigenschaften von Skript-Beans injizieren

127

3.6.4 Skript-Beans aktualisieren

128

3.6.5 Skript-Beans inline schreiben

128

3.7 Zusammenfassung

129

4 AdviceBeans

132

4.1 Einführung in AOP

133

4.1.1 Die Terminologie zu AOP

134

4.1.2 Der AOP-Support in Spring

137

4.2 Klassische Spring- Aspekte erstellen

140

4.2.1 Advices erstellen

142

4.2.2 Pointcuts und Advisors definieren

147

4.2.3 ProxyFactoryBeans verwenden

150

4.3 Autoproxying

153

4.3.1 Autoproxys für Spring-Aspekte erstellen

154

4.3.2 Autoproxying von @ AspectJ- Aspekten

155

4.4 Pure-POJO- Aspekte deklarieren

158

4.5 AspectJ- Aspekte injizieren

162

4.6 Zusammenfassung

165

Teil 2 Spring für Unternehmen

166

5 Zugriff auf die Datenbank

168

5.1 Die Philosophie des Datenzugriffs in Spring

169

5.1.1 Die Exception-Hierarchie beim Datenzugriff in Spring

171

5.1.2 Datenzugriffsschablonen

173

5.1.3 Klassen für den DAO-Support

175

5.2 Datenquelle konfigurieren

177

5.2.1 JNDI-Datenquellen verwenden

177

5.2.2 Pooldatenquelle verwenden

179

5.2.3 Auf JDBC-Treiber basierende Datenquelle

180

5.3 JDBC und Spring gemeinsam verwenden

181

5.3.1 Wie man JDBC-Code in den Griff bekommt

182

5.3.2 Mit JDBC-Vorlagen arbeiten

184

5.3.3 Springs DAO-Supportklassen für JDBC verwenden

190

5.4 Hibernate und Spring integrieren

193

5.4.1 Hibernate-Version auswählen

195

5.4.2 Hibernate-Vorlagen verwenden

196

5.4.3 DAOs auf Hibernate-Basis erstellen

199

5.4.4 Kontextabhängige Sessions in Hibernate 3

201

5.5 Spring und die Java Persistence API

203

5.5.1 JPA-Vorlagen verwenden

203

5.5.2 Entity-Manager-Factory konfigurieren

206

5.5.3 DAOs auf JPA-Basis erstellen

210

5.6 Spring und iBATIS

211

5.6.1 iBATIS-Clientvorlage konfigurieren

212

5.6.2 DAOs auf iBATIS-Basis erstellen

214

5.7 Caching

216

5.7.1 Caching-Lösung konfigurieren

217

5.7.2 Bean-Proxys für das Caching erstellen

221

5.7.3 Annotationsgetriebenes Caching

223

5.8 Zusammenfassung

225

6 Transaktionen verwalten

226

6.1 Grundlagen zu Transaktionen

227

6.1.1 Transaktionen – mit vier Wörtern erklärt

228

6.1.2 Spring-Support für die Transaktionsverwaltung

229

6.2 Auswahl eines Transaktionsmanagers

230

6.2.1 JDBC-Transaktionen

232

6.2.2 Hibernate-Transaktionen

232

6.2.3 JPA- Transaktionen

233

6.2.4 JDO-Transaktionen

234

6.2.5 JTA- Transaktionen

234

6.3 Transaktionen in Spring programmieren

235

6.4 Transaktionen deklarieren

237

6.4.1 Transaktionsattribute definieren

238

6.4.2 Transaktions-Proxys

242

6.4.3 Transaktionen in Spring 2.0 deklarieren

245

6.4.4 Annotationsgetriebene Transaktionen definieren

247

6.5 Zusammenfassung

249

7 Spring absichern

250

7.1 Einführung in Spring Security

251

7.2 Benutzer authentifizieren

255

7.2.1 Einen Provider-Manager konfigurieren

256

7.2.2 Authentifizierung gegenüber einer Datenbank

258

7.2.3 Authentifizierung gegenüber einem LDAP-Repository

265

7.3 Zugriffssteuerung

271

7.3.1 Über Zugriffsentscheidungen abstimmen

272

7.3.2 Die Stimmabgabe

273

7.3.3 Stimmenthaltungen

274

7.4 Webanwendungen absichern

275

7.4.1 Proxys für Spring Security-Filter erstellen

278

7.4.2 Sicherheitskontexte behandeln

284

7.4.3 Aufforderung zur Benutzeranmeldung

285

7.4.4 Sicherheits-Exceptions behandeln

290

7.4.5 Websicherheit erzwingen

291

7.4.6 Sicheren Kanal schützen

293

7.5 Sicherheit für die Darstellungsebene

295

7.5.1 Bedingtes Inhalts-Rendering

296

7.5.2 Authentifizierungsdaten anzeigen

297

7.6 Methodenaufrufe schützen

298

7.6.1 Sicherheitsaspekt erstellen

298

7.6.2 Methoden mit Metadaten absichern

300

7.7 Zusammenfassung

301

8 Spring und POJO-basierte Remote-Services

302

8.1 Das Spring-Remoting im Überblick

303

8.2 Mit RMI arbeiten

306

8.2.1 RMI-Services verschalten

306

8.2.2 RMI-Services exportieren

308

8.3 Remoting mit Hessian und Burlap

312

8.3.1 Zugriff auf Hessian-/Burlap-Services

312

8.3.2 Bean-Funktionalitäten mit Hessian und Burlap verfügbar machen

314

8.4 Springs HTTP-Invoker verwenden

318

8.4.1 Zugriff auf Services via HTTP

318

8.4.2 Beans als HTTP-Services verfügbar machen

319

8.5 Spring und Webservices

321

8.5.1 Beans als Webservices mit XFire exportieren

321

8.5.2 Webservices mit JSR-181- Annotationen erstellen

325

8.5.3 Webservices weiterverarbeiten

328

8.5.4 Proxys für Webservices mit einem XFire-Client erstellen

334

8.6 Zusammenfassung

335

9 Erstellen von Contract First Web Services in Spring

336

9.1 Einführung in Spring Web Services

338

9.2 Den Kontrakt (zuerst!) definieren

340

9.2.1 Erstellen von Beispiel-XML-Nachrichten

340

9.3 Umgang mit Nachrichten mit Dienstendpunkten

345

9.3.1 Erstellen eines JDOM-basierten Nachricht-Endpunkts

346

9.3.2 Marshalling von Nachrichten-Payloads

348

9.4 Die gemeinsame Verschaltung

351

9.4.1 Spring-WS im Gesamtzusammenhang

352

9.4.2 Nachrichten auf Endpunkte mappen

353

9.4.3 Verschalten des Dienstendpunkts

354

9.4.4 Einen Nachrichten-Marshaller konfigurieren

354

9.4.5 Umgang mit Endpunkt-Exceptions

357

9.4.6 Die Arbeit mit WSDL-Dateien

358

9.4.7 Den Dienst deployen

362

9.5 Verarbeitung von Spring-WS-Webservices

362

9.5.1 Die Arbeit mit Webservice-Templates

363

9.5.2 Die Arbeit mit WebServiceGatewaySupport

369

9.6 Zusammenfassung

370

10 Messaging in Spring

372

10.1 Kurze Einführung in JMS

373

10.1.1 Die Architektur von JMS

374

10.1.2 Die Vorteile von JMS

377

10.1.3 Einrichtung von ActiveMQ in Spring

379

10.2 JMS im Einsatz mit Spring

380

10.2.1 Umgang mit unübersichtlichem JMS-Code

380

10.2.2 Die Arbeit mit JMS-Templates

382

10.2.3 Nachrichten konvertieren

388

10.2.4 Die Gateway-Support-Klassen von Spring in JMS

391

10.3 Erstellung nachrichtengetriebener POJOs

392

10.3.1 Erstellen eines Message-Listeners

393

10.3.2 Das Schreiben reiner POJO-MDBs

396

10.4 Die Arbeit mit nachrichtenbasierten RPCs

400

10.4.1 Einführung in Lingo

401

10.4.2 Den Service exportieren

402

10.4.3 JMS und Proxy

403

10.5 Zusammenfassung

405

11 Spring und Enterprise JavaBean

406

11.1 Verschaltung von EJBs in Spring

407

11.1.1 Session-Beans und Proxys (EJB 2.x)

408

11.1.2 Verschalten von EJBs mit Spring-Beans

412

11.2 Entwicklung von Spring-fähigen EJBs (EJB 2.x)

413

11.3 Spring und EJB 3

415

11.3.1 Pitchfork

416

11.3.2 Der Start mit Pitchfork

417

11.3.3 Ressourcen durch Annotationen injizieren

418

11.3.4 Deklaration von Interceptors über Annotationen

419

11.4 Zusammenfassung

420

12 Zugriff auf Enterprise-Services

422

12.1 Objekte von JNDI verschalten

423

12.1.1 Die Arbeit mit konventionellem JNDI

424

12.1.2 Injektion von JNDI-Objekten

426

12.1.3 Verschalten von JNDI-Objekten in Spring 2

429

12.2 Der E-Mail-Versand

430

12.2.1 Konfiguration eines Mail-Senders

430

12.2.2 Konstruktion der E-Mail

432

12.3 Zeitplanung für Tasks

435

12.3.1 Zeitplanung mit dem Timer von Java

435

12.3.2 Der Quartz Scheduler

438

12.3.3 Methoden bei einem Zeitplan aufrufen

442

12.4 Verwalten von Spring-Beans mit JMX

444

12.4.1 Spring-Beans als MBeans exportieren

444

12.4.2 Remoting von MBeans

453

12.4.3 Benachrichtigungen

457

12.5 Zusammenfassung

459

Teil 3 Spring auf der Client-Seite

462

13 Umgang mit Webanfragen

464

13.1 Der Start mit Spring MVC

465

13.1.1 Ein Tag im Leben einer Anfrage

465

13.1.2 Die Konfiguration von DispatcherServlet

467

13.1.3 Spring MVC im Überblick

469

13.2 Anfragen den Controllern zuordnen

475

13.2.1 Die Arbeit mit

476

13.2.2 Die Arbeit mit

477

13.2.3 Zuordnung von Controllern über Metadaten

478

13.2.4 Die Arbeit mit mehreren Handler-Mappings

478

13.3 Die Bearbeitung von Anfragen durch Controller

479

13.3.1 Verarbeitung von Befehlen

482

13.3.2 Formulareingaben verarbeiten

484

13.3.3 Verarbeitung komplexer Formulare mit Assistenten

491

13.3.4 Die Arbeit mit Throwaway-Controllern

498

13.4 Umgang mit Exceptions

501

13.5 Zusammenfassung

501

14 Darstellen von Web-Views

504

14.1 Auflösung von Views

505

14.1.1 Die Arbeit mit Template-Views

506

14.1.2 Auflösen von View-Beans

508

14.1.3 Wahl eines View-Resolvers

510

14.2 Die Arbeit mit JSP-Templates

512

14.2.1 Binding von Formulardaten

512

14.2.2 Darstellung von ausgelagerten Nachrichten

514

14.2.3 Fehlerausgabe

516

14.3 Seitenlayout mit Tiles

518

14.3.1 Tiles-Views

518

14.3.2 Erstellen von Controllern in Tiles

522

14.4 Alternativen zu JSP

524

14.4.1 Die Arbeit mit Velocity- Templates

524

14.4.2 Die Arbeit mit FreeMarker

530

14.5 Generierung von Nicht-HTML-Ausgaben

535

14.5.1 Erstellung von Excel-Tabellen

535

14.5.2 Generierung von PDF-Dokumenten

538

14.5.3 Entwicklung eigener Views

540

15 Die Arbeit mit Spring Web Flow

544

15.1 Der Einstieg bei Spring Web Flow

546

15.1.1 Die Arbeit mit Spring Web Flow

548

15.1.2 Wesentliche Grundzüge von Spring Web Flow

551

15.1.3 Erstellen eines Ablaufs

553

15.2 Die Grundlagen für den Ablauf

554

15.2.1

554

15.2.2 Start- und Endzustände

556

15.2.3 Die Kundeninformationen

557

15.2.4 Die Pizzabestellung

563

15.2.5 Abschließen der Bestellung

566

15.2.6 Einige Feinarbeiten

568

15.3 Fortgeschrittene Webflow-Techniken

571

15.3.1 Die Arbeit mit Entscheidungszuständen

572

15.3.2 Extrahierung von Unterabläufen und Unterzuständen

574

15.4 Spring Web Flow mit anderen Frameworks integrieren

578

15.4.1 Jakarta Struts

578

15.4.2 JavaServer Faces

579

15.5 Zusammenfassung

580

16 Integration mit anderen Webframeworks

582

16.1 Die gemeinsame Nutzung von Spring und Struts

583

16.1.1 Registrieren des Spring-Plug-ins bei Struts

584

16.1.2 Das Schreiben von Spring-fähigen Struts-Actions

585

16.1.3 Delegation an in Spring konfigurierte Actions

587

16.1.4 Was ist mit Struts 2?

589

16.2 Die Arbeit mit Spring und WebWork 2/Struts 2

590

16.3 Integration von Spring und Tapestry

593

16.3.1 Integration von Spring und Tapestry 3

594

16.3.2 Integration von Spring und Tapestry 3

597

16.4 Spring mit JSF ein Gesicht verleihen

598

16.4.1 Auflösen von über JSF verwalteten Eigenschaften

599

16.4.2 Auflösung von Spring-Beans

601

16.4.3 Spring-Beans mit JSF-Seiten verwenden

602

16.4.4 Der Anwendungskontext in JSF

603

16.5 Durch DWR Ajax mit Spring-Anwendungen einsetzen

603

16.5.1 Direct Web Remoting

604

16.5.2 Zugriff mit DWR auf in Spring verwaltete Beans

612

16.6 Zusammenfassung

617

A Das Setup von Spring

618

A. 1 Download von Spring

618

A. 1.1 Die Spring-Distribution

619

A. 1.2 Erstellen des Klassenpfads

620

A. 2 Spring- Abhängigkeit in Maven 2 konfigurieren

621

A. 3 Spring und Ant

624

A. 4 Spring und Log4j

625

B Tests mit (und ohne) Spring

628

B.1 Einführung in das Testverfahren

628

B.1.1 Die unterschiedlichen Testverfahren

629

B.1.2 Die Arbeit mit JUnit

630

B.1.3 Die Rolle von Spring bei Tests

633

B.2 Unit-Tests für Spring MVC Controller

634

B.2.1 Mock-Objekte

635

B.2.2 Testen der Inhalte von

638

B.3 Integrationstest mit Spring

640

B.3.1 Testen verschalteter Objekte

641

B.3.2 Integrationstests von transaktionalen Objekten

644

B.3.3 Tests mit der Datenbank

646

B.3.4 Tests in JUnit 4 mit gienah

649

B.4 Zusammenfassung

651

Register

652