<?xml version="1.0" encoding="UTF-8"?>
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns="http://purl.org/rss/1.0/" xmlns:admin="http://webns.net/mvcb/" xmlns:l="http://purl.org/rss/1.0/modules/link/" xmlns:content="http://purl.org/rss/1.0/modules/content/">
	<!--Generated by Blogger v5.0-->
	<channel rdf:about="http://affy.blogspot.com">
		<title>CodeBits</title>
		<link>http://affy.blogspot.com</link>
		<description>Highly-Experienced with Java, Oracle, ColdFusion</description>
		<dc:date>2004-07-16T13:40:07Z</dc:date>
		<dc:language>en-US</dc:language>
		<admin:generatorAgent rdf:resource="http://www.blogger.com/" />
		<admin:errorReportsTo rdf:resource="mailto:rss-errors@blogger.com" />
		<items>
			<rdf:Seq>
				<rdf:li rdf:resource="http://affy.blogspot.com/2004/07/html-and-color-popup-windows.html" />
				<rdf:li rdf:resource="http://affy.blogspot.com/2004/07/java-writing-custom-web-server-to.html" />
				<rdf:li rdf:resource="http://affy.blogspot.com/2004/07/wow-blogger-has-really-improved-its.html" />
				<rdf:li rdf:resource="http://affy.blogspot.com/2004/07/java-using-flag-classes-to-replace.html" />
				<rdf:li rdf:resource="http://affy.blogspot.com/2004/05/custom-ant-task-to-execute-sql-ddl.html" />
				<rdf:li rdf:resource="http://affy.blogspot.com/2004/05/custom-ant-task-to-throw.html" />
				<rdf:li rdf:resource="http://affy.blogspot.com/2004/05/custom-ant-task-to-add-column-to.html" />
				<rdf:li rdf:resource="http://affy.blogspot.com/2004/05/documentation-error-sonic-xis-xml.html" />
				<rdf:li rdf:resource="http://affy.blogspot.com/2004/04/java-jdbc-how-to-handle-exceptions-and.html" />
				<rdf:li rdf:resource="http://affy.blogspot.com/2004/04/poi-optimization-eliminating-trailing.html" />
				<rdf:li rdf:resource="http://affy.blogspot.com/2004/04/poi-optimization-speeding-up.html" />
				<rdf:li rdf:resource="http://affy.blogspot.com/2004/04/poi-optimization-speeding-up_22.html" />
				<rdf:li rdf:resource="http://affy.blogspot.com/2004/04/poi-optimization-speeding-_108265938673224937.html" />
				<rdf:li rdf:resource="http://affy.blogspot.com/2004/04/java-poi-optimization-speeding-up.html" />
				<rdf:li rdf:resource="http://affy.blogspot.com/2004/04/java-poi-optimization-speeding-up_22.html" />
			</rdf:Seq>
		</items>
	</channel>
	<item rdf:about="http://affy.blogspot.com/2004/07/html-and-color-popup-windows.html">
		<title>HTML and Color Popup Windows</title>
		<link>http://affy.blogspot.com/2004/07/html-and-color-popup-windows.html</link>
		<l:source l:type="text/html" rdf:resource="http://www.visibone.com/popups/index.htm" />
		<description>The guys at Visibone have created some neat popup windows.  From their site: The HTML Popup is a tall skinny on-screen quick reference showing all HTML tags and attributes in use or universal. It includes color-coded indications of support by Netscape®, M</description>
		<dc:creator>David Medinets</dc:creator>
		<dc:date>2004-07-16T13:37:07Z</dc:date>
		<content:encoded><![CDATA[The guys at Visibone have created some neat popup windows.  From their site: The HTML Popup is a tall skinny on-screen quick reference showing all HTML tags and attributes in use or universal. It includes color-coded indications of support by Netscape®, M]]></content:encoded>
		<l:permalink l:type="text/html" rdf:resource="http://affy.blogspot.com/2004/07/html-and-color-popup-windows.html" />
	</item>
	<item rdf:about="http://affy.blogspot.com/2004/07/java-writing-custom-web-server-to.html">
		<title>Java - Writing a Custom Web Server to Interpolate Velocity Templates.</title>
		<link>http://affy.blogspot.com/2004/07/java-writing-custom-web-server-to.html</link>
		<description>This is the first entry of several that will chronicle my writing a self-contained web application designed to attach keywords to photo (or images). I did search with Google, but I saw no open-source applications that let you search through an image datab</description>
		<dc:creator>David Medinets</dc:creator>
		<dc:date>2004-07-15T04:18:23Z</dc:date>
		<content:encoded><![CDATA[This is the first entry of several that will chronicle my writing a self-contained web application designed to attach keywords to photo (or images). I did search with Google, but I saw no open-source applications that let you search through an image datab]]></content:encoded>
		<l:permalink l:type="text/html" rdf:resource="http://affy.blogspot.com/2004/07/java-writing-custom-web-server-to.html" />
	</item>
	<item rdf:about="http://affy.blogspot.com/2004/07/wow-blogger-has-really-improved-its.html">
		<title>Wow! Blogger has really improved its User Interface!</title>
		<link>http://affy.blogspot.com/2004/07/wow-blogger-has-really-improved-its.html</link>
		<description>The 'Edit Posts' feature is quite nice. If you don't blog now, take a look.</description>
		<dc:creator>David Medinets</dc:creator>
		<dc:date>2004-07-01T15:02:45Z</dc:date>
		<content:encoded><![CDATA[The 'Edit Posts' feature is quite nice. If you don't blog now, take a look.]]></content:encoded>
		<l:permalink l:type="text/html" rdf:resource="http://affy.blogspot.com/2004/07/wow-blogger-has-really-improved-its.html" />
	</item>
	<item rdf:about="http://affy.blogspot.com/2004/07/java-using-flag-classes-to-replace.html">
		<title>Java; Using Flag Classes to Replace boolean values.</title>
		<link>http://affy.blogspot.com/2004/07/java-using-flag-classes-to-replace.html</link>
		<description>Let me supply some background information before talking about the Flag classes. Part of my project involves using Java classes to access XML. I don't want to use the currently available unmarshalling tools because I only need part of the XML data inside </description>
		<dc:creator>David Medinets</dc:creator>
		<dc:date>2004-07-01T14:49:44Z</dc:date>
		<content:encoded><![CDATA[Let me supply some background information before talking about the Flag classes. Part of my project involves using Java classes to access XML. I don't want to use the currently available unmarshalling tools because I only need part of the XML data inside ]]></content:encoded>
		<l:permalink l:type="text/html" rdf:resource="http://affy.blogspot.com/2004/07/java-using-flag-classes-to-replace.html" />
	</item>
	<item rdf:about="http://affy.blogspot.com/2004/05/custom-ant-task-to-execute-sql-ddl.html">
		<title>Custom Ant Task to Execute SQL DDL Statements And Ignoring Certain Errors.</title>
		<link>http://affy.blogspot.com/2004/05/custom-ant-task-to-execute-sql-ddl.html</link>
		<description>This Ant task executes any DDL SQL statements. The value of this task over the standard Ant SQL task is that some errors, like 'Table already exists' are ignored. The ReadWimConfiguration class simply sets the Oracle URL, username, and password. The Oracl</description>
		<dc:creator>David Medinets</dc:creator>
		<dc:date>2004-05-28T19:40:54Z</dc:date>
		<content:encoded><![CDATA[This Ant task executes any DDL SQL statements. The value of this task over the standard Ant SQL task is that some errors, like 'Table already exists' are ignored. The ReadWimConfiguration class simply sets the Oracle URL, username, and password. The Oracl]]></content:encoded>
		<l:permalink l:type="text/html" rdf:resource="http://affy.blogspot.com/2004/05/custom-ant-task-to-execute-sql-ddl.html" />
	</item>
	<item rdf:about="http://affy.blogspot.com/2004/05/custom-ant-task-to-throw.html">
		<title>Custom Ant Task to Throw BuildException if Specified Ant Property is Not Defined</title>
		<link>http://affy.blogspot.com/2004/05/custom-ant-task-to-throw.html</link>
		<description>This Ant task throws a BuildException if a specified Ant property is not defined. I use it like this:

    
    }
}
</description>
		<dc:creator>David Medinets</dc:creator>
		<dc:date>2004-05-28T19:35:38Z</dc:date>
		<content:encoded><![CDATA[This Ant task throws a BuildException if a specified Ant property is not defined. I use it like this:

    
    }
}
]]></content:encoded>
		<l:permalink l:type="text/html" rdf:resource="http://affy.blogspot.com/2004/05/custom-ant-task-to-throw.html" />
	</item>
	<item rdf:about="http://affy.blogspot.com/2004/05/custom-ant-task-to-add-column-to.html">
		<title>Custom Ant Task to Add Column To Oracle Database Table</title>
		<link>http://affy.blogspot.com/2004/05/custom-ant-task-to-add-column-to.html</link>
		<description>This Ant task adds a column to an Oracle database table if it does not already exist. The ReadWimConfiguration class simply sets the Oracle URL, username, and password. The OracleBootstrap class gets an Oracle DataSource object and provides a method to ge</description>
		<dc:creator>David Medinets</dc:creator>
		<dc:date>2004-05-28T19:30:36Z</dc:date>
		<content:encoded><![CDATA[This Ant task adds a column to an Oracle database table if it does not already exist. The ReadWimConfiguration class simply sets the Oracle URL, username, and password. The OracleBootstrap class gets an Oracle DataSource object and provides a method to ge]]></content:encoded>
		<l:permalink l:type="text/html" rdf:resource="http://affy.blogspot.com/2004/05/custom-ant-task-to-add-column-to.html" />
	</item>
	<item rdf:about="http://affy.blogspot.com/2004/05/documentation-error-sonic-xis-xml.html">
		<title>Documentation Error; Sonic XIS XML Database; Setting Address Size and Cache Size should be KB not MB.</title>
		<link>http://affy.blogspot.com/2004/05/documentation-error-sonic-xis-xml.html</link>
		<description>public void setAddressSpaceSize(long size) - The documentation says that size is 'the size in megabytes.' However, it really needs to be the size in kilobytes.

