Java. Techniki zaawansowane. Wydanie VIII - Helion
Tytuł oryginału: Core Java(tm), Volume II--Advanced Features: Eighth Edition
Tłumaczenie: Jaromir Senczyk
ISBN: 978-83-246-1483-7
stron: 1064, Format: 172x245, okładka: twarda
Data wydania: 2009-02-04
Księgarnia: Helion
Cena książki: 129,00 zł
- Jak wykorzystać strumienie?
- Jak stworzyć efektowny interfejs użytkownika?
- Jak zapewnić bezpieczeństwo w tworzonych aplikacjach?
Co spowodowało, że język programowania Java zyskał tak wielką popularność? Przyczyn jest kilka: możliwość przenoszenia kodu między programami, wydajność i to, co programiści lubią najbardziej - mechanizm automatycznego oczyszczania pamięci. Nie bez znaczenia jest również to, że Java jest językiem zorientowanym obiektowo, udostępnia obsługę programowania rozproszonego oraz świetną dokumentację. Ponadto liczne publikacje oraz pomocna społeczność sprawiają, że Java zajmuje poczesne miejsce wśród innych języków programowania.
Kolejne wydanie książki "Java. Techniki zaawansowane. Wydanie VIII" zostało zaktualizowane o wszystkie te elementy, które pojawiły się w wersji szóstej platformy Java Standard Edition. Dzięki tej książce dowiesz się, w jaki sposób wykorzystać strumienie, jak parsować dokumenty XML czy też w jaki sposób tworzyć aplikacje sieciowe. Poznasz interfejs JDBC, sposób wykorzystania transakcji oraz wykonywania zapytań SQL. Autorzy w szczegółowy sposób pokażą Ci, jak tworzyć aplikacje z wykorzystaniem biblioteki Swing. Dodatkowo przedstawią, w jaki sposób zapewnić bezpieczeństwo w tworzonych przez Ciebie aplikacjach. Wszystkie te - oraz wiele innych - zagadnienia zostaną przedstawione w przystępny i sprawdzony sposób!
- Wykorzystanie strumieni
- Dokumenty XML i ich wykorzystanie w języku Java
- Programowanie aplikacji sieciowych
- Wykorzystanie interfejsu JDBC
- Tworzenie aplikacji wielojęzycznych
- Możliwości pakietu Swing
- Wykorzystanie biblioteki AWT
- Bezpieczeństwo w aplikacjach
- Zastosowanie podpisu cyfrowego
- Sposoby wykorzystania obiektów rozproszonych (RMI)
Wykorzystaj zaawansowane możliwości języka Java w swoich projektach!
Osoby które kupowały "Java. Techniki zaawansowane. Wydanie VIII", wybierały także:
- Wprowadzenie do Javy. Programowanie i struktury danych. Wydanie XII 193,23 zł, (59,90 zł -69%)
- Spring i Spring Boot. Kurs video. Testowanie aplikacji i bezpiecze 129,00 zł, (51,60 zł -60%)
- Metoda dziel i zwyci 89,00 zł, (35,60 zł -60%)
- JavaFX. Kurs video. Wzorce oraz typy generyczne 79,00 zł, (31,60 zł -60%)
- Platforma Xamarin. Kurs video. Poziom drugi. Zaawansowane techniki tworzenia aplikacji cross-platform 99,00 zł, (39,60 zł -60%)
Spis treści
Java. Techniki zaawansowane. Wydanie VIII -- spis treści
Przedmowa (11)
Podziękowania (15)
Rozdział 1. Strumienie i pliki (17)
- Strumienie (17)
- Odczyt i zapis bajtów (18)
- Zoo pełne strumieni (20)
- Łączenie filtrów strumieni (24)
- Strumienie tekstowe (27)
- Zapisywanie tekstu (28)
- Wczytywanie tekstu (31)
- Zapis obiektów w formacie tekstowym (31)
- Zbiory znaków (35)
- Odczyt i zapis danych binarnych (40)
- Strumienie plików o swobodnym dostępie (43)
- Strumienie plików ZIP (48)
- Strumienie obiektów i serializacja (55)
- Format pliku serializacji obiektów (61)
- Modyfikowanie domyślnego mechanizmu serializacji (67)
- Serializacja singletonów i wyliczeń (70)
- Wersje (71)
- Serializacja w roli klonowania (73)
- Zarządzanie plikami (75)
- Ulepszona obsługa wejścia i wyjścia (82)
- Mapowanie plików w pamięci (82)
- Struktura bufora danych (89)
- Blokowanie plików (91)
- Wyrażenia regularne (93)
Rozdział 2. Język XML (103)
- Wprowadzenie do języka XML (104)
- Struktura dokumentu XML (106)
- Parsowanie dokumentów XML (109)
- Kontrola poprawności dokumentów XML (120)
- Definicje typów dokumentów (122)
- XML Schema (129)
- Praktyczny przykład (131)
- Wyszukiwanie informacji i XPath (145)
- Przestrzenie nazw (151)
- Parsery strumieniowe (154)
- Wykorzystanie parsera SAX (154)
- Wykorzystanie parsera StAX (159)
- Tworzenie dokumentów XML (163)
- Tworzenie dokumentu XML za pomocą parsera StAX (167)
- Przekształcenia XSL (174)
Rozdział 3. Programowanie aplikacji sieciowych (185)
- Połączenia z serwerem (185)
- Limity czasu gniazd (190)
- Adresy internetowe (191)
- Implementacja serwerów (193)
- Obsługa wielu klientów (196)
- Połączenia częściowo zamknięte (200)
- Przerywanie działania gniazd sieciowych (201)
- Wysyłanie poczty elektronicznej (207)
- Połączenia wykorzystujące URL (212)
- URL i URI (212)
- Zastosowanie klasy URLConnection do pobierania informacji (214)
- Wysyłanie danych do formularzy (224)
Rozdział 4. Połączenia do baz danych: JDBC (233)
- Architektura JDBC (234)
- Typy sterowników JDBC (235)
- Typowe zastosowania JDBC (236)
- Język SQL (237)
- Instalacja JDBC (243)
- Adresy URL baz danych (243)
- Pliki JAR zawierające sterownik (244)
- Uruchamianie bazy danych (244)
- Rejestracja klasy sterownika (245)
- Nawiązywanie połączenia z bazą danych (246)
- Wykonywanie poleceń języka SQL (248)
- Zarządzanie połączeniami, poleceniami i zbiorami wyników (251)
- Analiza wyjątków SQL (252)
- Wypełnianie bazy danych (255)
- Wykonywanie zapytań (258)
- Polecenia przygotowane (259)
- Odczyt i zapis dużych obiektów (267)
- Sekwencje sterujące (269)
- Zapytania o wielu zbiorach wyników (270)
- Pobieranie wartości kluczy wygenerowanych automatycznie (271)
- Przewijalne i aktualizowalne zbiory wyników zapytań (272)
- Przewijalne zbiory wyników (272)
- Aktualizowalne zbiory rekordów (274)
- Zbiory rekordów (279)
- Buforowane zbiory rekordów (279)
- Metadane (282)
- Transakcje (292)
- Punkty kontrolne (293)
- Aktualizacje wsadowe (293)
- Zaawansowane typy języka SQL (295)
- Zaawansowane zarządzanie połączeniami (297)
- Wprowadzenie do LDAP (298)
- Konfiguracja serwera LDAP (299)
- Dostęp do informacji katalogu LDAP (303)
Rozdział 5. Internacjonalizacja (315)
- Lokalizatory (316)
- Formaty liczb (321)
- Waluty (326)
- Data i czas (328)
- Porządek alfabetyczny (335)
- Moc uporządkowania (337)
- Rozkład (337)
- Formatowanie komunikatów (343)
- Formatowanie z wariantami (345)
- Pliki tekstowe i zbiory znaków (347)
- Internacjonalizacja a pliki źródłowe programów (347)
- Komplety zasobów (348)
- Lokalizacja zasobów (349)
- Pliki właściwości (350)
- Klasy kompletów zasobów (351)
- Kompletny przykład (353)
Rozdział 6. Zaawansowane możliwości pakietu Swing (367)
- Listy (367)
- Komponent JList (368)
- Modele list (374)
- Wstawianie i usuwanie (379)
- Odrysowywanie zawartości listy (381)
- Tabele (386)
- Najprostsze tabele (386)
- Modele tabel (390)
- Wiersze i kolumny (394)
- Drzewa (421)
- Najprostsze drzewa (422)
- Przeglądanie węzłów (438)
- Rysowanie węzłów (440)
- Nasłuchiwanie zdarzeń w drzewach (443)
- Własne modele drzew (450)
- Komponenty tekstowe (458)
- Śledzenie zmian zawartości komponentów tekstowych (459)
- Sformatowane pola wejściowe (463)
- Komponent JSpinner (479)
- Prezentacja HTML za pomocą JEditorPane (487)
- Wskaźniki postępu (494)
- Paski postępu (494)
- Monitory postępu (498)
- Monitorowanie postępu strumieni wejścia (501)
- Organizatory komponentów (507)
- Panele dzielone (507)
- Panele z zakładkami (511)
- Panele pulpitu i ramki wewnętrzne (518)
- Rozmieszczenie kaskadowe i sąsiadujące (521)
- Zgłaszanie weta do zmiany właściwości (529)
Rozdział 7. Zaawansowane możliwości biblioteki AWT (537)
- Potokowe tworzenie grafiki (538)
- Figury (540)
- Wykorzystanie klas obiektów graficznych (542)
- Pola (555)
- Ślad pędzla (556)
- Wypełnienia (564)
- Przekształcenia układu współrzędnych (566)
- Przycinanie (571)
- Przezroczystość i składanie obrazów (573)
- Wskazówki operacji graficznych (581)
- Czytanie i zapisywanie plików graficznych (587)
- Wykorzystanie obiektów zapisu i odczytu plików graficznych (588)
- Odczyt i zapis plików zawierających sekwencje obrazów (592)
- Operacje na obrazach (598)
- Dostęp do danych obrazu (598)
- Filtrowanie obrazów (604)
- Drukowanie (613)
- Drukowanie grafiki (614)
- Drukowanie wielu stron (623)
- Podgląd wydruku (624)
- Usługi drukowania (633)
- Usługi drukowania za pośrednictwem strumieni (637)
- Atrybuty drukowania (638)
- Schowek (644)
- Klasy i interfejsy umożliwiające przekazywanie danych (645)
- Przekazywanie tekstu (646)
- Interfejs Transferable i formaty danych (650)
- Przekazywanie obrazów za pomocą schowka (652)
- Wykorzystanie lokalnego schowka do przekazywania referencji obiektów (657)
- Wykorzystanie schowka systemowego do przekazywania obiektów Java (657)
- Zastosowanie lokalnego schowka do przekazywania referencji obiektów (661)
- Mechanizm "przeciągnij i upuść" (662)
- Przekazywanie danych pomiędzy komponentami Swing (664)
- Źródła przeciąganych danych (667)
- Cele upuszczanych danych (670)
- Integracja z macierzystą platformą (678)
- Ekran powitalny (678)
- Uruchamianie macierzystych aplikacji pulpitu (683)
- Zasobnik systemowy (688)
Rozdział 8. JavaBeans (693)
- Dlaczego ziarnka? (694)
- Proces tworzenia ziarnek JavaBeans (696)
- Wykorzystanie ziarnek do tworzenia aplikacji (698)
- Umieszczanie ziarnek w plikach JAR (699)
- Korzystanie z ziarnek (700)
- Wzorce nazw właściwości ziarnek i zdarzeń (705)
- Typy właściwości ziarnek (709)
- Właściwości proste (709)
- Właściwości indeksowane (710)
- Właściwości powiązane (710)
- Właściwości ograniczone (712)
- Klasa informacyjna ziarnka (719)
- Edytory właściwości (722)
- Implementacja edytora właściwości (726)
- Indywidualizacja ziarnka (733)
- Implementacja klasy indywidualizacji (735)
- Trwałość ziarnek JavaBeans (742)
- Zastosowanie mechanizmu trwałości JavaBeans dla dowolnych danych (746)
- Kompletny przykład zastosowania trwałości JavaBeans (752)
Rozdział 9. Bezpieczeństwo (763)
- Ładowanie klas (764)
- Hierarchia klas ładowania (766)
- Zastosowanie procedur ładujących w roli przestrzeni nazw (768)
- Implementacja własnej procedury ładującej (769)
- Weryfikacja kodu maszyny wirtualnej (774)
- Menedżery bezpieczeństwa i pozwolenia (779)
- Bezpieczeństwo na platformie Java (781)
- Pliki polityki bezpieczeństwa (784)
- Tworzenie własnych klas pozwoleń (790)
- Implementacja klasy pozwoleń (792)
- Uwierzytelnianie użytkowników (798)
- Moduły JAAS (804)
- Podpis cyfrowy (813)
- Skróty wiadomości (814)
- Podpisywanie wiadomości (820)
- Certyfikaty X.509 (822)
- Weryfikacja podpisu (823)
- Problem uwierzytelniania (825)
- Podpisywanie certyfikatów (827)
- Żądania certyfikatu (829)
- Podpisywanie kodu (830)
- Podpisywanie plików JAR (830)
- Certyfikaty twórców oprogramowania (835)
- Szyfrowanie (837)
- Szyfrowanie symetryczne (837)
- Generowanie klucza (839)
- Strumienie szyfrujące (843)
- Szyfrowanie kluczem publicznym (844)
Rozdział 10. Obiekty rozproszone (851)
- Role klienta i serwera (852)
- Wywołania zdalnych metod (854)
- Namiastka i szeregowanie parametrów (854)
- Model programowania RMI (856)
- Interfejsy i implementacje (856)
- Rejestr RMI (858)
- Przygotowanie wdrożenia (861)
- Rejestrowanie aktywności RMI (864)
- Parametry zdalnych metod i wartości zwracane (866)
- Przekazywanie obiektów zdalnych (866)
- Przekazywanie obiektów, które nie są zdalne (866)
- Dynamiczne ładowanie klas (868)
- Zdalne referencje obiektów o wielu interfejsach (873)
- Zdalne obiekty i metody equals, hashCode oraz clone (874)
- Aktywacja zdalnych obiektów (874)
- Usługi sieciowe i JAX-WS (880)
- Stosowanie JAX-WS (881)
- Klient usługi Web (884)
- Usługa Amazon (886)
Rozdział 11. Skrypty, kompilacja i adnotacje (893)
- Skrypty na platformie Java (893)
- Wybór silnika skryptów (894)
- Przekierowanie wejścia i wyjścia (897)
- Wywoływanie funkcji i metod skryptów (898)
- Kompilacja skryptu (900)
- Przykład: skrypty i graficzny interfejs użytkownika (901)
- Interfejs kompilatora (905)
- Kompilacja w najprostszy sposób (906)
- Stosowanie zadań kompilacji (906)
- Przykład: dynamiczne tworzenie kodu w języku Java (911)
- Stosowanie adnotacji (916)
- Przykład - adnotacje obsługi zdarzeń (918)
- Składnia adnotacji (922)
- Adnotacje standardowe (926)
- Adnotacje kompilacji (927)
- Adnotacje zarządzania zasobami (928)
- Metaadnotacje (928)
- Przetwarzanie adnotacji w kodzie źródłowym (931)
- Inżynieria kodu bajtowego (937)
- Modyfikacja kodu bajtowego podczas ładowania (943)
Rozdział 12. Metody macierzyste (947)
- Wywołania funkcji języka C z programów w języku Java (948)
- Numeryczne parametry metod i wartości zwracane (954)
- Wykorzystanie funkcji printf do formatowania liczb (955)
- Łańcuchy znaków jako parametry (956)
- Dostęp do składowych obiektu (961)
- Dostęp do pól instancji (962)
- Dostęp do pól statycznych (965)
- Sygnatury (966)
- Wywoływanie metod języka Java (967)
- Wywoływanie metod obiektów (968)
- Wywoływanie metod statycznych (972)
- Konstruktory (973)
- Alternatywne sposoby wywoływania metod (973)
- Tablice (975)
- Obsługa błędów (978)
- Interfejs programowy wywołań języka Java (983)
- Kompletny przykład: dostęp do rejestru systemu Windows (988)
- Rejestr systemu Windows (988)
- Interfejs dostępu do rejestru na platformie Java (990)
- Implementacja dostępu do rejestru za pomocą metod macierzystych (990)
Skorowidz (1005)