Muutke küpsiste eelistusi

E-raamat: Java APIs, Extensions and Libraries: With JavaFX, JDBC, jmod, jlink, Networking, and the Process API

  • Formaat: PDF+DRM
  • Ilmumisaeg: 06-Apr-2018
  • Kirjastus: APress
  • Keel: eng
  • ISBN-13: 9781484235461
  • Formaat - PDF+DRM
  • Hind: 110,53 €*
  • * hind on lõplik, st. muud allahindlused enam ei rakendu
  • Lisa ostukorvi
  • Lisa soovinimekirja
  • See e-raamat on mõeldud ainult isiklikuks kasutamiseks. E-raamatuid ei saa tagastada.
  • Formaat: PDF+DRM
  • Ilmumisaeg: 06-Apr-2018
  • Kirjastus: APress
  • Keel: eng
  • ISBN-13: 9781484235461

DRM piirangud

  • Kopeerimine (copy/paste):

    ei ole lubatud

  • Printimine:

    ei ole lubatud

  • Kasutamine:

    Digitaalõiguste kaitse (DRM)
    Kirjastus on väljastanud selle e-raamatu krüpteeritud kujul, mis tähendab, et selle lugemiseks peate installeerima spetsiaalse tarkvara. Samuti peate looma endale  Adobe ID Rohkem infot siin. E-raamatut saab lugeda 1 kasutaja ning alla laadida kuni 6'de seadmesse (kõik autoriseeritud sama Adobe ID-ga).

    Vajalik tarkvara
    Mobiilsetes seadmetes (telefon või tahvelarvuti) lugemiseks peate installeerima selle tasuta rakenduse: PocketBook Reader (iOS / Android)

    PC või Mac seadmes lugemiseks peate installima Adobe Digital Editionsi (Seeon tasuta rakendus spetsiaalselt e-raamatute lugemiseks. Seda ei tohi segamini ajada Adober Reader'iga, mis tõenäoliselt on juba teie arvutisse installeeritud )

    Seda e-raamatut ei saa lugeda Amazon Kindle's. 

This book completes the Apress Java learning journey and is a comprehensive approach to learning Java APIs, extensions, and modules such as Java EE integration, mobile Java modules, JavaFX, and JDBC. In this book, you'll learn how to build user interfaces with Swing and JavaFX as well as how to write network programs with the new Java 9 and much more.

Java APIs, Extensions and Libraries is for Java programmers who are familiar with the fundamentals of the Java language and Java programming, who are now ready to call upon the power of extended Java functionality available from the huge array of Java APIs, extensions, and libraries. After reading and learning from this book you'll be ready to become a professional Java programmer.


What You’ll Learn
  • Extend your Java skills beyond the fundamental object-oriented concepts and core language features
  • Apply Java Swing for building Java front ends 
  • Get started with Java network programming
  • Connect to databases and access data from Java programs using the JDBC API
  • Work with JavaFX, RMI (Remote Method Invocation), and JNI (Java Native Interface)
  • Use the new scripting features of Java

Who This Book Is For

Java programmers who are familiar with the fundamentals of the Java language and Java programming.

About the Author xvii
About the Technical Reviewer xix
Acknowledgments xxi
Introduction xxiii
Chapter 1 Introduction to Swing
1(84)
What Is Swing?
2(1)
The Simplest Swing Program
3(4)
Components of a JFrame
7(2)
Adding Components to a JFrame
9(4)
Some Utility Classes
13(2)
The Point Class
13(1)
The Dimension Class
13(1)
The Insets Class
14(1)
The Rectangle Class
14(1)
Layout Managers
15(55)
FlowLayout
16(5)
BorderLayout
21(3)
CardLayout
24(2)
BoxLayout
26(5)
GridLayout
31(2)
GridBagLayout
33(18)
SpringLayout
51(8)
GroupLayout
59(9)
The null Layout Manager
68(2)
Creating a Reusable JFrame
70(2)
Event Handling
72(7)
Handling Mouse Events
79(3)
Summary
82(3)
Chapter 2 Swing Components
85(120)
What Is a Swing Component?
85(5)
JButton
90(5)
JPanel
95(1)
JLabel
96(1)
Text Components
97(30)
JTextComponent
100(2)
JTextField
102(5)
JPasswordField
107(1)
JFormattedTextField
108(3)
JTextArea
111(3)
JEditorPane
114(5)
JTextPane
119(8)
Validating Text Input
127(1)
Making Choices
128(9)
JSpinner
137(2)
JScrollBar
139(1)
JScrollPane
140(2)
JProgressBar
142(1)
JSIider
143(2)
JSeparator
145(1)
Menus
145(8)
JToolBar
153(3)
JToolBar Meets the Action Interface
156(1)
JTable
157(6)
JTree
163(6)
JTabbedPane and JSplitPane
169(2)
Custom Dialogs
171(3)
Standard Dialogs
174(7)
File and Color Choosers
181(5)
JFileChooser
181(4)
JColorChooser
185(1)
JWindow
186(1)
Working with Colors
186(1)
Working with Borders
187(3)
Working with Fonts
190(2)
Validating Components
192(1)
Painting Components and Drawing Shapes
193(5)
Immediate Painting
198(1)
Double Buffering
198(2)
JFrame Revisited
200(2)
Summary
202(3)
Chapter 3 Advanced Swing
205(48)
Using HTML in Swing Components
206(1)
Threading Model in Swing
207(8)
Pluggable Look and Feel
215(6)
Drag and Drop
221(8)
Multiple Document Interface Application
229(3)
The Toolkit Class
232(2)
Decorating Components Using JLayer
234(7)
Translucent Windows
241(6)
Shaped Window
247(3)
Summary
250(3)
Chapter 4 Network Programming
253(94)
What Is Network Programming?
253(2)
Network Protocol Suite
255(3)
IP Addressing Scheme
258(4)
IPv4 Addressing Scheme
258(3)
IPv6 Addressing Scheme
261(1)
Special IP Addresses
262(3)
Loopback IP Address
262(1)
Unicast IP Address
263(1)
Multicast IP Address
264(1)
Anycast IP Address
264(1)
Broadcast IP Address
264(1)
Unspecified IP Address
265(1)
Port Numbers
265(1)
Socket API and Client-Server Paradigm
266(4)
The Socket Primitive
268(1)
The Bind Primitive
268(1)
The Listen Primitive
269(1)
The Accept Primitive
269(1)
The Connect Primitive
269(1)
The Send/Sendto Primitive
270(1)
The Receive/ReceiveFrom Primitive
270(1)
The Close Primitive
270(1)
Representing a Machine Address
270(3)
Representing a Socket Address
273(1)
Creating a TCP Server Socket
274(4)
Creating a TCP Client Socket
278(2)
Putting a TCP Server and Clients Together
280(1)
Working with UDP Sockets
281(3)
Creating a UDP Echo Server
284(4)
A Connected UDP Socket
288(1)
UDP Multicast Sockets
289(3)
URI, URL, and URN
292(3)
URI and URL as Java Objects
295(4)
Accessing the Contents of a URL
299(7)
Non-Blocking Socket Programming
306(12)
Socket Security Permissions
318(1)
Asynchronous Socket Channels
319(13)
Setting Up an Asynchronous Server Socket Channel
320(7)
Setting Up an Asynchronous Client Socket Channel
327(3)
Putting the Server and the Client Together
330(2)
Datagram-Oriented Socket Channels
332(5)
Creating the Datagram Channel
332(1)
Setting the Channel Options
332(2)
Sending Datagrams
334(3)
Multicasting Using Datagram Channels
337(6)
Creating the Datagram Channel
337(1)
Setting the Channel Options
337(1)
Binding the Channel
337(1)
Setting the Multicast Network Interface
338(1)
Joining the Multicast Group
339(1)
Receiving a Message
340(1)
Closing the Channel
340(3)
Further Reading
343(1)
Summary
343(4)
Chapter 5 JDBC API
347(142)
What Is the JDBC API?
348(1)
System Requirements
348(1)
Types of JDBC Drivers
349(1)
JDBC Native API Driver
349(1)
JDBC-Net Driver
349(1)
JDBC Driver
350(1)
A Brief Overview of Apache Derby
350(5)
Downloading Derby
350(1)
Installing Derby
350(1)
Derby Installation Files
350(1)
Configuring Derby
351(1)
Running the Derby Server
351(4)
Creating a Database Table
355(2)
Oracle Database
356(1)
Adaptive Server Anywhere Database
356(1)
SQL Server Database
356(1)
DB2 Database
356(1)
MySQL Database
357(1)
Apache Derby Database
357(1)
Connecting to a Database
357(12)
Obtaining the JDBC Driver
357(1)
Setting Up the Module Path
358(1)
Registering a JDBC Driver
358(2)
Constructing a Connection URL
360(4)
Establishing the Database Connection
364(5)
Setting the Auto-Commit Mode
369(1)
Committing and Rolling Back Transactions
369(1)
Transaction Isolation Level
370(2)
Dirty Read
370(1)
Non-Repeatable Read
370(1)
Phantom Read
371(1)
JDBC-Types-to-Java-Types Mapping
372(3)
Knowing About the Database
375(2)
Executing SQL Statements
377(25)
Results of Executing a SQL Statement
378(1)
Using the Statement Interface
379(7)
Using the PreparedStatement Interface
386(3)
CallableStatement Interface
389(13)
Processing Result Sets
402(19)
What Is a ResultSet?
402(4)
Getting a ResultSet
406(6)
Getting the Number of Rows in a ResultSet
412(3)
Bidirectional Scrollable ResultSets
415(2)
Scrolling Through Rows of a ResultSet
417(3)
Knowing the Cursor Position in a ResultSet
420(1)
Closing a ResultSet
420(1)
Making Changes to a ResultSet
421(5)
Inserting a Row Using a ResultSet
421(2)
Updating a Row Using a ResultSet
423(3)
Deleting a Row Using a ResultSet
426(1)
Handling Multiple Results from a Statement
426(2)
Getting a Result Set from a Stored Procedure
428(7)
MySQL Database
429(1)
Adaptive Server Anywhere Database
429(1)
Oracle Database
429(1)
SQL Server Database
430(1)
DB2 Database
430(1)
Apache Derby Database
431(4)
ResultSetMetaData
435(2)
Using RowSets
437(25)
Creating a RowSet
440(22)
Working with a Large Object (LOB)
462(10)
Retrieving LOB Data
464(1)
Creating a LOB Data
465(7)
Batch Updates
472(6)
Savepoints in a Transaction
478(3)
Using a DataSource
481(2)
Retrieving SQL Warnings
483(1)
Enabling JDBC Trace
484(1)
Summary
484(5)
Chapter 6 Java Remote Method Invocation
489(26)
What Is Java Remote Method Invocation?
490(1)
The RMI Architecture
491(2)
Developing an RMI Application
493(7)
Writing the Remote Interface
493(1)
Implementing the Remote Interface
494(2)
Writing the RMI Server Program
496(3)
Writing the RMI Client Program
499(1)
Separating the Server and Client Code
500(1)
Generating Stub and Skeleton
500(1)
Running the RMI Application
501(3)
Running the RMI Registry
502(1)
Running the RMI Server
503(1)
Running an RMI Client Program
503(1)
Troubleshooting an RMI Application
504(3)
java.rmi.StubNotFoundException
504(1)
java.rmi.server.ExportException
505(1)
java.security.AccessControlException
505(1)
java.lang.ClassNotFoundException
506(1)
Debugging an RMI Application
507(1)
Dynamic Class Downloading
508(1)
Garbage Collection of Remote Objects
509(3)
Summary
512(3)
Chapter 7 Java Native Interface
515(46)
What Is the Java Native Interface?
515(1)
System Requirements
516(1)
Getting Started with the JNI
517(11)
Writing the Java Program
517(4)
Compiling the Java Program
521(1)
Creating the C/C++ Header File
521(2)
Writing the C/C++ Program
523(1)
Creating a Shared Library
524(3)
Running the Java Program
527(1)
Native Function Naming Rules
528(3)
Data Type Mapping
531(1)
Using JNI Functions in C/C++
532(1)
Working with Strings
533(3)
Working with Arrays
536(4)
Accessing Java Objects in Native Code
540(9)
Getting a Class Reference
540(1)
Accessing Fields and Methods of a Java Object/Class
541(6)
Creating Java Objects
547(2)
Exception Handling
549(3)
Handle the Exception in Native Code
550(1)
Handling the Exception in Java Code
551(1)
Throwing a New Exception from Native Code
551(1)
Creating an Instance of the JVM
552(5)
Synchronization in Native Code
557(1)
Summary
558(3)
Chapter 8 Introduction to JavaFX
561(90)
What Is JavaFX?
561(2)
History of JavaFX
563(1)
System Requirements
564(1)
The JavaFX Modules
564(1)
JavaFX Source Code
565(1)
JavaFX API Documentation
565(1)
Your First JavaFX Application
565(7)
Creating the HelloJavaFX Class
565(1)
Overriding the start() Method
566(1)
Showing the Stage
567(1)
Launching the Application
568(2)
Adding the main() Method
570(1)
Adding a Scene to the Stage
570(2)
Improving Your First JavaFX Application
572(2)
The Lifecycle of a JavaFX Application
574(2)
Terminating a JavaFX Application
576(1)
What Are Properties and Bindings?
576(1)
Properties and Bindings in JavaFX
577(18)
Using Properties in JavaFX Beans
580(4)
Handling Property Invalidation Events
584(2)
Handling Property Change Events
586(3)
Property Bindings in JavaFX
589(6)
Observable Collections
595(3)
Event Handling
598(9)
Event Processing Mechanism
599(3)
Creating Event Filters and Handlers
602(1)
Registering Event Filters and Handlers
603(4)
Layout Panes
607(7)
Controls
614(6)
Using 2D Shapes
620(4)
Drawing on a Canvas
624(2)
Applying Effects
626(3)
Applying Transformations
629(3)
Animation
632(5)
Using the Timeline Animation
634(3)
FXML
637(5)
Printing
642(5)
Summary
647(4)
Chapter 9 Scripting in Java
651(84)
What Is Scripting in Java?
651(2)
Executing Your First Script
653(2)
Using Other Scripting Languages
655(3)
Exploring the javax.script Package
658(2)
The ScriptEngine and ScriptEngineFactory Interfaces
658(1)
The AbstractScriptEngine Class
658(1)
The ScriptEngineManager Class
658(1)
The Compilable Interface and the CompiledScript Class
658(1)
The Invocable Interface
658(1)
The Bindings Interface and the SimpleBindings Class
659(1)
The ScriptContext Interface and the SimpleScriptContext Class
659(1)
The ScriptException Class
659(1)
Discovering and Instantiating Script Engines
659(1)
Executing Scripts
660(2)
Passing Parameters
662(3)
Passing Parameters from Java Code to Scripts
662(2)
Passing Parameters from Scripts to Java Code
664(1)
Advanced Parameter Passing Techniques
665(12)
Bindings
665(1)
Scope
666(1)
Defining the Script Context
667(4)
Putting Them Together
671(6)
Using a Custom ScriptContext
677(3)
Return Value of the eval() Method
680(1)
Reserved Keys for Engine Scope Bindings
681(1)
Changing the Default ScriptContext
682(1)
Sending Script Output to a File
683(1)
Invoking Procedures in Scripts
684(3)
Implementing Java Interfaces in Scripts
687(4)
Using Compiled Scripts
691(2)
Using Java in Scripting Languages
693(14)
Declaring Variables
694(1)
Importing Java Classes
694(3)
Creating and Using Java Objects
697(1)
Using Overloaded Java Methods
698(2)
Using Java Arrays
700(3)
Extending Java Classes and Implementing Interfaces
703(3)
Using Lambda Expressions
706(1)
Implementing a Script Engine
707(12)
The Expression Class
708(5)
The JKScriptEngine Class
713(2)
The JKScriptEngineFactory Class
715(1)
Packaging the JKScript Files
716(1)
Using the JKScript Script Engine
717(2)
The jrunscript Command-Line Shell
719(5)
The Syntax
719(2)
Execution Modes of the Shell
721(1)
Listing Available Script Engines
722(1)
Adding a Script Engine to the Shell
722(1)
Using Other Script Engines
723(1)
Passing Arguments to Scripts
723(1)
The jjs Command-Line Tool
724(5)
JavaFX in Nashorn
729(3)
Summary
732(3)
Chapter 10 Process API
735(28)
What Is the Process API?
735(2)
Knowing the Runtime Environment
737(1)
The Current Process
738(1)
Querying Process State
739(3)
Comparing Processes
742(1)
Creating a Process
743(12)
Obtaining a Process Handle
755(2)
Terminating Processes
757(1)
Managing Process Permissions
758(2)
Summary
760(3)
Chapter 11 Packaging Modules
763(20)
The JAR Format
763(11)
What Is a Multi-Release JAR?
764(1)
Creating Multi-Release JARs
765(6)
Rules for Multi-Release JARs
771(2)
Multi-Release JARs and JAR URL
773(1)
Multi-Release Manifest Attribute
773(1)
The JMOD Format
774(6)
Using the jmod Tool
774(6)
Summary
780(3)
Chapter 12 Custom Runtime Images
783(14)
What Is a Custom Runtime Image?
783(1)
No More rt.jar
784(1)
Creating Custom Runtime Images
784(4)
Binding Services
788(2)
Using Plugins with the jlink Tool
790(3)
The jimage Tool
793(2)
Summary
795(2)
Index 797
Kishori Sharan has earned a Master of Science in Computer Information Systems degree from Troy State University, Alabama. He is a Sun Certified Java 2 programmer. He has vast experience in providing training to professional developers in Java, JSP, EJB, and Web technology. He possesses over ten years of experience in implementing enterprise level Java application.