Prerequisites

Officials

Paths

Web Development

Spring WebFlux

Spring MVC

Spring

Thymeleaf

JSF

JSP

Servlet

https://www.coursera.org/specializations/object-oriented-programming 120h Approx. 5 months to complete Suggested 6 hours/week

StyleGuide

Courses

https://introcs.cs.princeton.edu/java/home

Java Tutorial

Java Tutorial for Beginners: Learn in 7 Days

Java Succinctly Part 1

Java Succinctly Part 2

Spring Boot Fundamentals

Ebooks

Reporting

Jasper

Unit testing

Tools

IntelliJ

Lombok

Checker-qual

Links

API

Notes

Runtime.getRuntime().availableProcessors() -> 4

Licenses

import java.util.Arrays;
public class Test{
  public static void main(String[] args){
    String[] array = new String[]{"a", "b"};
    System.out.println(array);
    System.out.println(Arrays.toString(array));
    System.out.println(Arrays.deepToString(array));
  }

}
Presentation Layer
Service Layer
Data Access Layer
Stream vs List
Paging