devxlogo

Converting ResultSet to XML

Converting ResultSet to XML

Oftentimes, we need to convert ResultSets to XML for transferring data across different applications. Here is very simple code that transforms ResultSets into XML.

 import java.sql.*;import java.io.*;public class XMLWriter{    public String generateXML(final ResultSet rs) throws SQLException    {        final StringBuffer buffer = new StringBuffer(1024*4);        if(rs == null) return "";        if(!rs.next()) return "";        buffer.append("
");        buffer.append("
");        ResultSetMetaData rsmd = rs.getMetaData();        int colCount = rsmd.getColumnCount();        for(int id=0; rs.next(); id++)        {            buffer.append("	
");            for(int i = 1; i ");                buffer.append(getValue( rs, i, type));                buffer.append("
");            }            buffer.append("	
");        }        buffer.append("");        rs.close();        return buffer.toString();    }    /**     * This method gets the value of the specified column     */    private String getValue(final ResultSet rs, int colNum, int type)throws SQLException    {        switch(type)        {            case Types.ARRAY :            case Types.BLOB :            case Types.CLOB :            case Types.DISTINCT :            case Types.LONGVARBINARY :            case Types.VARBINARY :            case Types.BINARY :            case Types.REF :            case Types.STRUCT :                return "undefined";            default :            {                Object value = rs.getObject(colNum);                if(rs.wasNull() || (value == null))                    return ("null");                else                    return (value.toString());            }        }    }}

size=3>

devx-admin

Share the Post: