Я учусь использовать playframework
, написав код для реализации webstore
для продажи предметов. Я реализовал область Admin
с использованием модулей crud
и secure
. Теперь я хочу создать shopping cart
, к которому пользователь может добавить товары и перейти к оформлению заказа.
Мои знания в области электронной коммерции минимальны, но я изучил некоторые учебники, в которых реализованы корзины покупок и некоторые функции интернет-магазина, используя servlets
. В книгах корзина содержала Set
CartItem
с, каждый из которых содержал экземпляр Product
и quantity
. После того, как пользователь добавил товары в корзину, корзина хранилась в user session
.
Таким образом, каждый раз, когда пользователь переходил на страницу сведений о корзине, он отображал все добавленные элементы. Только когда сеанс был очищен (либо из-за тайм-аута сеанса, определенного на сервере, либо после размещения заказа), CartItem
были удалены из ShoppingCart
.
Полагаю, я могу использовать Cache в playframework для выполнения вышеуказанного. После добавления CartItem в экземпляр ShoppingCart. Я могу
shopcart.add(mycartItem);
Cache.set(session.getId(), shopcart);
..
и позже, на другой странице, я могу получить корзину и ее содержимое, обработать их и очистить корзину.
ShopCart cart = Cache.get(session.getId(),ShopCart.class);
Set<CartItem> items = cart.getCartItems();
processOrder(items,userinfo);
...
cart.clearItems();
Это правильный путь? Если я думаю, что это неправильно, пожалуйста, помогите мне с предложениями.