
Java 7 - Mehr als eine Insel
Das Handbuch zu den Java SE-Bibliotheken
Christian Ullenboom(Author)
Galileo Computing (Publisher)
1st Edition
Published on 28. October 2011
Book
Hardback
1433 pages
978-3-8362-1507-7 (ISBN)
Article exhausted; check for reprint
Description
Fortsetzung des Java-Kultbuchs für Entwickler! Hier bekommen Sie umfassendes und kompetentes Praxiswissen zu den vielen Bibliotheken und Technologien in einem Band. Am Beispiel konkreter Java-Projekte zeigt Christian Ullenboom, was man wissen muss über Swing, Netzwerk- und Grafikprogrammierung, RMI und Web-Services, JavaServer Pages und Servlets, Applets, JDBC, Reflection und Annotationen, Logging und Monitoring, Java Native Interface (JNI) und vieles mehr. Dieses Buch ist Ihr unersetzlicher Begleiter bei der täglichen Arbeit!
Aus dem Inhalt:
Neues in Java 7
Threads und nebenläufige Programmierung
Datenstrukturen und Algorithmen
Raum und Zeit
Dateien, Verzeichnisse und Dateizugriffe
Datenströme
eXtensible Markup Language
Grafische Oberflächen mit Swing
Grafik- und Netzwerkprogrammierung
Verteilte Programmierung mit RMI
JavaServer Pages und Servlets
Datenbankmanagement mit JDBC
Reflection und Annotationen
Logging und Monitoring
Galileo Press heißt jetzt Rheinwerk Verlag.
Reviews / Votes
Das Buch beschäftigt sich mit den Java-SE-Bibliotheken. Am Beginn steht die Vorstellung der Neuheiten und Änderungen unter Java 7. Danach beginnt die eigentliche Rundreise, die mit den Threads und der nebenläufigen Programmierung beginnt und mit den Dienstprogrammen für die Java-Umgebung ihr Ende nimmt. Dazwischen werden alle wichtigen Themen behandelt, die dem Standardprogrammierer typischerweise bei seiner täglichen Arbeit begegnen. Zur Veranschaulichung des API bedient sich der Autor dabei jeder Menge Beispiele, die zu einem bedeutend besseren Verständnis beitragen. Inhaltlich liefert Ullenboom jeweils eine sehr gute und verständliche Einführung in die Materie.More details
Series
Language
German
Place of publication
Bonn
Germany
Publishing group
Rheinwerk
Edition type
New edition
Dimensions
Height: 24 cm
Width: 19 cm
ISBN-13
978-3-8362-1507-7 (9783836215077)
Schweitzer Classification
Other editions
New editions

Book
12/2017
3rd Edition
Rheinwerk
€49.90
Available immediately

