Spring Boot – três formas simples de criar um projeto

Maven

Neste post iremos configurar um projeto básico com o Spring Boot. Vamos explorar as diferentes opções de criação de projetos com o Spring Boot usando o Maven e o Eclipse.

O que veremos?

  • Como inicializar um projeto simples com o Spring Initializr?
  • Como usar o Spring Starter Eclipse Plugin para criar um projeto simples com Spring Boot, Maven e Eclipse?
  • Como criar um Spring Boot Project manualmente passo a passo?

Ferramentas utilizadas

  • Maven 3.0+ é sua ferramenta de compilação;
  • Eclipse, mas você pode usar a sua IDE de preferência com algumas adaptações;
  • JDK 1.8+

O que é o Maven?

O Maven é uma “ferramenta de gerenciamento de compilação”. Ela foi criada para definir como arquivos .java são compilados para .class, empacotados em arquivos .jar (ou .war ou .ear), (pré/post) processados ​​com ferramentas, gerenciando seu CLASSPATH e todos os outros tipos de tarefas necessárias para construir o projeto. É semelhante ao Apache Ant ou Gradle ou Makefiles do C/C++, mas tenta ser completamente independente para que não se precise de ferramentas ou scripts adicionais incorporando outras tarefas comuns, como baixar e instalar bibliotecas e pacotes necessários.

Ele também foi projetado em torno do tema “portabilidade de compilação”, para que não se tenha problemas de compilação do mesmo código em máquinas e sistemas operacionais diferentes. Por isso, também é a melhor maneira de trabalhar em um projeto entre pessoas que usam diferentes IDEs, pois os scripts Ant gerados pelo IDE são difíceis de importar para outros IDEs, mas atualmente todos os IDEs entendem e suportam o Maven (IntelliJ, Eclipse e NetBeans). ). Mesmo que não se goste do Maven, ele acaba sendo o ponto de referência para todas as outras ferramentas de criação modernas.

Por que você deveria usá-lo?

Existem três coisas sobre o Maven que são muito legais.

  1. O Maven baixa (depois de declarar quais estão em uso) todas as bibliotecas que você usa e as bibliotecas que eles usam para você automaticamente. Isso é muito bom, e faz com que lidar com muitas bibliotecas seja ridiculamente fácil. Isso permite evitar o “inferno da dependência”. É semelhante ao Ivy do Apache Ant;
  2. Ele usa “Convenção sobre Configuração” para que, por padrão, você não precise definir as tarefas que deseja executar. Você não precisa escrever uma etapa “compile”, “test”, “package” ou “clean” como faria no Ant ou no Makefile. Basta colocar os arquivos nos lugares em que Maven os espera e funcionará como uma orquestra;
  3. O Maven também possui muitos plug-ins interessantes que você pode instalar para lidar com muitas tarefas rotineiras, desde a geração de classes Java a partir de um esquema XSD usando o JAXB como também para medir a cobertura de teste com Cobertura. Basta adicioná-los ao seu pom.xml e eles serão integrados com tudo o que você deseja fazer.

A curva de aprendizado inicial é íngreme, mas (quase) todo desenvolvedor profissional de Java usa o Maven ou deseja que eles o façam. Você deve usar o Maven em todos os projetos, mas não se surpreenda se demorar um pouco para se acostumar com isso e que às vezes você gostaria de fazer as coisas manualmente, já que aprender algo novo às vezes dói. No entanto, uma vez que você realmente se acostumar com o Maven, descobrirá que o gerenciamento da compilação quase não leva tempo.

Então vamos prosseguir criando um projeto.

Criando Projetos com o Spring Boot, Eclipse e Maven

Existem três opções para criar projetos de inicialização do Spring com o Eclipse e o Maven

  • Spring Initializr – https://start.spring.io;
  • Use o STS ou o STS Eclipse Plugin e crie um projeto Spring Boot Maven Project diretamente do Eclipse;
  • Crie manualmente um projeto Maven e adicione dependências do Spring Boot Starter.

Usaremos o Spring Boot Starter como exemplo.

Opção 1 – Inicializando o Projeto Spring Boot com o Spring Initializr

Criando um aplicativo com o Spring Initializr é um processo super simples. Nós usaremos o Spring Web MVC como nosso framework web.

 

Spring Initializr http://start.spring.io/ é uma ótima ferramenta para inicializar seus projetos Spring Boot.

 

spring boot initializr

