From the course: Spring Boot 3 Essential Training

What you should know

- [Narrator] In order to be successful in this course, there are a few prerequisite knowledge expectations as well as some tools to discuss. We are using the Spring framework for Java for this course. While you can use other JVM languages like Kotlin or Groovy, we'll be focusing on Java. As such, you need to have a JDK installed on your computer. I'll be using JDK 21, as it is a long-term support version. You can use different JDKs as well, based on the current Spring support for this course. We will not be using any advanced language constructs. I expect you to have some intermediate level Java skills so you don't get tripped up in the language itself. We won't be doing anything too difficult, but it is hard to learn a framework for a language when you are struggling with the language itself. I do expect you to understand how to compile a Java application. While we will be using our IDs for a lot of it, it is important to understand what compilation and packaging does in Java. You'll also need to understand how to run a Java application, specifically a package jar. We will go through this, but it is basic understanding for building a Spring Boot application. Finally, debugging is an important skill for Java development or any language for that matter. If things don't work right on the first attempt, debugging your running program should help you figure out what is going wrong. Now, this is a course on Spring Boot, and as such, you should understand a little about the Spring framework itself. I will walk through the configurations and implementations, but you should have a basic understanding of the framework itself, as I mentioned. I have several courses in the library, including Learning Spring with Spring Boot and Spring Framework in Depth. That will give you a good background. You should understand why Spring is such a value for Java developers, and I assume you do since you're here. When you add that value to the speed and ease of Spring Boot, you'll get a holistic picture of why this is a good framework to learn. You don't need to be an expert in Spring itself to use it or to get value out of this course. However, the more you use it, the more expertise you will get in it. For this course, we will use Apache Maven to manage our dependencies. With Spring, you can use Gradle if you want. In fact, that is what the Spring team itself uses. But I find Maven to be easier to use, especially in a learning environment. You will need to have Maven installed on your machine. Apache gives you some great instructions on how to install Maven itself, so I will leave that to you. You will need to understand some basic Maven commands. I have a course in the LinkedIn Learning Library introducing Maven that will get you up to speed if you need some work with Maven itself. Now, here's the link from Apache that you can use to install Maven on your operating system. Now, one thing to mention, Spring does come packaged with Maven scripts, so you actually don't need to install it. I just find it's a little bit cleaner to use it when it's installed in your OS. So if you really don't want to install this on your machine, you can leverage the wrapper scripts that come with the Spring Boot project. Now, we are going to use Docker for a few of our dependencies. That being said, some of these backing services with Docker will require you to have Docker or something similar installed on your machine. I'm going to provide you scripts that you can use to execute the underlying backing services, but again, you will need something to run those container images. So you can use something like Rancher or another image management tool if you want. I'm going to be using Docker desktop. Now, you're not going to need a lot of in-depth knowledge on Docker, just have it installed and maybe some basic understanding of why we use it in a development environment. But again, I'm going to give you the scripts that you need to run the services. So you really don't need to know a lot about Docker. Just have it installed and follow the instructions at Docker Desktop or Rancher, any of these tools will work. Now, there are a few other tools that you're going to need for this course. The first one is a Java IDE. Now I use IntelliJ ultimate edition. By no means do you need to go out and buy this IDE, you can use VS Code. You can use the community edition. There are many ways to build a Java application and while I'm going to use some of the plugins with IntelliJ, everything I'm doing can be done either through a website or through comparable plugins and other IDEs. Now, I use a command line tool called HTTPie to do rest-based calls. I find it's a little bit easier to use than Curl or other tools, so I recommend you get this, but it's definitely not a requirement. Just know when I do an HTTP call in my command line, I'm executing this tool. And if you're not going to install it, you'll need to use some other way of making these web service calls. And finally, you're going to need a browser. We're going to build a web application at one point, so you're going to need a way to visualize that. We're also going to get into the rabbit management console as well as H2, and you're going to need something to visualize that and a browser works, I'm using Google Chrome. Whatever you use will be fine.

Contents