Course Link: Apache Camel – Learn by coding in Spring Boot

Learn to build Apache camel applications using Spring Boot Framework.

What you’ll learn

  • Students will be able to build production grade apps in Apache Camel Framework using Spring Boot.
  • Students will have exposure to different components in camel by actually building apps.
  • Learn to develop a camel app using spring boot from Scratch
  • Learn to build JUnit test cases for the spring boot Camel app
  • Learn to build a camel + Spring boot with Postgres
  • Learn to alert via email in case of any error/exceptions
  • Learn to monitor the camel spring boot app and alert on any errors
  • Explore different libraries and components in Camel using Java DSL
  • Learn to build a camel + Spring boot with different technologies such as Kafka, ActiveMQ, REST, DataBase, EMail and SOAP

Requirements

  • Basic Knowledge of Java
  • Knowledge of tools like IntelliJ
  • Understanding and experience with Spring Boot

Description

Learn Apache Camel by coding it in Spring Boot framework. This is purely a coding course where you will be doing a lot of code and build a fully functional app by the end of each section.

This course will cover integrations with :

  • Kafka
  • Active MQ
  •  Postgres SQL
  •  Rest
  • SOAP,
  • File  and etc.,

Why should I take this course?

  • This course will provide you with the fundamentals of how to build apache camel applications using Spring Boot.
  • All the concepts will be explained through code.
  • This course will walk you through the Spring Boot Integration with Camel step by step.
  • Gain confidence in the Apache Camel framework using Spring Boot by developing a fully functional application by the end of each section.
  • By the end of this course, you will have a complete understanding of implementing the Apache Camel concepts in Spring Boot Framework.

Course Overview:

Section 1: Getting Started

  • This section explains about the author and course overview.

Section 2: WorkSpace SetUp – MAC

  • This section covers the installation of Java and IntelliJ on a Mac machine.

Section 3: WorkSpace SetUp – Windows

  • This section covers the installation of Java and IntelliJ on a Windows machine.

Section 4: Spring Boot – Quick Intro – Building a Simple REST API

  • This section is optional and students can ignore this section if you already have experience working with Spring Boot.
  • In this section, we will build a simple REST API that returns the current time and data of the time.
  • Explore different annotation options such as @Autowired and @Service.
  • Explore the Spring Profiles module to maintain configurations for different environments.

Section 5: Camel- Quick Intro

  • This section is optional and students can ignore this section if you already have experience working with Apache Camel framework.
  • In this section, we will build a simple Camel app that copied the file from one folder to another folder.
  • Learn how camel transports the content.
  • Learn about the Camel Architecture.

Section 6 – App# 1 – Build  a Simple Camel Route – File -> DB -> MAIL 

  • Overview of the app that we are going to build in the following few sections.
  • In this tutorial, we will build a simple spring boot app that is going to copy the file from one node and another node.
  • Explore the CAMEL IntelliJ Plugin.
  • Build a completely working app in your machine.

Section 7 – Testing a Spring Boot Camel Route – Camel JUnit Testing Libraries

  • This section covers how to test a spring boot app using camel Junit Libraries
  • Write Code to explore the mock and integration testing of the Camel Route in Spring Boot.

Section 8 – Enable Logging in Spring Boot – Using LogBack and Lombok

  • This section explores about how to enable logging in our Spring boot camel app.
  • Write Code to explore the log back configuration.
  • Install and Explore the Lombok plugin and configuration.

Section 9 – Connecting to  Postgres DB

  • This section explores about how to connect to PostGres DB from your spring boot camel app.
  • Write Code to parse the csv file to a Java Object using Camel-Bindy
  • Learn to install postgres in Mac/Windows machine.
  • Write Code  to configure the DataSource in your spring boot camel app.
  • Write code to perform the CRUD operation from your application using camel-jdbc component.

Section 10 – Error/Exception Handling in Camel Route

  • This is section explores and explains about different options of error handling in camel.
  • Write code to configure DefaultError Handler, DeadLetter Channel and OnException.

Section 11 – Alerting in Camel Spring Route

  • This section explores about the alerting to a configured email address from you app.
  • Write code to configure the email address in your app.
  • Write code alert on the configured email incase of any error in your app.

Section 12 – Monitoring the Camel Route application Health

  • This section explores about monitoring the camel routes and check the health of the app.
  • Write code to introduce the health check of the camel app.
  • Write code to alert in case of any of the component in the route is down.

Section 13 – Camel Spring Boot Boiler Plate Code

  • This section explains about the camel spring boot boiler plate code.
  • Boiler plate code is loaded with Mail, DB and profile configuration of the app.
  • This helps speed up the process of building the  camel spring boot app .

Section14 – App# 2 Build a Kafka Camel Route – Kafka -> DB -> MAIL 

  • This section focuses on building the camel route integrated with Kafka.
  • Setting up Kafka in your machine.
  • Write code to build the Kafka consumer using camel-kafka component.
  • Design the DB table for persisting the data.
  • Write code to  parse the JSON object to Java Object using camel-gson library.
  • Write code to configure the DB to perform the CRUD operation using camel-jdbc component.
  • Write code to test the Kafka route using CamelTest Support libraries.
  • Write code to increase the consumer count and parallel process the data from the Kafka topic..
  • Write code to publish the data in to the kafka topic.
  • Select the persisted record using the camel-sql library.
  • Run the fully functional app in your local machine.

Section 15 – App# 3 Build a ActiveMQ Camel Route – ActiveMQ -> DB -> MAIL

  • This section focuses on building the camel route integrated with ActiveMQ.
  • Setting up ActiveMQ in your machine.
  • Write code to build the activeMQ consumer using camel-activeMQ and camel-jms component.
  • Write code to  parse the JSON object to Java Object using camel-gson library.
  • Write code to configure the DB to perform the CRUD operation using camel-jdbc component.
  • Write code to test the Kafka route using CamelTest Support libraries.
  • Write code to publish the data in to the activeMQ queue.
  • Select the persisted record using the camel-sql library.
  • Run the fully functional app in your local machine.

Section 16 – App # 4 -Build a REST Camel Route – REST -> RESTLET-> DB -> MAIL

  • This section focuses on building the camel route integrated with REST API.
  • Write code to build the rest api client to call the countries rest api using the camel-http component.
  • Write code to  parse the JSON object to Java Object using camel-gson library.
  • Build a brand new post endpoint to persist the data in to the DB using the camel-restlet component.
  • Write code to test the post endpoint and persist the data in to the DB.
  • Select the persisted record using the camel-sql library.
  • Run the fully functional app in your local machine.

By the end of this course you will have a complete understanding of how to build camel apps using Spring boot from scratch. Gain confidence with Apache camel framework using Spring boot.

Who is the target audience?

  • Anyone who is willing to learn Apache Camel with Spring Boot.
  • Anyone who would like to expand their knowledge in Apache camel.
  • Any who wants to learn about different integrations with Camel