Book description
Working as an effective professional Java developer requires you to know Java APIs, tools, and techniques to solve a wide variety of Java problems. Building upon Ivor Horton's Beginning Java 2, this resource shows you how to use the core features of the latest JDK as well as powerful open source tools such as Ant, JUnit, and Hibernate. It will arm you with a well-rounded understanding of the professional Java development landscape.
The expert author team begins by uncovering the sophisticated Java language features, the methodology for developing solutions, and steps for exploiting patterns. They then provide you with a collection of real-world examples that will become an essential part of your developer's toolkit. With this approach, you'll gain the skills to build advanced solutions by utilizing the more complex and nuanced parts of Java JDK 6.
What you will learn from this book
How to use tools to make your work easier and more productive
Methods to develop effective user interfaces with Java Foundation Classes (JFC)
Steps to build web applications using the Model 1 and Model 2 architectures
Ways to interact with the databases and XML using JDBC and JAXB
Techniques for developing enterprise applications using EJB 3.0 and web services
How to package and deploy Java applications
Who this book is for
This book is for Java developers who are looking for an all-purpose resource, are ready for more advanced Java solutions and language features, and need assistance when tackling new Java problems that may be outside their technological experience.
Wrox Professional guides are planned and written by working programmers to meet the real-world needs of programmers, developers, and IT professionals. Focused and relevant, they address the issues technology professionals face every day. They provide examples, practical solutions, and expert education in new technologies, all designed to help programmers do a better job.
Table of contents
- Copyright
- About the Authors
- Credits
- Acknowledgments
-
Introduction
- Who This Book Is For
- What This Book Covers
-
How This Book Is Structured
- Part I: Thinking Like a Java Developer
-
Part II: A Broad Understanding of Java APIs, Tools, and Techniques
- Chapter 4: Developing Effective User Interfaces with JFC
- Chapter 5: Persisting Your Application Using Files
- Chapter 6: Persisting Your Application Using Databases
- Chapter 7: Developing Web Applications Using the Model 1 Architecture
- Chapter 8: Developing Web Applications Using the Model 2 Architecture
- Chapter 9: Interacting with C/C++ Using Java Native Interface
- Chapter 10: EJB 3 and the Java Persistence API
- Chapter 11: Communicating between Java Components and Components of Other Platforms
- Chapter 12: Service Oriented Integration
- Chapter 13: Java Security
- Chapter 14: Packaging and Deploying Your Java Applications
- What You Need to Use This Book
- Conventions
- Source Code
- Errata
- p2p.wrox.com
-
I. Thinking Like a Java Developer
-
1. Key Java Language Features and Libraries
- 1.1. Introducing Derby
- 1.2. Using Derby
- 1.3. Language Features Added in Java 5
-
1.4. Important Java Utility Libraries
-
1.4.1. Java Logging
- 1.4.1.1. The Log Manager
- 1.4.1.2. The LogRecord Class
- 1.4.1.3. LogRecord Methods
- 1.4.1.4. The Level Class
- 1.4.1.5. The Handler Class
- 1.4.1.6. The Formatter Class
- 1.4.1.7. Stock Formatters
- 1.4.1.8. Creating Your Own Formatter
- 1.4.1.9. The Filter Interface
- 1.4.1.10. Creating Your Own Filter
- 1.4.1.11. The ErrorManager
- 1.4.1.12. Logging Examples
- 1.4.1.13. Regular Expressions
- 1.4.1.14. The Pattern Class
- 1.4.1.15. The Matcher Class
- 1.4.1.16. The MatchResult Interface
- 1.4.1.17. Regular Expression Example
- 1.4.2. Java Preferences
-
1.4.1. Java Logging
- 1.5. Summary
-
2. Tools and Techniques for Developing Java Solutions
- 2.1. Principles of Quality Software Development
-
2.2. Habits of Effective Software Development
- 2.2.1. Communicate
- 2.2.2. Model
- 2.2.3. Be Agile
- 2.2.4. Be Disciplined
- 2.2.5. Trace Your Actions to Need
- 2.2.6. Don't Be Afraid to Write Code
- 2.2.7. Think of Code as a Design, not a Product
- 2.2.8. Read a Lot
- 2.2.9. Build Your Process from the Ground Up
- 2.2.10. Manage Your Configuration
- 2.2.11. Unit Test Your Code
- 2.2.12. Continuously Integrate
- 2.2.13. Maintaining Short Iterations
- 2.2.14. Measure What You Accomplished—Indirectly
- 2.2.15. Track Your Issues
- 2.3. Development Methodology
- 2.4. Practical Development Scenarios
- 2.5. Summary
-
3. Exploiting Patterns in Java
- 3.1. Why Patterns Are Important
- 3.2. Building Patterns with Design Principles
- 3.3. Important Java Patterns
- 3.4. Summary
-
1. Key Java Language Features and Libraries
-
II. A Broad Understanding of Java APIs, Tools, and Techniques
- 4. Developing Effective User Interfaces with JFC
-
5. Persisting Your Application Using Files
- 5.1. Application Data
-
5.2. Java Serialization: Persisting Object Graphs
- 5.2.1. Key Classes
- 5.2.2. Serializing Your Objects
- 5.2.3. Extending and Customizing Serialization
- 5.2.4. When to Use Java Serialization
- 5.3. JavaBeans Long-Term Serialization: XMLEncoder/Decoder
-
5.4. Flexible XML Serialization: Java API for XML Binding (JAXB)
- 5.4.1. Sample XML Document for the Configuration Object
- 5.4.2. Defining Your XML Format with an XML Schema
- 5.4.3. JAXB API Key Classes
- 5.4.4. Marshalling and Unmarshalling XML Data
- 5.4.5. Creating New XML Content with JAXB-Generated Classes
- 5.4.6. Using JAXB-Generated Classes in Your Application
- 5.4.7. Annotating Existing Java Classes for Use with JAXB
- 5.4.8. When to Use JAXB
- 5.4.9. Where JAXB Fits in the JDK
- 5.5. Summary
-
6. Persisting Your Application Using Databases
- 6.1. JDBC API Overview
- 6.2. Setting Up Your Environment
- 6.3. JDBC API Usage in the Real World
-
6.4. Effectively Using JDBC 4.0
- 6.4.1. Overview
- 6.4.2. Managing Connections
- 6.4.3. Understanding Statements
- 6.4.4. Utilizing Result Sets
- 6.4.5. Advanced Concepts
- 6.5. Hibernate
- 6.6. Summary
- 7. Developing Web Applications Using the Model 1 Architecture
-
8. Developing Web Applications Using the Model 2 Architecture
- 8.1. The Problem
- 8.2. What Is Model 2?
- 8.3. Why Use Model 2?
-
8.4. Developing an Application with WebWork
- 8.4.1. What Is Inversion of Control and Why Is it Useful?
- 8.4.2. Architecture
- 8.4.3. Extending the Framework to Support Hibernate
- 8.4.4. Preventing the Hanging Session
- 8.4.5. Defining Your Domain Model
- 8.4.6. Implementing Your Use Cases with Actions
- 8.4.7. Developing Your Views
- 8.4.8. Configuring Your Application
- 8.4.9. Adapting to Changes
- 8.5. Summary
-
9. Interacting with C/C++ Using Java Native Interface
- 9.1. A First Look at Java Native Interface
- 9.2. Java Native Interface
- 9.3. Developing an Email Client
- 9.4. Summary
- 10. EJB 3 and the Java Persistence API
-
11. Communicating between Java Components and Components of Other Platforms
- 11.1. Component Communication Scenarios
- 11.2. Overview of Interprocess Communication and Basic Network Architecture
- 11.3. Sockets
- 11.4. Remote Method Invocation
- 11.5. Common Object Request Broker Architecture
-
11.6. Web Services
- 11.6.1. Random-Weather.org
-
11.6.2. Platform-Independent RPC
- 11.6.2.1. WS-I Basic Profile
- 11.6.2.2. Web Services Description Language (WSDL)
- 11.6.2.3. Simple Object Access Protocol (SOAP)
- 11.6.2.4. Underlying Transport Protocols
- 11.6.2.5. Weather Web Site Example
- 11.6.2.6. Creating a Web Service from a Java Method
- 11.6.2.7. Writing a Web Service Client
- 11.6.2.8. Putting It All Together: Weather System Tray App
- 11.6.2.9. Web Services Interoperability Technologies Project (WSIT)
- 11.7. Summary
- 12. Service Oriented Integration
-
13. Java Security
-
13.1. Java Cryptography Architecture and Java Cryptography Extension (JCA/JCE)
-
13.1.1. JCA Design and Architecture
- 13.1.1.1. Engine Classes
- 13.1.1.2. Calculating and Verifying Message Digests
- 13.1.1.3. Digital Signing and Verification of Data
- 13.1.1.4. Digital Key Creation and Management
- 13.1.1.5. Storing and Managing Keys
- 13.1.1.6. Algorithm Management
- 13.1.1.7. Random Number Generation
- 13.1.1.8. XML Digital Signatures
- 13.1.1.9. Certificate Management
- 13.1.2. Java Cryptography Extension
-
13.1.1. JCA Design and Architecture
- 13.2. Program Security Using JAAS
- 13.3. Summary
-
13.1. Java Cryptography Architecture and Java Cryptography Extension (JCA/JCE)
-
14. Packaging and Deploying Your Java Applications
- 14.1. Examining Java Classpaths
- 14.2. Investigating the Endorsed Directory
- 14.3. Exploring Java Archives
- 14.4. Manipulating JAR Files
- 14.5. Analyzing Applets
- 14.6. Exploring Web Applications
- 14.7. Packaging Enterprise JavaBeans
- 14.8. Inspecting Enterprise Archives
- 14.9. Jumping into Java Web Start
- 14.10. Using Ant with Web Archives
- 14.11. Summary
Product information
- Title: Professional Java® JDK®, 6th Edition
- Author(s):
- Release date: January 2007
- Publisher(s): Wrox
- ISBN: 9780471777106
You might also like
book
Just Java™ 2, Fifth Edition
Java programming language and basic packages Server-side libraries and enterprise development Networking, Beans, and collections GUI …
book
Handbook for Sound Engineers, 4th Edition
Handbook for Sound Engineers is the most comprehensive reference available for audio engineers. All audio topics …
book
Enterprise JavaBeans 3.0, 5th Edition
If you're up on the latest Java technologies, then you know that Enterprise JavaBeans (EJB) 3.0 …
article
Have ChatGPT Ask You Questions
ChatGPT Shortcuts shows future prompt engineers how to harness the full potential of the state-of-the-art AI …