Sun Java Solaris Communities My SDN Account Join SDN
 
Technical Articles and Tips

Core Java Technology Tech Tips Downloads

 

View the following Core Java Technology Tech Tips (formerly, JDC Tech Tips) by clicking on the link, or save the text file by right-clicking, then selecting "Save Link As" or "Save Target As". You may also download all the files in one convenient .zip download.

2007

September 2007 John Zukowski
Enhanced For-Loop and Preferences API

August 2007 John Zukowski
Logging Localized Messages and Attach API

July 2007 John Zukowski
Listeners vs Adapters and BigDecimal

June 2007 John Zukowski
Cookie Handling, Drag and Drop

May 2007 John Zukowski
Controlling the Creation of ZIP/JAR Entries, Using printf with Custom Classes

April 2007 John Zukowski
Compiling with the Java Compiler API, Regular Expressions

February 2007 Sergey Groznyh and Brian Burkhalter
Text Normalization, Monitoring Image I/O Events

2006

December 19, 2006 Joshua Marinacci
Using PropertyChangeListener, Using Action in your UI

November 18, 2006 Joshua Marinacci
Java Web Start Persistence, JList Striping

September 23, 2006 Chris Campbell
Java 2D Soft Clipping, Java 2D Light and Shadows

August 24, 2006 John O'Conner
How long is your String object, How should I compare String objects

June 20, 2006 John Zukowski
Introducing Annotations, and Tech Tips Quiz

May 13, 2006 John Zukowski
Programmatic Access to Network Parameters, and Dialog Modality

April 15, 2006 John Zukowski
Reporting Indexed Property Changes in Beans and Java 2D API Enhancements in J2SE 5.0

March 14, 2006 John Zukowski
Working with Applet Context Streams and The Singleton Pattern Revisited

February 11, 2006 John Zukowski
Using WeakHashMap for Listener Lists and Catching Uncaught Exceptions

January 13, 2006 John Zukowski
The Singleton Pattern and The Observer Pattern

2005

December 14, 2005 John Zukowski
Filtering JList Models, and Deques

November 15, 2005 John Zukowski
Splash Screens and Java SE 6.0, and Sorting and Filtering Tables

October 5, 2005 John Zukowski
Variable Arity Methods and Customizing Resource Bundle Loading with ResourceBundle.Control

September 13, 2005 John Zukowski
Cookie Management with CookieHandler and Tech Tips Quiz

August 16, 2005 John Zukowski
Using InetAddress for Host Name Lookup and Host Reachability and Locks

July 27, 2005 John Zukowski
Swing "Urban Legends", and From Runtime.exec() to ProcessBuilder

June 17, 2005 John Zukowski
Beyond J2SE 5.0, and Collaborating with Sun on Java SE 6.0

June 1, 2005 Daniel H. Steinberg
Introduction to Java Advanced Imaging, and Calendar Utilities in JDesktop Network Components

May 18, 2005 John Zukowski
Validating Text and Filtering Documents , and Accessibility and the Java Access Bridge

May 5, 2005 Daniel H. Steinberg
Communicating With Native Applications Using JDIC, and The Enhanced For Loop

April 19, 2005 John Zukowski
Thread Handling in Swing , and Atomic Variables

April 5, 2005 Daniel H. Steinberg
Introduction to Autoboxing and Introduction to Tables with JDesktop Network Components (JDNC)

March 15, 2005 John Zukowski
Generics and JMX, JConsole, and You

March 8, 2005 Daniel H. Steinberg
Printing JTables and From StringTokenizer to Scanner

February 16, 2005 John Zukowski
Getting to Know Synchronizers, and HotSpot Garbage Collection Configuration Options

February 8, 2005 Daniel H. Steinberg
Introduction to JOGL, and Changing Behavior Based on the Value of an Enumerated Type

January 18, 2005 John Zukowski
Let There Be Z-Order, and Customizing Window Adornments

January 4, 2005 Daniel H. Steinberg
Using the Varargs Language Feature, and Covariant Parameter Types

2004

December 14, 2004 John Zukowski
Resource Bundle Loading, and Hiding ListResourceBundles from javadoc

December 1, 2004 Daniel H. Steinberg
Scanning Text With java.util.Scanner, and Covariant Return Types

November 16, 2004 John Zukowski
Converting Images to BMP/WMBP, and Pooling Threads to Execute Short Tasks

November 2, 2004 Daniel H. Steinberg
What's New in the Math Class, and Changes in Working With ContentPane

October 19, 2004 John Zukowski
Queues and Delayed Processing, and Getting to Know Synth

