I like writing my own table model (AbstractTableModel) because it is necessary if you want to display or interact with the table in an "expected manner."
Of course this is just my opinion, however I find that most of my tables are populated with strings, ints, doubles, booleans, etc. I want my doubles displayed to a particular precision. I want my numbers right justified, I want my boolean variables to show up as check marks and not as text, I want my text left justified, etc.
Also, most of my tables are NOT for display uses only. There is typically some user interaction with them. I want to be able to pick and choose which columns are editable. I want a drop down list for some columns and to force numerical entries in others.
The uses of writing your own table model are seemingly endless.