Spring Boot é um framework de código aberto Java usado para programar aplicações baseadas em Spring autônomas e de nível de produção, com um conjunto de bibliotecas que tornam a inicialização e o gerenciamento de projetos mais fáceis. Spring Boot é uma extensão de convenção sobre configuração para a plataforma Java Spring, destinada a ajudar a minimizar as preocupações de configuração ao criar aplicações baseadas em Spring. A aplicação ainda pode ser ajustada para necessidades específicas, mas o projeto Spring Boot inicial fornece uma "visão opinativa" pré-configurada da melhor configuração a ser usada com a plataforma Spring e bibliotecas de terceiros selecionadas.

O Spring Boot pode ser usado para construir microsserviços, aplicações web e aplicações de console.

Características Servidores de aplicação web embutidos: Tomcat, Jetty ou Undertow. Fornece Project Object Models (POMs) 'iniciais' opinativos para a ferramenta de build. As únicas ferramentas de build suportadas são Maven e Gradle. Configuração automática da aplicação Spring. Fornece funcionalidades prontas para produção como métricas, verificações de saúde e configuração externalizada. Não é necessária geração de código. Não é necessária configuração XML. Suporte opcional para Kotlin e Apache Groovy além do Java.

Inicialização do DispatcherServlet

O Spring Boot não exige configuração manual do , pois configura automaticamente a aplicação com base na configuração que detecta.

SpringBootServletInitializer O Spring Boot possui uma classe , que é uma especialização do . Este é uma implementação pronta do , o que elimina a necessidade de o desenvolvedor construir sua própria implementação da classe .

Propriedades de configuração As propriedades de configuração para a aplicação Spring Boot podem ser especificadas no arquivo ou . Exemplos de propriedades que podem ser incluídas neste arquivo incluem as propriedades server.port e spring.application.name.

Autoconfiguração @SpringBootApplication O Spring Boot possui uma anotação, , que permite que a aplicação Spring Boot autoconfigure bibliotecas de terceiros e recursos detectados encontrados no classpath. Como exemplo, a classe que possui a anotação pode estender a classe se a aplicação for empacotada e implantada como um arquivo WAR.

A anotação combina três anotações específicas do Spring: , e .

@SpringBootConfiguration A anotação é uma especialização da anotação específica do Spring. A classe com a anotação é marcada como a classe de configuração para a aplicação Spring Boot.

@EnableAutoConfiguration A anotação é uma anotação específica do Spring que permite a configuração automática do Spring Boot.

Actuator O Spring Boot Actuator permite recursos de monitoramento e gerenciamento para a aplicação Spring Boot. Uma grande vantagem de usar o Spring Boot Actuator é que ele implementa várias funcionalidades prontas para produção sem exigir que o desenvolvedor construa suas próprias implementações.

Se o Maven for usado como ferramenta de build, a dependência pode ser especificada no arquivo de configuração pom.xml.

Integração com Módulos do Spring Framework O Spring Boot possui vários módulos existentes do Spring Framework.

Spring Security

O Spring Boot possui integração com o módulo Spring Security. A maneira mais simples de integrar o Spring Boot com o Spring Security é declarar a dependência inicial no arquivo de configuração da build.

Se o Maven for usado como ferramenta de build, a dependência com o ID de artefato pode ser especificada no arquivo de configuração pom.xml.

Servidores de aplicação Por padrão, o Spring Boot fornece servidores web embutidos (como Tomcat) prontos para uso. No entanto, o Spring Boot também pode ser implantado como um arquivo WAR em um servidor de aplicação WildFly autônomo.

Se o Maven for usado como ferramenta de build, existe um plugin Maven que permite a implantação automática do arquivo WAR gerado.

Referências

Bibliografia

Ligações externas

Categoria:Programação orientada a aspectos Categoria:Java (linguagem de programação) Categoria:Programação orientada a objetos