0% acharam este documento útil (0 voto)
4 visualizações3 páginas

Introdução ao Spring Boot e Configurações

O Spring Boot é uma ferramenta que facilita a criação de aplicações autônomas baseadas em Spring com configurações mínimas, permitindo desenvolvimento rápido e integração fácil com o ecossistema Spring. Ele oferece recursos como configuração automática, servidores HTTP incorporados e Dev Tools para recarregar aplicações sem reiniciar. Além disso, o Spring Boot utiliza anotações para simplificar a injeção de dependência e a configuração de beans.

Traduzido por

ScribdTranslations
Direitos autorais
© All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato PDF, TXT ou leia on-line no Scribd
0% acharam este documento útil (0 voto)
4 visualizações3 páginas

Introdução ao Spring Boot e Configurações

O Spring Boot é uma ferramenta que facilita a criação de aplicações autônomas baseadas em Spring com configurações mínimas, permitindo desenvolvimento rápido e integração fácil com o ecossistema Spring. Ele oferece recursos como configuração automática, servidores HTTP incorporados e Dev Tools para recarregar aplicações sem reiniciar. Além disso, o Spring Boot utiliza anotações para simplificar a injeção de dependência e a configuração de beans.

Traduzido por

ScribdTranslations
Direitos autorais
© All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato PDF, TXT ou leia on-line no Scribd

Pergunta 1. O que é o Spring Boot?

O Spring Boot usa o Commons Logging para todos os logs internos e você pode mudar os níveis de log por
Primeiramente, o Spring Boot não é um framework, é uma maneira de facilitar a criação de aplicações autônomas. adicionando as seguintes linhas no arquivo [Link]:
com configurações mínimas ou zero. É uma abordagem para desenvolver aplicações baseadas em Spring com muito
[Link]=DEBUG
menos configuração. Ele fornece padrões para configuração de código e anotações para iniciar rapidamente novos
projetos de primavera em pouco tempo. [Link]=INFO

O Spring Boot configura automaticamente as classes necessárias dependendo das bibliotecas em seus
classpath. Suponha que sua aplicação queira interagir com o banco de dados, se houver bibliotecas do Spring Data em Quais são as operações REST seguras?
classe de caminho então configura automaticamente a conexão com o banco de dados junto com a classe de Fonte de Dados. A API REST usa métodos HTTP para realizar operações. Algumas das operações HTTP que
não modifica o recurso no servidor é conhecido como operações seguras, por exemplo, GET e HEAD. Em
por outro lado,PôrPOST e DELETE são inseguros porque modificam o recurso no
Pergunta 2. Quais são as vantagens de usar o Spring Boot? servidor.
o É muito fácil desenvolver aplicações baseadas em Spring com Java
o Isso reduz muito o tempo de desenvolvimento e aumenta a produtividade.
o Evita escrever muito código repetitivo, anotações e configuração XML. What are idempotent operations? Why is idempotency important?
o É muito fácil integrar uma aplicação Spring Boot com seu ecossistema Spring como Existem alguns métodos HTTP, por exemplo, GET, que produzem a mesma resposta não importa quantas vezes.
Spring JDBC, Spring ORM, Spring Data, Spring Security, etc. vezes que você os usa, por exemplo, enviar várias solicitações GET para a mesma URI resultará em mesmo
o Segue a abordagem de "Configuração de Padrões Opinativos" para reduzir o esforço do desenvolvedor resposta sem qualquer efeito colateral, portanto é conhecida como idempotente.
o Fornece servidores HTTP incorporados como Tomcat, Jetty etc. para desenvolver e testar nosso
aplicações web muito facilmente. Por outro lado, o POST não é idempotente porque, se você enviar várias requisições POST, ele irá
resulta na criação de múltiplos recursos no servidor, mas novamente, o PUT é idempotente se você estiver usando-o
Questão 3. O que significam as Ferramentas de Desenvolvimento no Spring Boot?
atualizar o recurso.
O Spring Boot acompanha o Dev Tools, para que você não precise reimplantar sua aplicação toda vez.
você influencia as mudanças. O desenvolvedor pode recarregar as progressões sem reiniciar o Mesmo assim, várias requisições PUT para atualizar um recurso em um servidor darão o mesmo resultado final. Você pode
servidor. <artifactId>spring-boot-devtools</artifactId> mais tomarFundamentos do HTTPcurso da Pluralsight para aprender mais sobre métodos idempotentes
do protocolo HTTP e HTTP em geral.
Questão 4. O que é um Ativador no Spring Boot?