October 5, 2004 Daniel H. Steinberg
Using Static Imports for Constants and Methods, and Formatting Output With the New Formatter

September 14, 2004 John Zukowski
Working with Selectors, and SSL Servers

August 17, 2004 John Zukowski
Secure Communications with JSSE, and Customizing the JColorChooser Component

August 10, 2004 Daniel H. Steinberg
Sending and Receiving Multicast Messages, and Extending a DefaultHandler to Parse XML files

July 27, 2004 John Zukowski
Using GridBagLayout, and Updating JAR Files

June 16, 2004 Daniel H. Steinberg
Using Collections to Sort and Shuffle a List, and Lighting a 3D Scene

June 11, 2004 Daniel H. Steinberg
More Multithreading in Swing, and Printing Components with PrinterJob

May 18, 2004 John Zukowski
Understanding Rendering Hints, and Creating Custom Security Permissions

May 4, 2004 Daniel H. Steinberg
Formatting Text Input With JFormattedTextField, and When Are Two Strings Equal?

April 20, 2004 John Zukowski
User Datagram Protocol Programming, and Garbage Collection and You

March 16, 2004 John Zukowski
Customizing JFileChooser, and Best Practices in Exception Handling

March 9, 2004 Daniel H. Steinberg
Working with Swing Look and Feel, and Using Soundbanks

February 17, 2004 John Zukowski
Loading and Saving Images with the Image I/O Library, and Reflecting JavaBeans Components

February 10, 2004 Daniel H. Steinberg
Styling Digital Images with ConvolveOp, and Using HttpURLConnection to Access Web Pages

January 22, 2004 John Zukowski
Beyond the Basics of JOptionPane, and Monitoring Class Loading and Garbage Collection

January 16, 2004 Daniel H. Steinberg
Asymmetric Encryption Keys With the KeyPairGenerator, and Encryption and Decryption Using Symmetric Keys

2003

December 23, 2003 John Zukowski
Programmer Challenge

December 10, 2003 Daniel H. Steinberg
More About Handling Exceptions, and Using HTML in Swing Components

December 8, 2003 John Zukowski
Multithreading in Swing, and ThreadLocal Variables for Storing Thread-Specific State Information

November 4, 2003 Daniel H. Steinberg
Handling Exceptions, and Using the TimeZone Class

October 21, 2003 John Zukowski
Converting Between Old and New Collections, and Choosers Outside Dialogs

October 14, 2003 Daniel H. Steinberg
Introduction to the Java3D API, and Using the TransferHandler

September 26, 2003 John Zukowski
Using ChoiceFormat for Handling Plural Messages, and Component Orientation in Swing User Interfaces

September 9, 2003 Daniel Steinberg
Working with SocketChannels, and Understanding AffineTransform

August 19, 2003 John Zukowski
Formatting Messages With Variable Content, and Unloading and Reloading Classes

August 5, 2003 Daniel Steinberg
Producing MIDI Sound, and Saving and Reconstituting Swing Components

July 22, 2003 John Zukowski
Generating Custom Taglets, and Compiling Source Directly From a Program

July 15, 2003 Daniel Steinberg
Using the Preferences API, and Interfaces and Constants

June 24, 2003 John Zukowski
Generating Diagnostics by Monitoring the System Event Queue, and Internationalizing Dates, Times, Months, and Days of the Week

May 20, 2003 John Zukowski
Drawing Dashed Lines with Stroke and Generating Custom Doclets

May 06, 2003 Glen McCluskey
Using the native2ascii Tool and Local Classes

April 22, 2003 John Zukowski
Validating URL Links and Reusing Exceptions

April 8, 2003 Glen McCluskey
Destroying Objects and Preprocessing and the Java Language

March 18, 2003 John Zukowski
Dragging Text and Images with Swing and Discovering the Calling Method Name

March 04, 2003 Glen McCluskey
Using Runtime.exec to Invoke Child Processes and Programming With File Attributes

February 20, 2003 John Zukowski
Choosing A Collections Framework Implementation, Providing a Scalable Image Icon, and An Addition to Last Month's Tip on Reading Files From JARs

February 4, 2003 Glen McCluskey
Using Variable Argument Lists and Some Things You Should Know About Floating-Point Arithmetic

January 22, 2003 John Zukowski
Reading files from Java Archives (JARs) and Getting Started with the Java Management Extensions (JMX)

January 10, 2003 Glen McCluskey
Using Charsets and Encodings and Using Reflection To Create Class Instances

2002

December 17, 2002 John Zukowski
Programmer Challenge

December 3, 2002 Glen McCluskey
Using the BitSet Class and Using JSpinner to Choose From an Ordered List

