¿Cuáles son los conceptos básicos de Java en los que debo centrarme para aprender el desarrollo de aplicaciones web?

También estoy aprendiendo Java, pero recomendaré un curso edX impartido por una universidad española (no te preocupes, el inglés es excelente) llamado Universidad Charles III de Madrid

He realizado varios cursos en línea y este es, de lejos, el mejor, es un curso de Java que tiene lugar en tres módulos de cinco semanas cada módulo enseña varios aspectos de la programación.
Las primeras tres semanas del primer módulo se centran en los conceptos básicos de la programación. Variables, matrices, condiciones, bucles, funciones, recursividad, etc.
La cuarta semana se vuelve más interesante ya que se enfoca en la Encapsulación de Objetos: abstracción, polimorfismo, herencia de objetos, etc. y la quinta semana en paquetes y apis.
El segundo módulo se trata de escribir un buen código que introduce herramientas para refactorización, depuración, pruebas unitarias, pruebas de integración, eficiencia, complejidad, acoplamiento, cohesión, etc.

El tercer módulo trata sobre estructuras de datos y algoritmos. que trata una variedad de temas como clases genéricas, listas vinculadas, colecciones, pilas, colas, árboles, montones, clasificación, etc.
Cubre muchos principios de programación y el curso aumenta en dificultad. Y es una razón muy interesante por la que realmente me gusta el curso es que construyes programas a lo largo del curso. Por ejemplo, en los laboratorios que trabajas en un laberinto durante el curso y en los laboratorios del módulo uno, donde se habla de matrices en el laboratorio, creas matrices para el laberinto. Más tarde, cuando aprenda sobre la recursividad, construye métodos recursivos para encontrar caminos en el laberinto. Y luego comienzas a trabajar en un proyecto para crear diferentes personajes de fantasía que tienen atributos y diversas interacciones, y en la sección sobre Encapsulación de objetos , combinas el programa del laberinto con el programa de personajes utilizando interfaces y clases abstractas que realmente unen la herencia.
Personalmente, el curso me pareció extremadamente bueno y agradable, y también me dio una mejor comprensión de la programación orientada a objetos y sus habilidades. Además de una apreciación por Java y la forma en que funciona.

Aquí hay un enlace al primer módulo. Por el momento, el curso está archivado, pero aún puede acceder a todo el material, pero no podrá obtener un certificado.
https://courses.edx.org/courses/…

Han pasado aproximadamente 2 años desde la última vez que trabajé en el nivel web en Java … pero estoy seguro de que lo siguiente sigue siendo relevante …

Aprende la API de Java servlet. Comprenda los roles y los ciclos de vida del contexto HttpServletRequest, HttpSession y Servlet.

Muchos frameworks basados ​​en java / web se basan en esta tecnología básica. Si puede comprender lo anterior, estos otros marcos más complicados pueden ser más comprensibles.