Примерный роадмап такой
1) Знание java core. Особое внимание уделить java multithreading, это важно и незнание этой штуки может сыграть с вами злую шутку.
На счет кровавого веба, вам будет достаточно знаний 7 версии(java se 1.7) а восьмую доучите в процессе. Единственное исключение что бы не плеваться от ненависти, нужно из 8 версии поучить Date and Time api. Оно там шикарное, в отличии от 7.
2) После освоения java core, обратите внимание на sql(в ообщем и целом),html, css, js, sass, less.
3) Как только разобрались с пунктом 2 вы готовы к вебу. И вам нужно выбрать, либо голый ее, либо spring. И там и там есть свои плюсы и минусы, и там и там свои особенности. Но хуже всего, это то что все технологии можно смешать вместе((((
4)Если решили выбрать spring читаете по нему книги, тутотриалы и прочее.
Вот к примеру примерчик простого круда(
https://www.youtube.com/watch?v=e7swABdqOS4) Но его смотреть можно только если есть база. Мой совет для простых приложений берите спринг.
5)Если ее тогда читаете книги по ее и пиште свои приложения.
Список ресурсов.
1)Java :
Брюс Эккель Философия java
Брайн Гоец java concurrency in practice
Блох эффективная java
javarush.ru для практики
2)ее + spring
книг по этим технологиям мало и они быстро гугляться
курсы типо григория кислина(есть на трекере но лучше задушить жабу и купить) на этом курсе можно получить целостное представление обо всем стеке
Смотреть курсы в интернете нужно осторожно, потратьте время на понимание того что такое java ee, сэкономите себе время и нервы. А инструменты будете доучивать по мере возможностей