<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xml:base="http://NadeauSoftware.com" xmlns:dc="http://purl.org/dc/elements/1.1/">
<channel>
 <title>Java</title>
 <link>http://NadeauSoftware.com/articles/java</link>
 <description>The taxonomy view with a depth of 0.</description>
 <language>en</language>
<item>
 <title>Java tip: How to add zebra background stripes to a JList</title>
 <link>http://NadeauSoftware.com/articles/2008/01/java_tip_how_add_zebra_background_stripes_jlist</link>
 <description>&lt;p class=&quot;summary&quot;&gt;Zebra stripes are subtle alternating stripes painted behind list items in a graphical user interface (GUI). They improve the readability of wide and long lists, but the &lt;code&gt;JList&lt;/code&gt; class in Java&#039;s Swing doesn&#039;t support them. This tip shows how to extend &lt;code&gt;JList&lt;/code&gt; to add zebra background stripes.&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;http://NadeauSoftware.com/articles/2008/01/java_tip_how_add_zebra_background_stripes_jlist&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <comments>http://NadeauSoftware.com/articles/2008/01/java_tip_how_add_zebra_background_stripes_jlist#comments</comments>
 <category domain="http://NadeauSoftware.com/articles/java">Java</category>
 <category domain="http://NadeauSoftware.com/articles/user_interfaces">User interfaces</category>
 <pubDate>Tue, 01 Jan 2008 19:01:51 -0800</pubDate>
 <dc:creator>Dave_Nadeau</dc:creator>
 <guid isPermaLink="false">68 at http://NadeauSoftware.com</guid>
</item>
<item>
 <title>Java tip: How to add zebra background stripes to a JTable</title>
 <link>http://NadeauSoftware.com/articles/2008/01/java_tip_how_add_zebra_background_stripes_jtable</link>
 <description>&lt;p class=&quot;summary&quot;&gt;Table zebra stripes are alternating subtle background stripes painted behind the table&#039;s rows in a graphical user interface (GUI). They improve the readability of long rows in wide tables, but the &lt;code&gt;JTable&lt;/code&gt; class in Java&#039;s Swing doesn&#039;t support them. This tip shows how to extend &lt;code&gt;JTable&lt;/code&gt; to add zebra background stripes.&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;http://NadeauSoftware.com/articles/2008/01/java_tip_how_add_zebra_background_stripes_jtable&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <comments>http://NadeauSoftware.com/articles/2008/01/java_tip_how_add_zebra_background_stripes_jtable#comments</comments>
 <category domain="http://NadeauSoftware.com/articles/java">Java</category>
 <category domain="http://NadeauSoftware.com/articles/user_interfaces">User interfaces</category>
 <pubDate>Tue, 01 Jan 2008 19:05:47 -0800</pubDate>
 <dc:creator>Dave_Nadeau</dc:creator>
 <guid isPermaLink="false">69 at http://NadeauSoftware.com</guid>
</item>
<item>
 <title>Java tip: How to add zebra background stripes to a JTree</title>
 <link>http://NadeauSoftware.com/articles/2008/01/java_tip_how_add_zebra_background_stripes_jtree</link>
 <description>&lt;p class=&quot;summary&quot;&gt;Zebra stripes in a graphical user interface (GUI) are subtle background stripes painted behind the rows of a hierarchical list, or tree.  They  improve the readability of wide tree rows, but  the &lt;code&gt;JTree&lt;/code&gt; class in Java&#039;s Swing doesn&#039;t support them. This tip shows how to extend &lt;code&gt;JTree&lt;/code&gt; to add zebra background stripes.&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;http://NadeauSoftware.com/articles/2008/01/java_tip_how_add_zebra_background_stripes_jtree&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <comments>http://NadeauSoftware.com/articles/2008/01/java_tip_how_add_zebra_background_stripes_jtree#comments</comments>
 <category domain="http://NadeauSoftware.com/articles/java">Java</category>
 <category domain="http://NadeauSoftware.com/articles/user_interfaces">User interfaces</category>
 <pubDate>Tue, 01 Jan 2008 19:09:01 -0800</pubDate>
 <dc:creator>Dave_Nadeau</dc:creator>
 <guid isPermaLink="false">70 at http://NadeauSoftware.com</guid>
</item>
<item>
 <title>Java tip: How to get a web page</title>
 <link>http://NadeauSoftware.com/articles/2008/01/java_tip_how_get_web_page</link>
 <description>&lt;p class=&quot;summary&quot;&gt;The starting point for building a link checker, web spider, or web page analyzer is, of course, to get the web page from the web server. Java&#039;s &lt;code&gt;java.net&lt;/code&gt; package includes classes to manage URLs and to open web server connections. This tip shows how to use them to a get text, image, audio, or data file from a web server.&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;http://NadeauSoftware.com/articles/2008/01/java_tip_how_get_web_page&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <comments>http://NadeauSoftware.com/articles/2008/01/java_tip_how_get_web_page#comments</comments>
 <category domain="http://NadeauSoftware.com/articles/java">Java</category>
 <category domain="http://NadeauSoftware.com/articles/text_processing">Text processing</category>
 <pubDate>Sun, 06 Jan 2008 08:19:27 -0800</pubDate>
 <dc:creator>Dave_Nadeau</dc:creator>
 <guid isPermaLink="false">73 at http://NadeauSoftware.com</guid>