public void setSize(long size) - The documentation says that size is 'the size in megabytes.</description>
		<dc:creator>David Medinets</dc:creator>
		<dc:date>2004-05-28T18:57:15Z</dc:date>
		<content:encoded><![CDATA[public void setAddressSpaceSize(long size) - The documentation says that size is 'the size in megabytes.' However, it really needs to be the size in kilobytes.

public void setSize(long size) - The documentation says that size is 'the size in megabytes.]]></content:encoded>
		<l:permalink l:type="text/html" rdf:resource="http://affy.blogspot.com/2004/05/documentation-error-sonic-xis-xml.html" />
	</item>
	<item rdf:about="http://affy.blogspot.com/2004/04/java-jdbc-how-to-handle-exceptions-and.html">
		<title>Java, JDBC - How to Handle Exceptions and Errors When Closing, or Freeing, Database Resources</title>
		<link>http://affy.blogspot.com/2004/04/java-jdbc-how-to-handle-exceptions-and.html</link>
		<description>When closing database resources it is possible to get multiple exceptions and it is important not to lose any of them. All of the tutorials that I have read only show the use of printStackTrace() during exception handling. However, that approach is not so</description>
		<dc:creator>David Medinets</dc:creator>
		<dc:date>2004-04-27T19:46:26Z</dc:date>
		<content:encoded><![CDATA[When closing database resources it is possible to get multiple exceptions and it is important not to lose any of them. All of the tutorials that I have read only show the use of printStackTrace() during exception handling. However, that approach is not so]]></content:encoded>
		<l:permalink l:type="text/html" rdf:resource="http://affy.blogspot.com/2004/04/java-jdbc-how-to-handle-exceptions-and.html" />
	</item>
	<item rdf:about="http://affy.blogspot.com/2004/04/poi-optimization-eliminating-trailing.html">
		<title>POI Optimization - eliminating trailing empty rows from an HSSFSheet.</title>
		<link>http://affy.blogspot.com/2004/04/poi-optimization-eliminating-trailing.html</link>
		<description>While my spreadsheet has only 7 rows with data, POI creates over 65,000 rows in the HSSFSheet object. This leads to a large amount of essentially unused memory. In order to free that memory, the following code snippet from my version of the public HSSFWor</description>
		<dc:creator>David Medinets</dc:creator>
		<dc:date>2004-04-26T17:17:43Z</dc:date>
		<content:encoded><![CDATA[While my spreadsheet has only 7 rows with data, POI creates over 65,000 rows in the HSSFSheet object. This leads to a large amount of essentially unused memory. In order to free that memory, the following code snippet from my version of the public HSSFWor]]></content:encoded>
		<l:permalink l:type="text/html" rdf:resource="http://affy.blogspot.com/2004/04/poi-optimization-eliminating-trailing.html" />
	</item>
	<item rdf:about="http://affy.blogspot.com/2004/04/poi-optimization-speeding-up.html">
		<title>POI Optimization - Speeding up org.apache.poi.hssf.usermodel.HSSFSheet.setPropertiesFromSheet()</title>
		<link>http://affy.blogspot.com/2004/04/poi-optimization-speeding-up.html</link>
		<description>This setPropertiesFromSheet() method potentially logs a lot of information. The logging calls are expensive because of the objects created when assembling the log messages. Using the check() method of the logging sub-system can prevent object creation whe</description>
		<dc:creator>David Medinets</dc:creator>
		<dc:date>2004-04-22T20:24:23Z</dc:date>
		<content:encoded><![CDATA[This setPropertiesFromSheet() method potentially logs a lot of information. The logging calls are expensive because of the objects created when assembling the log messages. Using the check() method of the logging sub-system can prevent object creation whe]]></content:encoded>
		<l:permalink l:type="text/html" rdf:resource="http://affy.blogspot.com/2004/04/poi-optimization-speeding-up.html" />
	</item>
	<item rdf:about="http://affy.blogspot.com/2004/04/poi-optimization-speeding-up_22.html">
		<title>POI Optimization - Speeding up org.apache.poi.hssf.record.BlankRecord.compareTo()</title>
		<link>http://affy.blogspot.com/2004/04/poi-optimization-speeding-up_22.html</link>
		<description>This optimization is nearly identical to the one applied to HSSFRow.compareTo() - just used a local copy of the row and column values. This change reduced exceution time in my test case by 17.5 seconds.

    /**
     * switched to using a local copy of</description>
		<dc:creator>David Medinets</dc:creator>
		<dc:date>2004-04-22T19:28:25Z</dc:date>
		<content:encoded><![CDATA[This optimization is nearly identical to the one applied to HSSFRow.compareTo() - just used a local copy of the row and column values. This change reduced exceution time in my test case by 17.5 seconds.

    /**
     * switched to using a local copy of]]></content:encoded>
		<l:permalink l:type="text/html" rdf:resource="http://affy.blogspot.com/2004/04/poi-optimization-speeding-up_22.html" />
	</item>
	<item rdf:about="http://affy.blogspot.com/2004/04/poi-optimization-speeding-_108265938673224937.html">
		<title>POI Optimization - Speeding up org.apache.poi.hssf.usermodel.HSSFRow.compareTo()</title>
		<link>http://affy.blogspot.com/2004/04/poi-optimization-speeding-_108265938673224937.html</link>
		<description>The compareTo() method calls getRowNum() up to three times. Normally this isn't a problem however the compareTo() method is called a lot - over three million times in my test case which uses a small Excel spreadsheet.
Using a local int to cache the value</description>
		<dc:creator>David Medinets</dc:creator>
		<dc:date>2004-04-22T18:43:06Z</dc:date>
		<content:encoded><![CDATA[The compareTo() method calls getRowNum() up to three times. Normally this isn't a problem however the compareTo() method is called a lot - over three million times in my test case which uses a small Excel spreadsheet.
Using a local int to cache the value]]></content:encoded>
		<l:permalink l:type="text/html" rdf:resource="http://affy.blogspot.com/2004/04/poi-optimization-speeding-_108265938673224937.html" />
	</item>
	<item rdf:about="http://affy.blogspot.com/2004/04/java-poi-optimization-speeding-up.html">
		<title>Java; POI Optimization - Speeding up the RecordFactory class.</title>
		<link>http://affy.blogspot.com/2004/04/java-poi-optimization-speeding-up.html</link>
		<description>My last post introduced a shortToConstructorCache class. This post shows a changed RecordFactory class that uses it. In my test case, I was able to reduce the execution time of RecordFactory.createRecord() by 3.6 seconds and reduce the number of objects c</description>
		<dc:creator>David Medinets</dc:creator>
		<dc:date>2004-04-22T17:50:40Z</dc:date>
		<content:encoded><![CDATA[My last post introduced a shortToConstructorCache class. This post shows a changed RecordFactory class that uses it. In my test case, I was able to reduce the execution time of RecordFactory.createRecord() by 3.6 seconds and reduce the number of objects c]]></content:encoded>
		<l:permalink l:type="text/html" rdf:resource="http://affy.blogspot.com/2004/04/java-poi-optimization-speeding-up.html" />
	</item>
	<item rdf:about="http://affy.blogspot.com/2004/04/java-poi-optimization-speeding-up_22.html">
		<title>Java; POI Optimization - Speeding up the RecordFactory class.</title>
		<link>http://affy.blogspot.com/2004/04/java-poi-optimization-speeding-up_22.html</link>
		<description>This optimization needs two posts. This post presents a class that maps short values to a Constructor object. The RecordFactory class maps the short id value in the Excel file to a Java class. In the current version of POI, that relationship is kept, quit</description>
		<dc:creator>David Medinets</dc:creator>
		<dc:date>2004-04-22T17:43:54Z</dc:date>
		<content:encoded><![CDATA[This optimization needs two posts. This post presents a class that maps short values to a Constructor object. The RecordFactory class maps the short id value in the Excel file to a Java class. In the current version of POI, that relationship is kept, quit]]></content:encoded>
		<l:permalink l:type="text/html" rdf:resource="http://affy.blogspot.com/2004/04/java-poi-optimization-speeding-up_22.html" />
	</item>
</rdf:RDF>

