Spring Boot ajuda você a criar aplicativos e serviços de nível de produção com tecnologia Spring com o mínimo de barulho. É necessária uma visão opinativa da plataforma Spring para que usuários novos e existentes possam obter rapidamente o que precisam.
Você pode usar o Spring Boot para criar aplicativos Java independentes que podem ser iniciados usando java -jar
ou implementações WAR mais tradicionais. Também fornecemos uma ferramenta de linha de comando que executa scripts Spring.
Nossos principais objetivos são:
Forneça uma experiência de introdução radicalmente mais rápida e amplamente acessível para todo o desenvolvimento Spring.
Seja opinativo, mas saia do caminho rapidamente quando os requisitos começarem a divergir dos padrões.
Fornece uma variedade de recursos não funcionais comuns a grandes classes de projetos (por exemplo, servidores incorporados, segurança, métricas, verificações de integridade, configuração externalizada).
Absolutamente nenhuma geração de código e nenhum requisito de configuração XML.
A documentação de referência inclui instruções detalhadas de instalação, bem como um guia abrangente getting started
.
Aqui está um teaser rápido de um aplicativo Spring Boot completo em Java:
importar org.springframework.boot.*;importar org.springframework.boot.autoconfigure.*;importar org.springframework.web.bind.annotation.*;@RestController@SpringBootApplicationclasse pública Exemplo {@RequestMapping("/")String home( ) {retorna "Olá, mundo!"; }public static void main(String[] args) {SpringApplication.run(Example.class, args); } }
Você está tendo problemas com o Spring Boot? Queremos ajudar!
Verifique a documentação de referência, especialmente os How-to's — eles fornecem soluções para as dúvidas mais comuns.
Aprenda o básico do Spring – Spring Boot se baseia em muitos outros projetos Spring; verifique o site spring.io para obter uma grande variedade de documentação de referência. Se você é novo no Spring, experimente um dos guias.
Se você estiver atualizando, leia as notas de versão para obter instruções de atualização e recursos “novos e dignos de nota”.
Faça uma pergunta - monitoramos stackoverflow.com em busca de perguntas marcadas com spring-boot
. Você também pode conversar com a comunidade no Gitter.
Relate bugs com Spring Boot em github.com/spring-projects/spring-boot/issues.
Spring Boot usa o sistema integrado de rastreamento de problemas do GitHub para registrar bugs e solicitações de recursos. Se você quiser levantar um problema, siga as recomendações abaixo:
Antes de registrar um bug, pesquise no rastreador de problemas para ver se alguém já relatou o problema.
Se o problema ainda não existir, crie um novo problema.
Forneça o máximo de informações possível com o relatório do problema. Gostamos de saber a versão do Spring Boot, o sistema operacional e a versão da JVM que você está usando.
Se você precisar colar código ou incluir um rastreamento de pilha, use Markdown. ``` escapa antes e depois do seu texto.
Se possível, tente criar um caso de teste ou projeto que replique o problema e anexe-o ao problema.
Você não precisa compilar a partir do código-fonte para usar o Spring Boot (binários em repo.spring.io), mas se quiser experimentar o que há de melhor e mais recente, o Spring Boot pode ser compilado e publicado em seu cache Maven local usando o Gradle invólucro. Você também precisa do JDK 17.
$./gradlewpublishToMavenLocal
Isso criará todos os jars e documentação e os publicará em seu cache local do Maven. Ele não executará nenhum dos testes. Se você quiser construir tudo, use a tarefa build
:
$ ./gradlew compilação
Existem vários módulos no Spring Boot. Aqui está uma visão geral rápida:
A biblioteca principal que fornece recursos que suportam as outras partes do Spring Boot. Estes incluem:
A classe SpringApplication
, que fornece métodos de conveniência estáticos que podem ser usados para escrever um aplicativo Spring independente. Seu único trabalho é criar e atualizar um Spring ApplicationContext
apropriado.
Aplicativos da web incorporados com opção de contêiner (Tomcat, Jetty ou Undertow).
Suporte de configuração externalizada de primeira classe.
Inicializadores ApplicationContext
de conveniência, incluindo suporte para padrões de registro sensatos.
Spring Boot pode configurar grandes partes de aplicativos típicos com base no conteúdo de seu caminho de classe. Uma única anotação @EnableAutoConfiguration
aciona a configuração automática do contexto Spring.
A configuração automática tenta deduzir quais beans um usuário pode precisar. Por exemplo, se HSQLDB
estiver no caminho de classe e o usuário não tiver configurado nenhuma conexão com o banco de dados, provavelmente desejará que um banco de dados na memória seja definido. A configuração automática sempre será interrompida quando o usuário começar a definir seus próprios beans.
Starters são um conjunto de descritores de dependência convenientes que você pode incluir em seu aplicativo. Você obtém um balcão único para todo o Spring e tecnologia relacionada de que precisa, sem precisar procurar códigos de amostra e copiar e colar muitos descritores de dependência. Por exemplo, se você quiser começar a usar Spring e JPA para acesso ao banco de dados, inclua a dependência spring-boot-starter-data-jpa
em seu projeto e pronto.
Os endpoints do atuador permitem monitorar e interagir com seu aplicativo. Spring Boot Actuator fornece a infraestrutura necessária para endpoints de atuadores. Ele contém suporte de anotação para pontos finais do atuador. Este módulo fornece muitos endpoints, incluindo HealthEndpoint
, EnvironmentEndpoint
, BeansEndpoint
e muitos mais.
Isso fornece configuração automática para terminais do atuador com base no conteúdo do caminho de classe e em um conjunto de propriedades. Por exemplo, se o Micrometer estiver no caminho de classe, ele configurará automaticamente o MetricsEndpoint
. Ele contém configuração para expor endpoints por HTTP ou JMX. Assim como o Spring Boot AutoConfigure, isso irá recuar quando o usuário começar a definir seus próprios beans.
Este módulo contém itens básicos e anotações que podem ser úteis ao testar seu aplicativo.
Como outros módulos de configuração automática do Spring Boot, spring-boot-test-autoconfigure fornece configuração automática para testes baseados no caminho de classe. Inclui muitas anotações que podem configurar automaticamente uma parte do seu aplicativo que precisa ser testada.
Spring Boot Loader fornece o molho secreto que permite construir um único arquivo jar que pode ser iniciado usando java -jar
. Geralmente, você não precisará usar spring-boot-loader
diretamente, mas sim trabalhar com o plugin Gradle ou Maven.
O módulo spring-boot-devtools fornece recursos adicionais de tempo de desenvolvimento, como reinicializações automáticas, para uma experiência de desenvolvimento de aplicativos mais tranquila. As ferramentas do desenvolvedor são desabilitadas automaticamente ao executar um aplicativo totalmente empacotado.
O site spring.io contém vários guias que mostram como usar o Spring Boot passo a passo:
Construindo um aplicativo com Spring Boot é um guia introdutório que mostra como criar um aplicativo, executá-lo e adicionar alguns serviços de gerenciamento.
Construindo um serviço Web RESTful com Spring Boot Actuator é um guia para criar um serviço Web REST e também mostra como o servidor pode ser configurado.
Spring Boot é um software de código aberto lançado sob a licença Apache 2.0.