</item>
<item>
 <title>Java tip: How to get CPU, system, and user time for benchmarking</title>
 <link>http://NadeauSoftware.com/articles/2008/03/java_tip_how_get_cpu_and_user_time_benchmarking</link>
 <description>&lt;p class=&quot;summary&quot;&gt;Performance optimization requires that you measure the time to perform a task, then try algorithm and coding changes to make the task faster. Prior to Java 5, the only way to time a task was to measure wall clock time. Unfortunately, this gives inaccurate results when there is other activity on the system (and there always is). Java 5 introduced the &lt;code&gt;java.lang.management&lt;/code&gt; package and methods to report CPU and user time per thread. These times are not affected by other system activity, making them just what we need for benchmarking. This tip shows how to use them to benchmark your application.&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;http://NadeauSoftware.com/articles/2008/03/java_tip_how_get_cpu_and_user_time_benchmarking&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <comments>http://NadeauSoftware.com/articles/2008/03/java_tip_how_get_cpu_and_user_time_benchmarking#comments</comments>
 <category domain="http://NadeauSoftware.com/articles/java">Java</category>
 <pubDate>Thu, 20 Mar 2008 08:38:32 -0700</pubDate>
 <dc:creator>Dave_Nadeau</dc:creator>
 <guid isPermaLink="false">75 at http://NadeauSoftware.com</guid>
</item>
<item>
 <title>Java tip: How to list and find threads and thread groups</title>
 <link>http://NadeauSoftware.com/articles/2008/04/java_tip_how_list_and_find_threads_and_thread_groups</link>
 <description>&lt;p class=&quot;summary&quot;&gt;Java&#039;s threads are essential for building complex applications, but thread control is split across several classes in different packages added at different times in the JDK&#039;s history. This tip shows how to connect these classes together to  find threads and thread groups, and get thread information.&lt;/p&gt;


&lt;p&gt;&lt;a href=&quot;http://NadeauSoftware.com/articles/2008/04/java_tip_how_list_and_find_threads_and_thread_groups&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <comments>http://NadeauSoftware.com/articles/2008/04/java_tip_how_list_and_find_threads_and_thread_groups#comments</comments>
 <category domain="http://NadeauSoftware.com/articles/java">Java</category>
 <pubDate>Sun, 20 Apr 2008 10:38:14 -0700</pubDate>
 <dc:creator>Dave_Nadeau</dc:creator>
 <guid isPermaLink="false">77 at http://NadeauSoftware.com</guid>
</item>
<item>
 <title>Java tip: How to read files quickly</title>
 <link>http://NadeauSoftware.com/articles/2008/02/java_tip_how_read_files_quickly</link>
 <description>&lt;p class=&quot;summary&quot;&gt;Java has several classes for reading files, with and without buffering, random access, thread safety, and memory mapping. Some of these are much faster than the others. This tip benchmarks 13 ways to read bytes from a file and shows which ways are the fastest.&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;http://NadeauSoftware.com/articles/2008/02/java_tip_how_read_files_quickly&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <comments>http://NadeauSoftware.com/articles/2008/02/java_tip_how_read_files_quickly#comments</comments>
 <category domain="http://NadeauSoftware.com/articles/java">Java</category>
 <pubDate>Sun, 24 Feb 2008 08:05:33 -0800</pubDate>
 <dc:creator>Dave_Nadeau</dc:creator>
 <guid isPermaLink="false">74 at http://NadeauSoftware.com</guid>
</item>
<item>
 <title>Java tip: Use gradient backgrounds to add interest and polish to a user interface</title>
 <link>http://NadeauSoftware.com/articles/2008/08/java_tip_use_gradient_backgrounds_add_interest_and_polish_user_interface</link>
 <description>&lt;p class=&quot;summary&quot;&gt;
Java&#039;s Swing components have a constant background color used to fill the entire component area. To add interest, contrast, and polish to a user interface, override the component&#039;s background painting and add a  gradient to smoothly vary the color across the background.  This tip shows how and demonstrates the effect.
&lt;/p&gt;


&lt;p&gt;&lt;a href=&quot;http://NadeauSoftware.com/articles/2008/08/java_tip_use_gradient_backgrounds_add_interest_and_polish_user_interface&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <comments>http://NadeauSoftware.com/articles/2008/08/java_tip_use_gradient_backgrounds_add_interest_and_polish_user_interface#comments</comments>
 <category domain="http://NadeauSoftware.com/articles/java">Java</category>
 <category domain="http://NadeauSoftware.com/articles/user_interfaces">User interfaces</category>
 <pubDate>Thu, 21 Aug 2008 08:25:56 -0700</pubDate>
 <dc:creator>Dave_Nadeau</dc:creator>
 <guid isPermaLink="false">82 at http://NadeauSoftware.com</guid>
</item>
</channel>
</rss>
