"Я знаю, что Jtable может сортировать по одному столбцу. Но возможно ли разрешить сортировку по нескольким столбцам или мне нужно написать код самому?"
Сортировка и фильтрация таблиц управляются объектом сортировки. Самый простой способ предоставить объект сортировщика - установить для привязанного свойства autoCreateRowSorter значение true;
JTable table = new JTable();
table.setAutoCreateRowSorter(true);
Это действие определяет сортировщик строк, который является экземпляром javax.swing.table.TableRowSorter.