Christian Ullenboom
Java SE 8 Standard-Bibliothek
Das Handbuch für Entwickler. Die 2. Insel, aktuell zu Java 8.
Book
06/2014
2nd Edition
Rheinwerk
€49.90
Article exhausted; check for reprint
Person
Christian Ullenboom, Dipl.-Informatiker, ist Sun-zertifizierter Java Programmierer und seit 1997 Trainer und Berater für Java-Technologien und objektorientierte Analyse und Design. Seit Jahren teilt er sein Wissen mit unzähligen Besuchern seiner Website, wo er Fragen beantwortet, Inhalte bereitstellt und diskutiert. Seine Sympathie gilt Java Performance Tuning und den sinnlichen Freuden des Lebens.
Content
... Vorwort ... 35
1 ... Neues in Java 7 ... 41
... 1.1 ... Sprachänderungen ... 41
... 1.2 ... JVM-Änderungen ... 59
... 1.3 ... Neue Pakete und Klassen ... 63
2 ... Threads und nebenläufige Programmierung ... 65
... 2.1 ... Threads erzeugen ... 65
... 2.2 ... Thread-Eigenschaften und -Zustände ... 71
... 2.3 ... Der Ausführer (Executor) kommt ... 88
... 2.4 ... Synchronisation über kritische Abschnitte ... 98
... 2.5 ... Synchronisation über Warten und Benachrichtigen ... 124
... 2.6 ... Datensynchronisation durch besondere Concurrency-Klassen * ... 138
... 2.7 ... Atomare Operationen und frische Werte mit volatile * ... 145
... 2.8 ... Teile und herrsche mit Fork und Join * ... 149
... 2.9 ... Mit dem Thread verbundene Variablen * ... 156
... 2.10 ... Threads in einer Thread-Gruppe * ... 162
... 2.11 ... Zeitgesteuerte Abläufe ... 170
... 2.12 ... Einen Abbruch der virtuellen Maschine erkennen ... 173
... 2.13 ... Zum Weiterlesen ... 174
3 ... Datenstrukturen und Algorithmen ... 175
... 3.1 ... Datenstrukturen und die Collection-API ... 175
... 3.2 ... Listen ... 188
... 3.3 ... Mengen (Sets) ... 208
... 3.4 ... Stack (Kellerspeicher, Stapel) ... 218
... 3.5 ... Queues (Schlangen) und Deques ... 220
... 3.6 ... Assoziative Speicher ... 228
... 3.7 ... Die Properties-Klasse ... 243
... 3.8 ... Mit einem Iterator durch die Daten wandern ... 249
... 3.9 ... Algorithmen in Collections ... 261
... 3.10 ... Spezielle thread-sichere Datenstrukturen ... 284
... 3.11 ... Google Guava (aka Google Collections Library) ... 294
... 3.12 ... Die Klasse BitSet für Bitmengen * ... 299
... 3.13 ... Zum Weiterlesen ... 304
4 ... Raum und Zeit ... 305
... 4.1 ... Weltzeit * ... 305
... 4.2 ... Wichtige Datum-Klassen im Überblick ... 306
... 4.3 ... Sprachen der Länder ... 308
... 4.4 ... Internationalisierung und Lokalisierung ... 312
... 4.5 ... Die Klasse Date ... 317
... 4.6 ... Calendar und GregorianCalendar ... 320
... 4.7 ... Zeitzonen in Java * ... 336
... 4.8 ... Zeitdauern und der XML-Datentyp Duration * ... 340
... 4.9 ... Formatieren und Parsen von Datumsangaben ... 345
... 4.10 ... Zum Weiterlesen ... 355
5 ... Dateien, Verzeichnisse und Dateizugriffe ... 357
... 5.1 ... Datei und Verzeichnis ... 357
... 5.2 ... Dateien mit wahlfreiem Zugriff ... 378
... 5.3 ... Dateisysteme unter NIO.2 ... 385
... 5.4 ... Wahlfreier Zugriff mit SeekableByteChannel und ByteBuffer * ... 422
... 5.5 ... Zum Weiterlesen ... 426
6 ... Datenströme ... 427
... 6.1 ... Stream-Klassen und Reader/Writer am Beispiel von Dateien ... 427
... 6.2 ... Basisklassen für die Ein-/Ausgabe ... 438
... 6.3 ... Formatierte Textausgaben ... 454
... 6.4 ... Schreiben und Lesen aus Strings und Byte-Feldern ... 462
... 6.5 ... Datenströme filtern und verketten ... 468
... 6.6 ... Vermittler zwischen Byte-Streams und Unicode-Strömen ... 491
... 6.7 ... Kommunikation zwischen Threads mit Pipes * ... 493
... 6.8 ... Prüfsummen ... 498
... 6.9 ... Persistente Objekte und Serialisierung ... 502
... 6.10 ... Alternative Datenaustauschformate ... 522
... 6.11 ... Tokenizer * ... 526
... 6.12 ... Zum Weiterlesen ... 529
7 ... Die eXtensible Markup Language (XML) ... 531
... 7.1 ... Auszeichnungssprachen ... 531
... 7.2 ... Eigenschaften von XML-Dokumenten ... 533
... 7.3 ... Die Java-APIs für XML ... 544
... 7.4 ... Java Architecture for XML Binding (JAXB) ... 548
... 7.5 ... Serielle Verarbeitung mit StAX ... 570
... 7.6 ... Serielle Verarbeitung von XML mit SAX * ... 582
... 7.7 ... XML-Dateien mit JDOM verarbeiten ... 588
... 7.8 ... Transformationen mit XSLT * ... 610
... 7.9 ... XML-Schema-Validierung * ... 614
... 7.10 ... Zum Weiterlesen ... 615
8 ... Dateiformate ... 617
... 8.1 ... Einfache Dateiformate für strukturierte Daten ... 618
... 8.2 ... Dokumentenformate ... 620
... 8.3 ... Datenkompression * ... 624
... 8.4 ... Bild-Formate ... 640
... 8.5 ... Audio-Dateien ... 640
9 ... Grafische Oberflächen mit Swing ... 645
... 9.1 ... Fenster zur Welt ... 645
... 9.2 ... Beschriftungen (JLabel) ... 653
... 9.3 ... Icon und ImageIcon für Bilder auf Swing-Komponenten ... 657
... 9.4 ... Es tut sich was -- Ereignisse beim AWT ... 661
... 9.5 ... Schaltflächen ... 676
... 9.6 ... Textkomponenten ... 683
... 9.7 ... Swing Action * ... 694
... 9.8 ... JComponent und Component als Basis aller Komponenten ... 697
... 9.9 ... Container ... 711
... 9.10 ... Alles Auslegungssache: die Layoutmanager ... 716
... 9.11 ... Rollbalken und Schieberegler ... 733
... 9.12 ... Kontrollfelder, Optionsfelder, Kontrollfeldgruppen ... 739
... 9.13 ... Fortschritte bei Operationen überwachen * ... 745
... 9.14 ... Menüs und Symbolleisten ... 748
... 9.15 ... Das Model-View-Controller-Konzept ... 765
... 9.16 ... Auswahlmenüs, Listen und Spinner ... 767
... 9.17 ... Tabellen (JTable) ... 789
... 9.18 ... Bäume (JTree) ... 809
... 9.19 ... JRootPane und JDesktopPane * ... 815
... 9.20 ... Dialoge und Window-Objekte ... 818
... 9.21 ... Flexibles Java-Look-and-Feel ... 830
... 9.22 ... Swing-Komponenten neu erstellen oder verändern * ... 833
... 9.23 ... Die Zwischenablage (Clipboard) ... 836
... 9.24 ... Undo durchführen * ... 842
... 9.25 ... AWT, Swing und die Threads ... 844
... 9.26 ... Barrierefreiheit mit der Java Accessibility API ... 854
... 9.27 ... Zeitliches Ausführen mit dem javax.swing.Timer ... 855
... 9.28 ... Die Zusatzkomponentenbibliothek SwingX ... 856
... 9.29 ... Alternativen zu programmierten Oberflächen, AWT und Swing * ... 860
... 9.30 ... Zum Weiterlesen ... 864
10 ... Grafikprogrammierung ... 865
... 10.1 ... Grundlegendes zum Zeichnen ... 865
... 10.2 ... Einfache Zeichenmethoden ... 870
... 10.3 ... Zeichenketten schreiben und Fonts ... 876
... 10.4 ... Geometrische Objekte ... 886
... 10.5 ... Das Innere und Äußere einer Form ... 896
... 10.6 ... Bilder ... 913
... 10.7 ... Weitere Eigenschaften von Graphics * ... 935
... 10.8 ... Drucken * ... 944
... 10.9 ... Benutzerinteraktionen automatisieren, Robot und Screenshots * ... 947
... 10.10 ... Zum Weiterlesen ... 953
11 ... Netzwerkprogrammierung ... 955
... 11.1 ... Grundlegende Begriffe ... 955
... 11.2 ... URI und URL ... 957
... 11.3 ... Die Klasse URLConnection * ... 965
... 11.4 ... Mit GET und POST Daten übergeben * ... 973
... 11.5 ... Host- und IP-Adressen ... 977
... 11.6 ... Mit dem Socket zum Server ... 983
... 11.7 ... Client-Server-Kommunikation ... 989
... 11.8 ... Apache HttpComponents und Commons Net * ... 997
... 11.9 ... Arbeitsweise eines Webservers * ... 998
... 11.10 ... Verbindungen durch einen Proxy-Server * ... 1007
... 11.11 ... Datagram-Sockets * ... 1010
... 11.12 ... E-Mail * ... 1019
... 11.13 ... Tiefer liegende Netzwerkeigenschaften * ... 1031
... 11.14 ... Zum Weiterlesen ... 1033
12 ... Verteilte Programmierung mit RMI ... 1035
... 12.1 ... Entfernte Objekte und Methoden ... 1035
... 12.2 ... Java Remote Method Invocation ... 1038
... 12.3 ... Auf der Serverseite ... 1042
... 12.4 ... Auf der Clientseite ... 1051
... 12.5 ... Entfernte Objekte übergeben und laden ... 1052
... 12.6 ... Weitere Eigenschaften von RMI ... 1053
... 12.7 ... Java Message Service (JMS) ... 1055
... 12.8 ... Zum Weiterlesen ... 1055
13 ... RESTful und SOAP Web-Services ... 1057
... 13.1 ... Web-Services ... 1057
... 13.2 ... RESTful Web-Services ... 1059
... 13.3 ... Daily Soap und das SOAP-Protokoll ... 1071
... 13.4 ... Zum Weiterlesen ... 1078
14 ... JavaServer Pages und Servlets ... 1079
... 14.1 ... Dynamisch generierte Webseiten ... 1079
... 14.2 ... Servlets und JSPs mit Tomcat entwickeln ... 1082
... 14.3 ... Statisches und Dynamisches ... 1090
... 14.4 ... Die Expression Language (EL) ... 1091
... 14.5 ... Formulardaten ... 1094
... 14.6 ... Auf Beans zurückgreifen ... 1096
... 14.7 ... JSP-Tag-Libraries ... 1101
... 14.8 ... Skripting-Elemente in JSPs ... 1105
... 14.9 ... Sitzungsverfolgung (Session Tracking) ... 1109
... 14.10 ... Servlets ... 1111
... 14.11 ... Zum Weiterlesen ... 1120
15 ... Applets ... 1123
... 15.1 ... Applets in der Wiege von Java ... 1123
... 15.2 ... Die Applet-API ... 1127
... 15.3 ... Webstart ... 1137
... 15.4 ... Zum Weiterlesen ... 1137
16 ... Datenbankmanagement mit JDBC ... 1139
... 16.1 ... Relationale Datenbanken ... 1139
... 16.2 ... Datenbanken und Tools ... 1140
... 16.3 ... JDBC und Datenbanktreiber ... 1148
... 16.4 ... Eine Beispielabfrage ... 1152
... 16.5 ... Mit Java an eine Datenbank andocken ... 1159
... 16.6 ... Datenbankabfragen ... 1167
... 16.7 ... Elemente einer Datenbank hinzufügen und aktualisieren ... 1176
... 16.8 ... ResultSet und RowSet * ... 1182
... 16.9 ... Vorbereitete Anweisungen (Prepared Statements) ... 1187
... 16.10 ... Transaktionen ... 1190
... 16.11 ... Metadaten * ... 1190
... 16.12 ... Vorbereitete Datenbankverbindungen ... 1195
... 16.13 ... JPA-Beispiel mit der NetBeans-IDE ... 1199
... 16.14 ... Zum Weiterlesen ... 1205
17 ... Technologien für die Infrastruktur ... 1207
... 17.1 ... Property-Validierung durch Bean Validation ... 1207
... 17.2 ... Wie eine Implementierung an die richtige Stelle kommt ... 1220
... 17.3 ... Zum Weiterlesen ... 1226
18 ... Reflection und Annotationen ... 1227
... 18.1 ... Metadaten ... 1227
... 18.2 ... Metadaten der Klassen mit dem Class-Objekt ... 1228
... 18.3 ... Attribute, Methoden und Konstruktoren ... 1241
... 18.4 ... Objekte erzeugen und manipulieren ... 1253
... 18.5 ... Eigene Annotationstypen * ... 1268
... 18.6 ... Zum Weiterlesen ... 1288
19 ... Dynamische Übersetzung und Skriptsprachen ... 1289
... 19.1 ... Codegenerierung ... 1290
... 19.2 ... Programme mit der Compiler API übersetzen ... 1295
... 19.3 ... Ausführen von Skripten ... 1306
... 19.4 ... Zum Weiterlesen ... 1314
20 ... Logging und Monitoring ... 1315
... 20.1 ... Logging mit Java ... 1315
... 20.2 ... Systemzustände überwachen ... 1324
... 20.3 ... MBean-Typen, MBean-Server und weitere Begriffe ... 1325
... 20.4 ... Geschwätzige Programme und JConsole ... 1328
... 20.5 ... Der MBeanServer ... 1330
... 20.6 ... Eine eigene Standard-MBean ... 1331
... 20.7 ... Zum Weiterlesen ... 1336
21 ... Java Native Interface (JNI) ... 1337
... 21.1 ... Java Native Interface und Invocation-API ... 1337
... 21.2 ... Eine C-Funktion in ein Java-Programm einbinden ... 1338
... 21.3 ... Dynamische Bibliotheken erzeugen ... 1340
... 21.4 ... Nativ die Stringlänge ermitteln ... 1345
... 21.5 ... Erweiterte JNI-Eigenschaften ... 1347
... 21.6 ... Einfache Anbindung von existierenden Bibliotheken ... 1352
... 21.7 ... Invocation-API ... 1353
... 21.8 ... Zum Weiterlesen ... 1354
22 ... Sicherheitskonzepte ... 1355
... 22.1 ... Zentrale Elemente der Java-Sicherheit ... 1355
... 22.2 ... Der Sandkasten (Sandbox) ... 1357
... 22.3 ... Sicherheitsmanager (Security Manager) ... 1358
... 22.4 ... Signierung ... 1368
... 22.5 ... Digitale Unterschriften * ... 1371
... 22.6 ... Verschlüsseln von Daten(-strömen) * ... 1375
... 22.7 ... Zum Weiterlesen ... 1379
23 ... Dienstprogramme für die Java-Umgebung ... 1381
... 23.1 ... Programme des JDK ... 1381
... 23.2 ... Monitoringprogramme vom JDK ... 1381
... 23.3 ... Programmieren mit der Tools-API ... 1390
... 23.4 ... Ant ... 1393
... 23.5 ... Disassembler, Decompiler und Obfuscator ... 1398
... 23.6 ... Weitere Dienstprogramme ... 1408
... 23.7 ... Zum Weiterlesen ... 1410
... Index ... 1411