hello blue,
the normal way of working with the data in a table is to get the data into the table model class. The Table model mostly accepts Object Arrays. The result set data must be converted into an Object Array. The Object Array then passed to the TableModel as an argument to the constructor. The resultant TableModel then should be passed as a constructor to the JTable that you will create.
Runtime modification of the UI will only be possible if you work with the undellying data model. This is true for most UI components.
as far as your code goes, your colnames have not been retrieved but the colcount has been.
secondly invokeLater is a good mechanism to run our programs as separate threads.
If you still have difficulty with the table, send me your email ID, I will send you some sample JTable Code