Quais são as vantagens do RestTemplate?


adiciona vários serviços de produção ao seu aplicativo com pouco esforço da sua parte. Há
também possui muitas funcionalidades adicionadas à sua aplicação de forma nativa para gerenciar o serviço em A classe RestTemplate é uma implementação do padrão de método Template no framework Spring.
um ambiente de produção (ou outro). Eles são usados principalmente para expor diferentes tipos de também simplifica a interação com Web Services RESTful no lado do cliente. Você pode usá-lo para
informações sobre a aplicação em execução – saúde, métricas, info, despejo, env et consumir um serviço web RESTful muito facilmente

private static void getEmployees()


Pergunta 5. Como configurar a fonte de dados usando Spring Boot? {
Use either spring-boot-starter-jdbc ou spring-boot-starterdata-jpa e inclua um driver JDBC String uri final = "[Link]
classpath RestTemplate restTemplate = new RestTemplate();
Declare properties:
EmployeeListVO result = [Link](uri, [Link]);
[Link]=jdbc:mysql://localhost/test
[Link]=dbuser [Link](result);
[Link]=dbpass }
Injeção de Dependência e Container IOC
[Link]-class-name=[Link]
o O Spring Boot criará um DataSource com propriedades definidas O Spring ajuda na criação de aplicações com baixo acoplamento por causa da Injeção de Dependência.
o Usará até mesmo um pool de conexões se a biblioteca for encontrada no classpath. No Spring, os objetos definem suas associações (dependências) e não se preocupam com como eles
irá obter essas dependências. É responsabilidade do Spring fornecer as dependências necessárias.
para criar objetos.
Pergunta 6. Você pode controlar o logging com Spring Boot? Como? Por exemplo: Suponha que temos um objeto Funcionário e ele tem uma dependência de
Sim, podemos controlar o registro de log com Spring Boot especificando os níveis de log no [Link] objectAddress. Definiremos um bean correspondente ao Empregado que definirá seu
O arquivo. O Spring Boot carrega este arquivo quando ele existe no classpath e pode ser usado para configurar dependência de objectAddress.
tanto o Spring Boot quanto o código do aplicativo.
Quando o Spring tenta criar um objeto Employee, ele verá que o Employee tem uma dependência ocorre quando você cria mais de um bean do mesmo tipo e deseja conectar apenas um deles
onAddress, so it will first create theAddressobject (dependent object) and then inject it into com uma propriedade.
oObjetoFuncionário.
Inversão de Controle (IOC) e Injeção de Dependência (DI) são usados de forma intercambiável. IOC é @Configuração
alcançado através de DI. DI é o processo de fornecer as dependências e IOC é o resultado final de
DI. (Nota: DI não é a única maneira de alcançar IOC. Háoutras maneirasas well.)
Pela DI, a responsabilidade de criar objetos é transferida do nosso código de aplicação para o Spring Esta anotação é usada em classes que definem beans. @Configuration é um análogo ao XML.
container; esse fenômeno é chamado de IOC. arquivo de configuração - é configuração usando classe Java. Classe Java anotada
A Injeção de Dependência pode ser feita por injeção de setter ou injeção de construtor. com @Configuração é uma configuração por si só e terá métodos para instanciar e
configure as dependências.
Escopos de Bean do Spring @Bean

