Начни с синтаксиса языка. Найди пару популярных книг по Java и прочитай их по быстрому. Далай задания из этих книг. Важно набить руку, чтобы ты не боялся языка, мог с закрытыми глазами написать hello world или чтение/запись в поток.
Нельзя просто сказать изучи вот эти классы и все. Правильнее сказа изучить API java - JDBC, Date Time Api, Swing, Stream API, Collection API, Serialization и т.д.
Я так понимают этот этап ты уже прошел
Было бы полезно понимать в общих чертах как работает JVM и сборщик мусора
Очень важно понимать теорию, она нужна для понимания и на собеседованиях
Структуры данных. Списки, ассоциативные массивы, деревья - какие бываю, как работают, как реализованы в java
Методологии программирования. ООП, процедурное и функциональное программирование, чем отличаются
Далее можно приступать изучении инфраструктуры java - тулы для сборки и фреймворки. Тут объемы информации огромные. Самое главное, чтобы в голове не было каши. Брать по одному инструменту, изучать и переходить к следующему.
Например maven - установить, создать проект, поиграть с зависимостями и плагинами, создай проект с зависимостями без maven, потом перевести его на maven
Servlet API - поставь tomcat, научись создавать web приложения с использованием сервлетов.
Spring Framework это отдельная песня, начни с раздела IoC, создай контекст в нем несколько связных бинов, потом переходит к другим разделам JDBC, MVC, AOP. на начальном этапе не трогай Spring Boot, т.к. это он объединяет кучу технологий и скорее всего новичок в них запутается, но это ИМХО.
Необходимым требованием будет умение работать с БД, устанавливать, создавать базы, таблицы, писать SQL запросы, выполнять SQL запросы из java с помощью JDBC и желательно с помощь какой нибудь ORM.
Это мои личные требования к Junior разработчику, которого можно взять на испытательный срок