Во-первых, у Java полная обратная совместимость и бо́льшая часть языка была написана более двадцати лет назад. Соответственно, книги по Java 1.2 всё ещё актуальны. Во-вторых, этот вопрос здесь задавался уже десятки раз.
Например.
P.S. До мидла можно добраться только в результате двух-трёх лет работы в офисе под руководством опытных коллег.