La clave primaria de la tabla siempre debería estar en el JTable pues necesario para modificar o eliminar los registros. Pero como no tiene otros fines informativos, es preferible ocultar la columna que contiene a la clave primaria (generalmente la primera columna, es decir la cero).
Código Java:
Ver originalprivate int INDICE_COLUMNA_ID = 0;
tabla.removeColumn(tabla.getColumnModel().getColumn(INDICE_COLUMNA_ID);
Aunque no se muestre en la tabla, el modelo aún contendrá esa columna, y podrás obtener el id como siempre,
Código Java:
Ver originalmodelo.getValueAt(filaSeleccionada, INDICE_COLUMNA_ID);
.
Salu2.