My New Book SpringBoot : Learn By Example Published Today

Share this post:

I am happy to announce that my new book, SpringBoot: Learn By Example, was published today on Leanpub.

SpringBoot : Learn By Example

What is SpringBoot?

Spring is one of the most popular Java frameworks out there for building web and enterprise applications.

Spring supports a variety of configuration approaches (XML, Annotations, JavaConfig, etc.), and properly configuring Spring applications can become a bit tedious and repetitive. To avoid these problems, the Spring team introduced Spring Boot to address the complexity of configuring a Spring application.

Spring Boot is an opinionated approach to configuring Spring-based applications. Spring Boot automatically configures the application components based on various criteria, like the jars you have on your classpath, the beans you have already configured, the properties configured, etc., which makes it very easy to get up and running quickly.

I strongly believe that the best way to learn or teach is by using examples. This book is filled with plenty of examples explaining the concepts in a step-by-step manner.

Who is this book for?

If you are looking for a fast-paced guide to learn how to build Spring-based applications using Spring Boot, this book is for you!

If you are a Spring developer but haven’t gotten your hands on Spring Boot and you feel like, “I know the drill, just tell me how to do it the Spring Boot way,” this book is what you are looking for!

If you are just starting to use Spring Boot and it is working great, but it all looks magical and you want to understand how Spring Boot works behind the scenes, this book will definitely be helpful to you!

If you are a seasoned Spring developer with a good grasp of Spring framework concepts and you just want a fast-paced guide to learn Spring Boot quickly, sure, this book is definitely for you!

I see a lot of people asking, “What is the difference between Spring MVC and Spring Boot?”, “Should I use Spring Boot or Spring MVC for my next web application?”, etc. See Here, Here, and Here. The short answer is, Spring Boot is nothing but Spring, but it helps you a lot to build Spring-based applications quickly. The next question would be, How?. The best way to explain it is by creating an application WITHOUT Spring Boot and showing how quickly you can develop the same application WITH Spring Boot.

This book explains how we normally build a Spring application without Spring Boot and shows how we can build the same application using Spring Boot in a much easier way so that you can correlate the concepts and see how Spring Boot increases developer productivity.

Spring Boot does so many things behind the scenes to automatically configure the application. This book explains how Spring Boot AutoConfiguration works behind the scenes in a very detailed manner and shows how we can create our own AutoConfiguration as well.

What does this book cover?

The SpringBoot: Learn By Example book covers the concepts that we commonly use in our Spring applications.

  • What is Spring Boot and how to get started with it?
  • How Spring Boot AutoConfiguration Works behind the scenes using @Conditional?
  • Spring Boot goodies like Logging, ConfigurationProperties, DeveloperTools
  • Working with Databases using JdbcTemplate, MyBatis, jOOQ, Spring Data JPA
  • Working with the MongoDB NoSQL database
  • Developing Web Applications using Spring MVC
    • Spring Boot Web Starter awesomeness
    • Using Thymeleaf Views
    • File Uploading
    • Validation, I18N
  • Developing RESTful Services using Spring MVC and Spring Data REST
  • Consuming a Spring Boot REST API from an AngularJS application
  • Securing Web applications and REST APIs
  • Monitoring Spring Boot applications with Spring Boot Actuator
  • Testing Spring Boot applications

To get a complete list of topics covered in this book, please see the below Table of Contents.

Table of Contents:

1. Introduction to SpringBoot

  • Overview of the Spring framework
  • Developing a Web Application using Spring MVC and JPA
  • A Quick Taste of Spring Boot

2. Getting Started with SpringBoot

  • What is Spring Boot?
  • Our First Spring Boot Application

3. SpringBoot Behind the scenes

  • Exploring the Power of @Conditional
  • How Spring Boot AutoConfiguration Works

4. Creating a Custom SpringBoot Starter

  • Create a twitter4j-spring-boot-starter

5. SpringBoot Essentials

  • Logging
  • Externalizing Configuration Properties
  • Developer Tools

6. Working with JdbcTemplate

  • Using JdbcTemplate without Spring Boot
  • Using JdbcTemplate with Spring Boot
  • Initializing a Database
  • How to use other Connection Pooling libraries?

7. Working with MyBatis

  • Using the Spring Boot MyBatis Starter

8. Working with jOOQ

  • Using the Spring Boot jOOQ Starter

9. Working with JPA

  • Introducing Spring Data JPA
  • Using Spring Data JPA with Spring Boot

10. Working with MongoDB

  • Introducing MongoDB
  • Getting Started with MongoDB using the Mongo Shell
  • Talking to MongoDB using Spring Data Mongo

11. Web Applications with SpringBoot

  • Developing a Web Application using Spring Boot
  • Using Tomcat, Jetty, and Undertow Embedded Servlet Containers
  • Customizing Spring MVC configuration
  • A Spring Boot web application as a deployable war
  • Spring Boot Supporting View Templates
  • Working with Thymeleaf Forms
  • Data Validation
  • File Uploading
  • Using ResourceBundles for Internationalization (I18N)

12. Building a REST API using SpringBoot

  • Introduction to RESTful Web Services
  • A REST API using Spring MVC
  • A REST API using Spring Data REST
  • Consuming a REST API from AngularJS

13. Securing Web Applications using SpringBoot

  • Spring Security in a Spring Boot Web Application
  • Method-Level Security
  • Securing a REST API using Spring Security

14. SpringBoot Actuator

  • Exploring Actuator Endpoints
  • Customizing Actuator Endpoints
  • Securing Actuator Endpoints
  • CORS support for Actuator Endpoints
  • Monitoring and management over JMX
  • Monitoring and management using a remote shell

15. Testing SpringBoot Applications

  • Testing Support in Spring Boot
  • Testing RESTful Services using RestTemplate
  • Testing Secured Controller/Service Methods
  • Testing with Mockito

Thank You, Manuel Jordan

I would like to thank Manuel Jordan (@dr_pompeii) for reviewing the book and providing feedback, which helped me a lot to improve the quality of the book’s content.

If you wish, please do me a favor by spreading the word on Twitter, Facebook, LinkedIn, etc.

I hope you will enjoy the book. 🙂

Share this post:

Related content

comments powered by Disqus