I'm creating this webapplication for a subject, called Project Laboratory, at the university.
During this project I will get to know the Spring framework and related technologies like
- the Maven build automation tool,
- the database ORM technologies like JPA, Hibernate, EclipseLink
- the Thymeleaf template engine
- the AJAX frontend technology
- Bootstrap and JQuery to create frontend design and of course some parts of Spring such as Spring Boot, Spring MVC, Spring Data, Spring Security and so on..
I will need a frontend (Angular) application to make Controllers communicate with JSON objects (because now I send back a view with the requested data and Thymeleaf renders it, it's not really economical). I will also need that application for the shopping cart, because I think it's not the best practice to store the temporary content of the cart in the backend.
Anyway this project is about learning Spring framework, I will learn Angular later.