Existem cinco tipos de escopos de beans do Spring:


Esta anotação é usada no nível do método. A anotação @Bean funciona com @Configuração para
singleton – apenas uma instância do bean spring será criada para o contêiner spring. Isso é criar beans do Spring. Como mencionado anteriormente, @Configuração terá métodos para instanciar e
o escopo padrão do bean do spring. Ao usar esse escopo, certifique-se de que o bean não tenha compartilhado configurar dependências. Esses métodos serão anotados com @Bean. O método anotado
variáveis de instância, caso contrário, pode levar a problemas de inconsistência de dados. com esta anotação funciona como ID de bean e cria e retorna o bean real.

prototipo - Uma nova instância será criada toda vez que o bean for solicitado do spring @Preguiçoso
contêiner.
Esta anotação é usada em classes de componentes. Por padrão, todas as dependências autowired são
request – Isso é o mesmo que o escopo do protótipo, no entanto, é destinado a ser usado em aplicações web.
criado e configurado na inicialização. Mas se você quiser inicializar um bean de forma preguiçosa, pode
Uma nova instância do bean será criada para cada solicitação HTTP. use a anotação @Lazy sobre a classe. Isso significa que o bean será criado e inicializado
apenas quando for solicitado pela primeira vez
sessão - Um novo bean será criado para cada sessão HTTP pelo contêiner.
@EnableAutoConfiguração
sessão-global – Isso é usado para criar beans de sessão global para aplicações Portlet.

Algumas Anotações Esta anotação geralmente é colocada na classe principal da aplicação.


A anotação @EnableAutoConfiguration define implicitamente um "pacote de busca" base. Este
a anotação diz ao Spring Boot para começar a adicionar beans com base nas configurações do classpath, outros beans, e
Obrigatório
várias configurações de propriedade.

Esta anotação é aplicada em métodos setter de beans. Considere um cenário onde você precisa de @SpringBootApplication
impor uma propriedade obrigatória. A anotação @Required indica que o bean afetado deve ser
povoado no momento da configuração com a propriedade necessária. Caso contrário, uma exceção de
This annotation is used on the application class while setting up a Spring Boot project. The class
a exceção BeanInitializationException é lançada.
que é anotada com @SpringBootApplication deve ser mantida no pacote base
@Autowired
@ControllerAdvice

Esta anotação é aplicada em campos, métodos setter e construtores. Esta anotação é aplicada no nível da classe. Como explicado anteriormente, para cada controlador você pode
A anotação @Autowired injeta a dependência do objeto implicitamente.
use @ExceptionHandler em um método que será chamado quando uma exceção específica ocorrer. Mas isso
lida apenas com as exceções que ocorrem dentro do controlador em que está definido. Para superar
este problema agora você pode usar a anotação @ControllerAdvice. Esta anotação é utilizada para
defina métodos @ExceptionHandler, @InitBinder e @ModelAttribute que se aplicam a
@Qualifier todos os métodos @RequestMapping. Assim, se você definir a anotação @ExceptionHandler em um
método na classe @ControllerAdvice, será aplicado a todos os controladores.
Esta anotação é usada junto com a anotação @Autowired. Quando você precisa de mais controle sobre o
@RestController
o processo de injeção de dependência, @Qualifier pode ser usado. @Qualifier pode ser especificado em itens individuais
argumentos do construtor ou parâmetros de método. Esta anotação é usada para evitar confusão que
Esta anotação é usada no nível da classe. A anotação @RestController marca a classe como uma
controller where every method returns a domain object instead of a view. By annotating a class
com esta anotação você não precisa mais adicionar @ResponseBody a todos os RequestMapping
método. Isso significa que você não usa mais resolvers de visualização ou envia HTML em resposta. Você apenas envia
o objeto de domínio como resposta HTTP no formato que é compreendido pelos consumidores como
JSON.

Você também pode gostar