O que é Spring Boot?
O Spring Boot é uma ferramenta que facilita e agiliza o desenvolvimento de aplicações Web com o Spring Framework. O Spring é um framework bastante conhecido na comunidade Java, de software livre, que tem como objetivo facilitar a construção de aplicações.
A ideia original do Spring era facilitar o desenvolvimento de aplicações, porém o spring por si só ainda era complicado pois exigia muitas configurações e eis que nasce então um novo projeto, o Spring Boot. Com esse projeto, o time do Spring conseguiu simplificar ainda mais o desenvolvimento de aplicações, pois ele já vem com várias configurações prontas para que o desenvolvedor não precise se preocupar com elas.
Para começar a trabalhar com o Spring Boot e consequentemente o framework Spring é necessário ter os programas Java, Maven e uma IDE instalados no sistema. Caso ainda não tenha o ambiente pronto, você pode seguir os passos do artigo Configurando o ambiente Java no Windows.
Criando um projeto com o Spring Boot
Para iniciar um projeto com o Spring Boot, vamos utilizar o Spring Initializr. Esta ferramenta permite criar um projeto Spring Boot com apenas algumas configurações. É possível utilizá-la diretamente pelo site ou integrada ao VSCode, para isso você precisará do plugin Spring Boot Extension Pack instalado conforme mostrado na imagem a seguir.

Para criar um projeto será necessário fazer algumas configurações inicias, sendo elas o tipo de projeto, a linguagem, a versão do Spring Boot, o nome do projeto, o nome do pacote e as dependências. A seguir são listadas as configurações e as recomendações para cada uma delas - a ordem vai ser diferente entre o site e o VSCode, mas o resultado será o mesmo.

- Project: o tipo de projeto que será criado. A recomendação é utilizar o projeto Maven.
- Language: a linguagem que será utilizada no projeto. A recomendação é utilizar a linguagem Java.
- Spring Boot: a versão do framework Spring Boot que será utilizada no projeto. A recomendação é utilizar a versão mais estável disponível, no caso o maior valor que não possui parênteses.
- Group: A organização criadora do projeto. A recomendação é utilizar o nome do domínio da empresa ou do desenvolvedor. Ex: com.organization
- Artifact: o nome da aplicação. Ex: appname
- Name: pode ser o mesmo nome do Artifact.
- Description: a descrição do projeto.
- Package Name: será gerado automaticamente a partir do Group e do Artifact.
- Packaging: o tipo de empacotamento que será utilizado no projeto. A recomendação é utilizar o empacotamento Jar.
- Java: a versão do Java que será utilizada no projeto. Aqui é importante se atentar a versão do Java que está instalada no ambiente para que não tenha problemas de compatibilidade.
- Dependencies: as dependências que serão utilizadas no projeto.
Com exceção da descrição, os nomes não devem conter letras maiúsculas, espaços ou caracteres especiais e as palavras devem ser separadas com hífen.
Após a geração do projeto, será feito o download de um arquivo compactado com o nome do projeto. Descompacte o arquivo e abra a pasta no VSCode.
Explorando a estrutura do projeto
Vamos dar uma olhada na estrutura típica de um projeto Spring Boot:
src/main/java/{group}/{artifact}: O caminho das pastas segue o definido em Grupo e Artefato. Esta pasta contém o código fonte da aplicação e já vem com o arquivo de entrada da aplicação.src/main/resources: Armazena recursos, como arquivos de configuração, templates (HTML) e arquivos estáticos (CSS, JavaScript).src/test: Contém testes de unidade.pom.xml: Arquivo de configuração de build que lista as dependências e configurações do projeto.
Rodando a aplicação
Para rodar a aplicação, basta executar o comando mvn spring-boot:run no terminal do VSCode. Caso sua instalação do Maven esteja correta, o projeto será compilado e gerado na pasta target. Se por algum motivo seu maven não estiver corretamente configurado no VSCode, você pode executar o comando mvnw spring-boot:run que utilizará o Maven Wrapper para compilar e executar o projeto.
Como o código é compilado e vai ser necessário rodar o projeto diversas vezes durante seu desenvolvimento, o comando clean pode ser utilizado para limpar o projeto antes de compilar. O comando mvn clean spring-boot:run ou mvnw clean spring-boot:run pode ser utilizado para isso.