
org.fugerit.java.tool.sql.ExportQuery Maven / Gradle / Ivy
/**
*
*/
package org.fugerit.java.tool.sql;
import java.io.FileOutputStream;
import java.io.OutputStreamWriter;
import java.io.PrintWriter;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.ResultSetMetaData;
import java.sql.Statement;
import java.util.Properties;
import org.fugerit.java.core.db.connect.ConnectionFactory;
import org.fugerit.java.core.db.connect.ConnectionFactoryImpl;
import org.fugerit.java.core.lang.helpers.StringUtils;
import org.fugerit.java.tool.ToolHandlerHelper;
/**
* @author mttfranci
*
*/
public class ExportQuery extends ToolHandlerHelper {
public static final String ARG_QUERY = "query";
public static final String ARG_OUTPUT = "output";
public static final String ARG_FORMAT = "format";
public static final String ARG_FORMAT_DEFAULT = "html";
private void openFile( PrintWriter pw, String format ) throws Exception {
pw.println( "" );
}
private void closeFile( PrintWriter pw, String format ) throws Exception {
pw.println( "
" );
}
private void addRecord( PrintWriter pw, String[] record, boolean header ) throws Exception {
pw.println( "" );
String openTag = "";
String closeTag = " ";
if ( header ) {
openTag = "";
closeTag = " ";
}
for ( int k=0; k" );
}
/* (non-Javadoc)
* @see org.fugerit.java.tool.ToolHandlerHelper#handleWorker(java.util.Properties)
*/
@Override
public int handleWorker(Properties params) throws Exception {
int exit = EXIT_KO_DEFAULT;
ClassLoader cl = this.getClassLoader( params );
ConnectionFactory cf = ConnectionFactoryImpl.newInstance( params, null, cl );
Connection conn = cf.getConnection();
String output = params.getProperty( ARG_OUTPUT );
FileOutputStream fos = new FileOutputStream( output );
PrintWriter pw = new PrintWriter( new OutputStreamWriter( fos ) );
try {
String sql = params.getProperty( ARG_QUERY );
String format = params.getProperty( ARG_FORMAT, ARG_FORMAT_DEFAULT );
Statement stm = conn.createStatement();
openFile( pw, format );
ResultSet rs = stm.executeQuery( sql );
ResultSetMetaData rsmd = rs.getMetaData();
String head[] = new String[rsmd.getColumnCount()];
for ( int k=0; k
© 2015 - 2025 Weber Informatics LLC | Privacy Policy