Che ne dici di questa idea:
Scorri una sola volta il ResultSet della formattazione, prima di iniziare a creare la tabella dove inserire i dati.
In questo ciclo riempi un java.util.Hashtable utilizzando come chiave il nome della colonna e come oggetto memorizzato un apposito oggetto che possiede le 4 proprietà da te indicate:
[list=1][*]Etichetta[*]Larghezza[*]Allineamento[*]Formattazione[*]Link[/list=1]
Se non vuoi creare una classe ad hoc, puoi utilizzare un array di String di 5 elementi (6, in posizione 0 inserisci il nome della colonna per completezza)
Il codice di inizializzazione della struttura potrebbe essere una cosa del genere:
codice:
// Nuova hash
Hashtable formatCols = new Hashtable()
// Ciclo su ResultSet di formattazione
while(rSetFormat.next()) {
// Riempio il mio array di parametri
// uso nomi ipotetici per i campi del resultSet
// ovviamente vanno sostuiti con quelli giusti
String formtParam[] = new String[7];
formtParam[0] = rSetFormat.getString("colonna");
formtParam[1] = rSetFormat.getString("etichetta");
formtParam[2] = rSetFormat.getString("larghezza");
formtParam[3] = rSetFormat.getString("allineamento");
formtParam[4] = rSetFormat.getString("formattazione");
formtParam[5] = rSetFormat.getString("link");
// Aggiungo all'hash, indicizzando i parametri
// con il nome della colonna, che si trova in posizione
// 0 dell'array di stringhe
formatCols.put(formtParam[0],formtParam);
}
A questo punto, per conoscere la formattazione dell'i-esimo dato del tuo ResultSet di dati, basterà interrogare l'oggetto che nell'Hashtable è indicizzato con il nome della colonna del dato.
Spero di essere stato chiaro.