Я делаю книжный магазин, и у меня есть кнопка «Корзина», которая открывает корзину, и пользователь может видеть все, что он добавил. Проблема в том, что каждый раз, когда я нажимаю на эту кнопку, я выполняю запрос выбора и добавляю эту книгу / книги в ArrayList. Например, пользователь добавил 2 книги в корзину, поэтому каждый раз, когда я нажимаю кнопку «Корзина», он добавляет эти две книги в ArrayList и отображает их (в db все хорошо). Вот как выглядит метод:
private static DataSource dataSource;
private static ArrayList<Article> articleList = new ArrayList<>();
public static void selectArticle() {
try {
InitialContext ctx = new InitialContext();
dataSource = (DataSource) ctx.lookup("jdbc/NemkeDB");
Connection conn = dataSource.getConnection();
String selectArticle = "select * from article where cart_id="+CartDAO.getAutoIncKey();// this is cart id
PreparedStatement ps = conn.prepareStatement(selectArticle);
ResultSet rs = ps.executeQuery(selectArticle);
while (rs.next()) {
int articleId = rs.getInt("id");
String articleTitle = rs.getString("title");
double articlePrice = rs.getDouble("price");
double articlePriceSum = rs.getDouble("priceSum");
Article article = new Article(articleId, articleTitle, articlePrice, articlePriceSum);
articleList.add(article);
}
} catch (Exception e) {
System.err.println(e);
}
}
Как я могу отображать корзину без добавления товаров каждый раз, когда пользователь нажимает кнопку? Я просто для того, чтобы показать, как это находится в моей базе данных.