Apresentação realizada na disciplina de Aplicações Corporativas como cumprimento do curso de Sistemas para Internet do Unipê (Centro Universitário de João Pessoa)
2. Agenda
O que é um framework?
Spring
Projetos do Spring (Main Projects)
Fontes de Estudo
Spring Framework MVC
Módulos do Spring Framework
Aplicação do Spring Framework
Dependências do Spring (Maven)
2
3. O que é um framework?
É um conjunto de classes implementadas em
linguagem de programação usadas para auxiliar o
desenvolvimento de software.
https://pt.wikipedia.org/wiki/Framework
3
5. Main Projects
Spring IO Platform
Spring Boot
Spring Framework
Spring XD
Spring Cloud
Spring Data
Spring Integration
Spring Batch
Spring Security
Spring Hateoas
Spring Social
Spring AMQP
Spring Mobile
Spring for Android
Spring Web Flow
Spring Web Services
Spring LDAP
Spring Session
Spring Shell
5
9. Spring Framework (MVC)
Modelo de programação e configuração global;
Spring está focado na estrutura enquanto o programador
foca no desenvolvimento do código;
Injeção de dependências;
9
10. Injeção de Dependência
Injeção de dependência é um padrão de
desenvolvimento utilizado quando é necessário
manter baixo o nível de acoplamento entre
diferentes módulos de um sistema.
http://blog.caelum.com.br/ioc-e-di-para-frameworks-mvc/
10
11. Injeção de Dependência
Nesta solução as dependências entre os módulos
não são definidas programaticamente, mas sim pela
configuração de uma infraestrutura de software
(container) que é responsável por "injetar" em cada
componente suas dependências declaradas.
http://blog.caelum.com.br/ioc-e-di-para-frameworks-mvc/
11
14. Característica do Spring Web MVC
Separação clara de funções;
Cada validador, controlador, objeto tem sua função especializada e clara.
Configuração poderosa e direta de ambas as classes de
enquadramento e aplicação como JavaBeans;
Capacidade de configuração que permite fácil referência em diferentes contextos.
Adaptabilidade, o não-intromissão, e flexibilidade;
Configurações, por meio de anotações, para adaptar as classes a diversos cenários.
Código de negócio reutilizável;
14
15. DispatcherServlet
15
Concebido em torno de um Servlt central;
Este Servlet se comunica com os
controladores;
É integrado com o contêiner do Spring;
17. WebApplicationInitializer
Interface fornecida pelo Spring MVC;
Funciona mapeando o acesso ao servlet por meio de
código;
17
http://docs.spring.io/autorepo/docs/spring/3.2.x/spring-framework-reference/html/mvc.html#mvc-container-config
21. Aplicação
Spring Web Aplication
Gerenciamento de transações;
Lógica de negócio implementadas por
POJOs
Gerenciamento por contêiner;
Suporte a envio de email;
Suporte a validação;
Apoio ao ORM (JPA, Hibernate).
21
22. Aplicação
Spring com framework de terceiros
Pode ser integrado com uma camada
intermediária baseada no Spring, que
permite utilizar recursos deste.
Para isso é necessário conectar a lógica
de negócio ao ApplicationContext e usar
o WebApplicationContext para integrar
a camada web.
22
25. Dependências do Spring
Mantém o mínimo de dependências obrigatórias;
A ideia é não precisar baixar um grande número de
bibliotecas;
Para Injeção de Dependências, apenas a de logging é
necessária;
25