WebShop
Web shop project
A java web application project based on Spring framework.
Application which allows selling and purchasing items available in the shop. The main page displays several randomly chosen items from database with pictures and descriptions:
The application allows users to register and log in to their account using spring Security
New items can be added only by users with
admin
role.Items can be purchased by regular users after registration, but can be viewed by anyone using the application with default
Guest
account.Every user has a custom credit balance om their account which can be changed only by a user with
admin
role or by transaction within the application. Every user has a cart in which the items to buy are stored and when the user logs out or the session expires and items are not purchased, they are added again to items pool.
Tech details
Views are provided by the backend via JSP pages.
The project's persistence is provided by Hibernate framework operating on MySQL database, however there are several maven profiles configuring databases for HSQLDB, PostgreSQL and MySQL db providers.
Tests written using junit and mockito APIs.
The application run on Apache Tomcat servlet container in version 8.0.30