November 19, 2002 John Zukowski
Displaying Multi-column Lists and Dealing with Timeouts on Socket Connections

November 5, 2002 Glen McCluskey
Using HashSet, LinkedHashSet, and TreeSet and Understanding Expression Evaluation Order

October 22, 2002 by John Zukowski
Filtering Logged Messages and Controlling Focus Traversal Sequencing

October 8, 2002 by Glen McCluskey
Using Regular Expression Groups and Anonymous Classes

September 24, 2002 by John Zukowski
Locking Files For Shared Access and Changing User Interface Attributes

September 10, 2002 by Glen McCluskey
Using ArrayList and LinkedList, and Using Zero-Length Arrays

August 21, 2002 by John Zukowski
Maintaining a Priority Queue, and Displaying Text in Multiple Styles

August 06, 2002 by Glen McCluskey
Generating Prime Numbers, and When Not to Overload Methods

July 23, 2002 by John Zukowski
Converting Numeric Entries, and Displaying Multiline Text

July 09, 2002 by Glen McCluskey
Using the LinkedHashMap Class, and The RandomAccess Interface

June 18, 2002 by John Zukowski
Reading from Output Streams, and Blending Images

June 04, 2002 by Glen McCluskey
Using the CharSequence Interface, and Programming With Buffers

May 21, 2002 by John Zukowski
Using Swing Timers, and Adding help to Your Applications With JavaHelp Software

May 07, 2002 by Glen McCluskey
File Channels, and Stack Trace Elements

April 23, 2002 by John Zukowski
Pattern Matching, and Creating a HelpSet with JavaHelp software

April 9, 2002 by Glen McCluskey
Using Assertions, and Representing Currencies

March 19, 2002 by John Zukowski
Capturing Audio with the Java Sound API, and Validating Deserialized Objects

March 5, 2002 by Glen McCluskey
String Concatenation and Performance, and Improving Java I/O Performance

February 19, 2002 by John Zukowski
Playing Audio and Video With the Java Media Framework, and Using the JSObject Class in Applets

February 5, 2002 by Glen McCluskey
Writing toString Methods, and Using readResolve

January 22, 2002 by John Zukowski
Retrieving Mail with the JavaMail API, and Working with the Java Communications API

January 10, 2002 by Glen McCluskey
Using Exceptions, and Sizing Text With FontMetrics

2001

December 20, 2001 by John Zukowski
Creating Modal Internal Frames -- Approach 1, and Creating Modal Internal Frames -- Approach 2

December 4, 2001 by Glen McCluskey
Accessing the Environment from Java Applications, and Working With Number Bases

November 20, 2001 by John Zukowski
Validating Numerical Input in a JTextField, and Working with Fonts

November 6, 2001 by Glen McCluskey
Using Method Pointers, and Abstract Classes vs. Interfaces

October 23, 2001 by John Zukowski
Sorting Lists, and Sending Mail With the JavaMail API

October 09, 2001 by Glen McCluskey
How Arguments are Passed to Java Methods, and Converting C Programs to the Java Programming Language

September 25, 2001 by John Zukowski
Generating Integer Random Numbers, and Displaying Element-Level Tool Tips for Swing Components

September 04, 2001 by Glen McCluskey
Making Defensive Copies of Objects, and Using Iterators

August 21, 2001 by John Zukowski
Supporting an Unlimited Number of Applet Parameters, and Delivering Dynamic Images from JavaServer Pages (JSP) Technology

August 7, 2001 by Glen McCluskey
Performing Exact Calculations With Floating-Point Numbers, and Using Enumerations in Java Programming

July 27, 2001 by Stuart Halloway
Introduction to JAAS, and Using JAAS

July 12, 2001 by Glen McCluskey
JTabbedPane, and Using Reflection to Test Methods and Classes

June 26, 2001 by Stuart Halloway
Improving Code Reuse With Servlet Filters, and Using Filters to Modify the Server's Response

June 12, 2001 by Glen McCluskey
Abstract Classes, and Using Peer Classes With the Java Native Interface

May 30, 2001 by Stuart Halloway
The Java Network Launching Protocol (JNLP), and Java Web Start

May 18, 2001 by Glen McCluskey
Using the PushbackReader Class, Optimizing StringBuffer Usage, and Handling Keyboard Focus

April 24, 2001 by Stuart Halloway
Using XPath Expressions in a Simple Transform, and Using Rule-Based XSLT

April 10, 2001 by Glen McCluskey
Making Deep Copies of Objects, Using strictfp, and Optimizing String Performance

March 27, 2001 by Stuart Halloway
Deserializing Marshalled Objects, and JNDI Lookup in Distributed Systems

