Building Spring Boot Applications with the Kotlin Programming Language
Matt Greencroft
  • Course duration: 7h 51m

As Kotlin is gaining more and more popularity, it's crucial for anyone who knows Java to expand their horizons. This video course is the perfect doorway into Kotlin.

Gustavo Gomes, Android Developer, TV App Agency
See it. Do it. Learn it! Interest in the Kotlin programming language has been soaring. Kotlin’s effortless syntax and embrace of multiple programming styles are now fully supported in Spring Boot! In the video course Kotlin with Spring, seasoned IT trainer Matt Greencroft builds on your Java and Spring knowledge as you level up with Kotlin. This all-encompassing interactive journey gets you coding as you learn with lots of practical exercises and a cool hands-on real world case study: a theater booking system! You’ll be amazed at how much more productive you are when you combine the power of Spring with the flexibility and robustness of Kotlin!

Distributed by Manning Publications

This course was created independently by big data expert Matt Greencroft and is distributed by Manning through our exclusive liveVideo platform.

About the subject

Kotlin is a modern programming language for the JVM developed by Jetbrains, the makers of the IntelliJ IDE. Besides Java, Kotlin is the only officially supported language for Android development. Fully interoperable with Java, Kotlin boasts a number of enhancements Java just doesn’t have. Say goodbye to repetitive boilerplate and null pointer exceptions and write code that’s expressive, understandable, and safe! What’s more, Kotlin allows for immutable and non-nullable variables, and you’ll be writing less code with fewer classes. Compared to other JVM languages, Kotlin is an easy transition for Java developers. And a smart one!

About the video

Building Spring Boot Applications with the Kotlin Programming Language teaches you to write clean, concise, easily maintainable Kotlin code using Spring Boot. Watch and learn as Kotlin expert Matt Greencroft explains Kotlin syntax and its automatic benefits. You’ll explore Kotlin features such as immutable variables, null-safety operators, data classes, templates, and top level functions. Then, you’ll discover the design approaches that make the most of the Spring and Kotlin combination, including using Spring Boot’s Hibernate framework and the Thymeleaf template engine.

You’ll dive into functional programming and reflection, and you’ll reinforce your learning with lots of helpful examples. Throughout the course, you’ll incorporate your new skills by building a real world theater booking system! With this value-rich visual learning experience, you’ll be more productive and—happier!—as you confidently create amazing, robust applications with Kotlin!
Table of Contents detailed table of contents



What is Kotlin?

Installing IntelliJ

Configuring IntelliJ

Working with Strings

Creating a new project in Kotlin

Variable declaration syntax

Inferring variable types and println

Using String templates

Multiple line strings

Other variable types

Using the Double and determining class types

The Int data type

Other data types

Casting in Java

Casting in Kotlin

Chapter review

Nullable variables

Creating variables that can contain a null value

Methods that work with nullable parameters

The null-safe and non-null asserted operators

The nothing object type


The function syntax and the Unit object

Creating and calling top level functions

Single expression functions

Using named parameters when calling functions

Other aspects of functions in Kotlin


Project structure and packages

The class declaration and class level attributes

Instantiating a class, and accessing the class attributes

Creating a simple constructor

Secondary constructors

Alternative class design

Overriding getters and setters

Functions within a class

Static functions

Data classes

Practical exercise 1

Explaining the challenge

Solution walkthrough

The If expression and object equality

The If keyword as an expression

Using if to do a null-safe check

The let function

Object equality and the when expression

Ranges and Looping

The While loop

Using for to loop through a collection

Destructuring with a for loop

Looping with the Range object


Mutable collections with immutable variables

Immutable lists

Mutable lists

Maps and sets

Working with Arrays

Practical exercise 2

Explaining the challenge

Solution walkthrough

Exceptions and Try Catch Blocks

Exceptions are unchecked

Throwing exceptions

Try as an expression

Use as an expression (try with resources)


Using Junit with Kotlin

The Kotlin test assertions

Testing for exceptions

Interfaces and Extending classes

Creating and implementing Interfaces

Class inheritance

Creating custom exceptions

Extension functions

Java interoperability

Instantiating classes and providing values to non-nullable variables

Using data classes

Using immutable lists

Exception handling

Using static functions

Importing a Kotlin jar into a Java project

Getting started with Spring Boot

Creating a project with the Spring Initializer

A hello world controller

Auto restarting an application

Overview of the case study we’ll be working on

Creating views and backing beans

Connecting views to controller functions

Adding services

Posting data to a controller

Dependency injection

Revisiting backing beans

Functional programming

Functional programming overview

Methods that take function parameters - the Java way

Methods that take function parameters - the Kotlin way

Functional programming with lists

Filter and flatmap

Reduce and Fold

Working with Maps

Getting started with Hibernate

Adding the Hibernate dependencies

The challenge of creating entities

Persisting data to a database

Practical exercise 3

Step 1 - explaining the challenge

Solution Walkthrough

Mappings between entities

Upgrading the view

Step 2 - explaining the challenge

Solution walkthrough

Step 3 - explaining the challenge

Solution walkthrough


The concept of reflection

Inspecting properties and functions

A practical use for reflection

Thank you and goodbye!


Perfect for Java programmers with some experience with Spring Boot. No Kotlin experience is required.

What you will learn

  • Functional programming with collections
  • Creating immutable and non-nullable variables
  • How Kotlin helps you avoid null pointer exceptions
  • Exception handling in Kotlin, including custom exceptions
  • Using Spring Boot with Kotlin, including Hibernate and Thymeleaf
  • Converting existing Java apps to Kotlin

About the instructor

Matt Greencroft has been working as a professional IT trainer since 2013. His specialties are JavaEE, Android, Hadoop and NoSQL. Previously, he developed applications and websites for his clients in the business and finance sectors, many of which he still maintains.

placing your order...

Don't refresh or navigate away from the page.
liveVideo $77.49 $154.99
Building Spring Boot Applications with the Kotlin Programming Language (liveVideo) added to cart
continue shopping
go to cart

Prices displayed in rupees will be charged in USD when you check out.