Join Frank P Moley III for an in-depth discussion in this video What you need to know, part of Spring Boot 2 Essential Training.
- [Instructor] In order to be really successful in this course there's a few things that you need to know and a few prerequisite tools that you'll need. First and foremost, you need to have a relatively strong skill set in Java. Now, I'm gonna put a requirement of Java 1.8, but in all reality we're not gonna use much of the newer syntax in 1.8. You definitely can use 1.9, but some of the Spring Boot functionality isn't quite mature enough with 1.9, so I would stick with 1.8. You need to have a working knowledge of the Spring Framework.
Now, I don't expect you to be an expert in Spring, but at least understand the basics of configuration and running Spring applications. I've got a couple courses out there on Spring that may help you get up to speed if you need to. I'm also gonna ask you to have a basic understanding of Maven. There's gonna times that I'm gonna jump to the command line and enter some Maven commands. And I want you to at least understand what I'm doing when I run a Clean package or just a Maven Clean. I'm also not gonna spend a lot of time on the functions of an IDE.
Now, I use IntelliJ Ultimate edition from JetBrains, but that's my choice. You can definitely get by with the community edition, or with Eclipse, or STS. It's all up to you, but I do want you to know how to use the IDE. Now, as far as the basic prerequisites. I do, once again, ask that you have Java 1.8, and make sure you have the JDK installed. Maven 3.x is really the minimum supported version for everything that we're doing. If you've got Maven 2 it's just not gonna work.
I do want you to have a modern IDE. Now, if you're really daring and you're really good at VI go ahead and use it, but you're using it at your own risk. Granted, there are a few times that I'm gonna jump into VI to do some very quick edits. You can use any text editor, I'm just real comfortable with VI, so I have no problem doing that. I also use the JSON visualizer in Chrome, which is the web browser that I'm gonna use for all of these examples. I use JSON Viewer, that's my choice, there's several out there on the market. It just makes the JSON a little bit more structured when you're viewing it in a web browser.
I am gonna ask that you install a couple tools, and you can remove these when you're done taking the course. But the first is the Spring Boot command-line interface. I've got a link here that you can go to understand how to install it. It gives you really detailed instructions. Now, one of the chapters we're gonna take a look at some asynchronous messaging patterns, and we're gonna use RabbitMQ for that. Now, RabbitMQ can be installed on Windows, Linux, or Mac relatively easily. And there's actually installer scripts for most of the modern operating systems.
With a Mac, which is what I'm using, Homebrew has a great install package. You just have to do a couple manual symlinks if you're on Sierra or High Sierra. You're not gonna know how to use Rabbit to its depth, but you are gonna have to know how to get it up and running. And the documentation that I've got linked here tells you how to do that. Because during that video we're going to have Rabbit up and running so we can pushes messages and show our listener responding to those messages. Now, throughout this course there's gonna be several times that I'm gonna jump to the command line to execute an HTTP operation against a web service running that we have just written some code for.
Now, I use a tool called HTTPie that is a command line utility. And that's how I do all of my client-side HTTP operations. Now, this is a free tool that you can download on your Windows machine, Linux machine, or Mac like I am using. But you don't have to use it, everything I'm doing is actually just executing an HTTP command. And you can use a tool like cURL, or you can use any graphical tool like Postman, or often even the browser is sufficient to do the same operation that I'm gonna do.
So it really is up to you which tool you want to use. Just know that when you see me go to the command line and type an HTTP command that I'm using the HTTPie tool. That's how I'm executing those operations, and that's about it. Once you're ready to go let's jump in.
- Creating a Spring Boot application
- Configuring a Spring Boot app
- Leveraging profiles
- Packaging and running Spring Boot web apps
- Building a command-line application
- Using Spring Boot starters: Spring Data, Spring Security, and more
- Extending Spring Boot
- Using Spring Boot Actuator to monitor app health and other metrics