Я пытался найти правильные ответы, но пока мне ничего не помогало. Я довольно новичок в программировании на Java с графическим интерфейсом, на самом деле, к самой Java. Однако у меня есть менеджеры, которые понимают JPA, как извлекать, вставлять и удалять с помощью JPA.
Теперь я хочу, чтобы данные в моей базе данных отображались в JTable.
В настоящее время у меня есть следующая таблица mySQL (которую я хочу показать в JTable
игры
Id PK int
заглавие
издатель
Жанр
ReleaseDate
Что касается кодирования, я успешно извлек данные, содержащиеся в таблице, используя следующее:
public List<Game> getGames(){
List<Game> games;
try{
TypedQuery<Game> selectGamesQuery = entityManager.createQuery("SELECT g FROM Game g", Game.class);
games = selectGamesQuery.getResultList();
} catch(Exception e) {
System.out.println(e);
}
return games;
}
Это успешно возвращает список игр, которые я могу повторить.
Тогда, на мой взгляд, у меня есть следующее
JScrollPane scrollPane = new JScrollPane();
contentPane.add(scrollPane, BorderLayout.CENTER);
tblGames = new JTable(new tblGamesModel());
tblGames.setShowVerticalLines(true);
tblGames.setShowHorizontalLines(true);
tblGames.setFillsViewportHeight(true);
scrollPane.setViewportView(tblGames);
Какой курс приводит нас к модели стола, где я застрял.
public class tblGamesModel extends AbstractTableModel {
private GameRepository gameRepository;
private List<Game> games;
/**
*
*/
public tblGamesModel(){
gameRepository = new GameRepository();
games = gameRepository.getGames();
}
private static final long serialVersionUID = 1L;
@Override
public int getColumnCount() {
// TODO Auto-generated method stub
return 0;
}
@Override
public int getRowCount() {
// TODO Auto-generated method stub
return games.size();
}
@Override
public Object getValueAt(int arg0, int arg1) {
// TODO Auto-generated method stub
return null;
}
}
Я знаю, что это много кода для простого поста, но я действительно не знаю, как еще показать текущую проблему. Любые хорошие ссылки помогут или посоветуют сами по себе.
Спасибо, что нашли время, чтобы прочитать код и, возможно, помочь мне.
Помните, я всего лишь студент-программист, поэтому мне нужно многое узнать о конвенциях и т.д. Так что указатели также приветствуются, так как мне не терпится поучиться у более опытных разработчиков.