
Explore the Java ecosystem beyond the language, covering Maven, database connections, and Spring XML, with fully runnable code examples hosted on GitHub.
Explore TestNG, an xUnit style framework like JUnit, with data providers for running tests against multiple data sets and an actual-then-expected assert order; it supports mvn test and gradle test.
Explore Spring Core and the broader Spring ecosystem, focusing on dependency injection to wire components. Compare xml configuration and annotations, and preview Spring Boot to streamline development.
Explains configuring Spring with annotations, including @Component, @Service, and @Autowired on constructor, field, or setter; describes constructor injection for required dependencies, and annotation-based bootstrapping with AnnotationConfigApplicationContext and component scanning.
Externalize configuration using Java properties files to simplify deploying multiple environments, like dev, test, and production, by reading runtime values without changing code, using dot separated keys.
Explore Java web application frameworks like Spring MVC, Spring Boot, JSF, and Vaadin, and grasp the request–response flow through servlet containers and JSP views.
Render a dynamic flavors dropdown in a Spring MVC view using JSP with JSTL and expression language, and forEach to iterate the flavors collection and display each value via toString.
Explore how Spring MVC controllers use @Controller and @RequestMapping to manage models, pass flavors and toppings to the new-order view, and bind form data to an order with @ModelAttribute.
Configure a Spring MVC app using XML or Java configuration with WebConfig, mapping views via a prefix and suffix. Compare deployment via servlet container or embedded container with Gradle.
Explore Spring Boot's zero-config web development with starters on your Gradle or Maven project, using Spring MVC and Thymeleaf for rapid, browser-ready views.
Discover how Vaadin 8 UIs route and render views with setContent, using the View interface to display the order screen, and manage theming with the Valo theme and SCSS.
Learn to deploy Java web applications by packaging as war and ear, using docker to run Tomcat or JBoss WildFly, and deploying via webapps or deployments folders.
Explore spring's JDBC template, a low-level, thread-safe database option backed by a data source, with dependency injection and a data model of ingredients, flavors, and toppings.
Demonstrate saving an order to an in-memory H2 database using Spring Boot, and explore purchases, line items, ingredients, toppings, and flavors via the H2 console.
Hibernate provides three retrieval methods: criteria, HQL, and native SQL, each with trade-offs in typing and readability; the lecture shows filtering ingredients by type and returning ingredient lists.
So you've just got your first Java development job out of school or you're an experienced developer using Java for the first time. You know how to write code, but do you understand the Java landscape, tools, and frameworks used in real world applications?
This course bridges the gap between understanding Java the language and understanding the Java ecosystem. You will get an overview of the major tools and frameworks in use today from a Java professional with over 10 years of industry experience.
After completing this course, you will have the knowledge to jump into your first application with confidence.
Note: I have manually corrected 100% of the captions to help Deaf, Hard-of-Hearing, and English as a second language learners.