March 6, 2001 by Glen McCluskey
Cloning Objects, and Using the Serializable Fields API

February 27, 2001 by Stuart Halloway
The Lifecycle of an RMI Server, and Dynamic Class Loading in RMI

February 8, 2001 by Glen McCluskey
Piped Streams, and Using Sets

January 30, 2001 by Stuart Halloway
Controlling Package Access With Security Permissions, and Controlling Package Access With Sealed JAR Files

January 9, 2001 by Glen McCluskey
Using the java.lang.Character Class, and Handling Uncaught Exceptions

2000

December 22, 2000 by Stuart Halloway
A Memory Testbed Application, and Controlling Your Memory Manager

December 5, 2000 by Glen McCluskey
Returning Multiple Values From a Method, and Constructor and Initialization Ordering

November 28, 2000 by Stuart Halloway
Using Privileged Scopes, and Debugging Class Loading

November 7, 2000 by Glen McCluskey
Using Random Numbers for Testing and Simulation, and Collection Utilities

October 31, 2000 by Stuart Halloway
Class loaders as a namespace mechanism, Relating class loaders to the class path, and Using class loaders for hot deployment.

October 10, 2000 by Glen McCluskey:
Customizing JToolTips, and Shadowing.

September 26, 2000 by Stuart Halloway:
Using SecurityManager, and Policies and the Policy File.

September 12, 2000 by Glen McCluskey:
Using Class Methods and Variables, and Using Progress Bars and Monitors in Java GUI Applications.

August 29, 2000 by Stuart Halloway:
Getting Started With javap, How Bytecode Protects You From Memory Bugs, and Analyzing Bytecode to Improve Your Code.

August 15, 2000 by Glen McCluskey:
Manipulating Java Arrays, and Java I/O Redirection.

August 01, 2000 by Stuart Halloway:
Caching objects in JNI, and Accessing arrays in JNI.

July 11, 2000 by Glen McCluskey:
Using Shutdown Hooks, and Automating GUI Programs with java.awt.Robot.

June 13, 2000 by Glen McCluskey:
Using BreakIterator to Parse Text and Goto Statements and Java Programming

May 30, 2000 by Stuart Halloway:
Using Dynamic Proxies to Layer New Functionality Over Existing Code, and Using Timers to Run Recurring or Future Tasks on a Background Thread

May 09, 2000 by Glen McCluskey:
Random Access for Files, and Using Adapters.

April 25, 2000 by Stuart Halloway:
Improving Serialization Performance with Externalizable, and Handling Those Pesky InterruptedExceptions.

April 11, 2000 by Glen McCluskey:
Formatting Decimal Numbers, and Using Checksums.

March 28, 2000 by Stuart Halloway:
Why Use Threads?, Protecting Shared Resources with Synchronized Blocks, and Minimizing the Overhead of Synchronized Blocks.

March 14, 2000 by Glen McCluskey:
Using java.lang.Class, and Overload Resolution

February 29, 2000 by Stuart Halloway:
Serialization in the Real World, Serialization and Class Versioning, Serialization and Secure Data, and Serialization and the Complete Class Rewrite

February 15, 2000 by Glen McCluskey:
Manipulating Hierarchical Data with JTree, and Invoking Programs from Java Applications

January 11, 2000 by Glen McCluskey:
Narrowing and Widening Conversions, and Using Import Declarations

1999

December 14, 1999 by Glen McCluskey:
Using Remote Method Invocation to Access Legacy Databases

November 24, 1999 by Glen McCluskey:
Color Choosers, and Loading Text Files in Swing Efficiently

October 5, 1999 by Glen McCluskey:
Swing Document Locations, and Keymaps

October 21, 1999 by Patrick Chen:
Creating Image Thumbnails, and Capturing Standard Output in a Log File

September 7, 1999 by Glen McCluskey:
Error Checking With Java Native Interface (JNI), and Using JTextPane

September 23, 1999 by Patrick Chen:
Extracting Links from an HTML File, and Sorting Arrays

August 9, 1999 by Glen McCluskey:
Using Coordinate Transformations With the Java2D API, and Using List Collections Efficiently

August 26, 1999 by Patrick Chen:
Creating Round Swing Buttons, and Formatting BigDecimal Numbers

July 13, 1999 by Glen McCluskey:
Undoing Text Edits, and Adding Security Features to Applications

June 15, 1999 by Glen McCluskey:
File Choosers, and Using the Graphics Environment Class

May 11, 1999 by Glen McCluskey:
Custom Carets, and Reference Objects

April 13, 1999 by Glen McCluskey:
Cut, copy, and paste, and Package version identification

Download Tech Tips in one .zip file.