Course

Advanced Java

Server-side Java concepts for database access, web applications, deployment, concurrency, patterns, builds, logging, and testing.

Start course

intermediate to advanced / 36 lessons

Log in to track your progress through this course.

About this course

Who it is for

This course is for developers who already know core Java, including classes, collections and exceptions, and want to build server-side applications. It suits final-year students, interns starting backend work and anyone preparing for Java backend interviews.

What it covers

It begins with JDBC: drivers, connections, Statement and PreparedStatement, ResultSet, transactions and connection pooling. Next come Servlets and JSP, the request and response model that every Java web framework is built on, including sessions, filters and the MVC pattern. The Hibernate module covers entity mapping, relationships, inheritance strategies, caching, HQL and the Criteria API. The last two modules cover networking, reflection, annotations, enums and NIO, then engineering practice: design patterns, Maven and Gradle, logging, JUnit and Mockito, and packaging applications as JAR and WAR files.

How to use it

Each lesson pairs the explanation with code examples, and the JDBC lessons can be run against an in-memory H2 database with no server to install. Take the modules in order, because Hibernate builds on JDBC and JSP builds on Servlets. Spring is taught in its own Spring Framework and Spring Boot courses, which are the natural next step.

Course roadmap

Your Advanced Java journey

Milestones
6
Topics
36