Como mostrado na imagem acima, os seguintes passos devem ser feitos:

  • Inicie o Spring Initializr e escolha o seguinte:
    • Escolha com.in28minutes.springboot as Group;
    • Escolha os serviços do aluno como Artefato;
    • Escolha as seguintes dependências:
      • Rede;
      • Atuador;
      • DevTools.
  • Clique em Gerar Projeto.

Isso fará o download de um arquivo zip para sua máquina local.

Descompacte o arquivo zip e extraia para uma pasta.

No Eclipse, clique em Arquivo -> Importar -> Projeto Maven Existente, conforme mostrado abaixo:

import maven

Navegue ou digite o caminho da pasta para a qual você extraiu o arquivo zip e depois de clique em Concluir, o Maven levará algum tempo para baixar todas as dependências e inicializar o projeto.

É isso aí. Seu primeiro projeto de Spring está pronto.

 

Siga estes links para entender mais sobre o projeto que é criado –

 

Opção 2 – Usando o STS ou o STS Eclipse Plugin para criar o Spring Maven Boot Project

Com o Spring Tool Suite, você pode criar diretamente um projeto Spring Boot a partir do Eclipse.

Você deve baixar a instalação completa do STS ou instalar o plugin do STS Eclipse. Nos optamos pelo plugin.

 

https://spring.io/tools/sts/all fornece o download completo do STS, bem como o caminho do STS Eclipse Plugin.

 

No Eclipse/STS, inicie com Arquivo->Novo->Spring Starter Project como mostrado abaixo:

starter

Na próxima tela, você deverá fornecer as seguintes informações para o seu projeto:

  • ID do grupo;
  • ID do artefato;
  • Pacote Raiz;
  • Versão;
  • Descrição;
  • Versão Java;
  • Língua;
  • Embalagem.

Certifique-se que o tipo esteja definido como Maven.

new spring project

Na próxima tela, você pode escolher as dependências que você gostaria de adicionar no projeto. Depois de clicar em Concluir, o Maven levará algum tempo para baixar todas as dependências e inicializar o projeto.

É isso aí. Seu segundo projeto Spring está pronto.

Opção 3 – Criar manualmente um projeto Maven Spring Boot

A última opção é criar o projeto manualmente.

No Eclipse, inicie com Arquivo->Novo->Maven Project

Escolha a opção “Criar um projeto simples”, conforme mostrado na captura de tela abaixo:

maven project

Na próxima tela, forneça os detalhes para o seu projeto e clique em Concluir.

  • ID do grupo;
  • ID do artefato;
  • Versão.

Isso criaria um projeto Maven básico com dependências zero.

Em seguida, inclua os iniciadores de inicialização apropriados do Spring no pom.xml

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-web</artifactId>
</dependency>

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-devtools</artifactId>
    <scope>runtime</scope>
</dependency>

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-test</artifactId>
    <scope>test</scope>
</dependency>

Starter Web é usada para desenvolver aplicativos Spring Boot ou serviços RESTful.

O Starter Test fornece testes de unidade e capacidades de teste de integração com Spring Test, Mockito e JUnit.

Vamos adicionar o Spring Boot Starter Parent como o pai pom no pom.xml

<parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>2.0.0.RELEASE</version>
    <relativePath />
</parent>

Vamos configurar a versão do Java para usar como 1.8

<properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
    <java.version>1.8</java.version>
</properties>

O próximo passo é criar uma classe Spring Boot Application que será o ponto de inicialização do aplicativo da web.

package com.in28minutes.springboot.tutorial;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

@SpringBootApplication
public class SpringBootWebApplication {

    public static void main(String[] args) {
        SpringApplication.run(SpringBootWebApplication.class, args);
    }
}

Tudo o que você precisa fazer é adicionar @SpringBootApplication e usar o método estático SpringApplication.run() para iniciar o contexto Spring Application.

Ao lançar essa classe em um aplicativo java, você verá que um servidor Tomcat integrado será ativado e você estará pronto para incluir recursos nesse aplicativo.

Conclusão

Neste artigo, examinamos as diferentes opções para criar projetos Spring Boot com o Maven e o Eclipse. Preferimos a opção 2 para criar o projeto diretamente no Eclipse usando o plugin STS. Escolha a sua preferência e desenvolva seus projetos com velocidade e eficiência.

*** A OctalMind é uma empresa especializada no desenvolvimento de sistemas de alta tecnologia.