Приветствую!
1) идете сюда
https://start.spring.io/
и выбираете dev tools, web, mysql (или postgres), jpa, thymeleaf, security
2) регистрация и авторизация реализуется при помощи spring security
3) создаете файт конфигурации (@Configuration) и прописываете ваш конфиг для security
4) создаете шаблон при помощи thymelеaf (по факту вам сперва нужны 2 формы - форма авторизации и форма регистрации). При необходимости можете добавить форму восстановления пароля и механизм подтверждения аккаунта
5) реализуете метод, кототрый возвращает список всех пользователей со всеми зависимостями и при помощи шаблонизатора выводите на фротн-энд. Смотрите в сторону
Model, model.addAttribute() th:each
6) создаете форму редактирования профиля и метод в контроллере, который это все приниает и обрабатывает.
А вот, видео -
https://www.youtube.com/watch?v=WDlifgLS8iQ
Кстати, там используется freemarker, можете выбрать любой понравившийся (mustache, thymeleaf, freemarker и др.)
С бд проблема тк у меня MAC OS ,
Я не знаток Маков, но насколько я знаю не должно быть проблем с БД. Так что берите mysql || postgres
https://dev.mysql.com/doc/mysql-osx-excerpt/5.7/en...