Spring

Olá pessoal!

Anunciando o 3º Framework de Java, que é...
rufem os tambores  (som)

E o Framework da vez é: SPRING!!


Depois dessa apresentação digna de globo de ouro..
Vamos ao trabalho logo moçada.

Spring...

O Spring é um Framework open source para a plataforma Java. É um Framework baseado nos padrões de projeto inversão de controle (IoC) e injeção de dependência.

Possui uma arquitetura baseada em interfaces e POJOs (Plain Old Java Objects), oferecendo aos POJOs características como mecanismos de segurança e controle de transações.

Esse Framework oferece diversos módulos que podem ser utilizados de acordo com as necessidades do projeto, como módulos voltados para desenvolvimento Web, persistência, acesso remoto e programação orientada a aspectos.

Vantagens:

  1. Integração simples com outros Frameworks
  2. Navegação realizada por anotações
  3. BindResult e ModelAndView realizam o trabalho de validação e estado das páginas
  4. Integração Hibernate Validator
  5. Simplificação no código da aplicação
  6. Testabilidade
  7. Baixo acoplamento entre os objetos
  8. Flexibilidade no gerenciamento do ciclo de vida dos objetos

Desvantagens:

  1. Utilização de XML
  2. Documentação boa! Porém assusta quem pretende iniciar o desenvolvimento por Spring
  3. A cadeia de objetos pode se tornar muito grande

Vamos olhar agora a arquitetura*?

*Separei duas imagens para ficar melhor a visualização de pacotes isolados do Spring e pacotes em integração.




O Núcleo do Spring

O contêiner principal do Spring é a parte mais importante e essencial da estrutura.
Fornece a funcionalidade IoC (inversão de controle) que permite gerenciar o contêiner de beans.
Um componente principal desse núcleo é o BeanFactory, uma implementação do padrão factory básico.
Permite uma separação distinta das especificações de configuração e dependência de uma aplicação da lógica do programa real.

O Contexto do Spring

O contexto do Spring fica sobre o pacote principal e fornece uma maneira de acessar beans com um estilo de estrutura.
Este contexto fornece suporte para serviços corporativos, como Java Naming and Directory Interface (JNDI),
Enterprise JavaBeans (EJB), e-mail, validação, internacionalização, propagação de eventos, carregamento de recursos e criação transparente de contextos.

Programação Orientada a Aspectos do Spring

É possível implementar AOP diretamente no Spring Framework usando o pacote AOP do Spring.
Também é fornecido com alguns aspectos integrados (beans) para facilitar AOP. Um dos importantes é o serviço de gerenciamento de transações para objetos AOP.

Spring DAO

O pacote Spring Data Access Objects (DAO) fornece uma camada de abstração de JDBC.
Também fornece uma maneira fácil de gerenciar a manipulação de exceção e os códigos de erro emitidos por diferentes fornecedores de banco de dados.
Além disso o pacote JDBC fornece uma maneira de realizar gerenciamento de transações programáticas e declarativas, não apenas para classes implementando interfaces especiais, mas também para todos seus objetos Java antigos simples (POJOs).

Recursos do Spring DAO

A principal meta da estrutura do Spring DAO é padronizar e simplificar o trabalho com tecnologias de acesso de dados, como JDBC, Hibernate ou JDO. Portanto, se estiver trabalhando com a estrutura do Spring DAO, fica bem fácil alternar de uma tecnologia de acesso a dados para outra.

Spring ORM

O design do Spring Framework permite uma integração direta a algumas das populares APIs de mapeamento relacional de objeto, como ( JDO, Hibernate e iBatis ).

Spring Web Flow (SWF)

O módulo Spring Web Flow fornece diversos recursos de integração orientados pela Web. Ajuda a definir o fluxo das aplicações da Web de forma declarativa. Também fornece outros recursos, como a funcionalidade multipartes, a inicialização de contextos usando os listeners de servlet e um contexto de aplicação orientado pela Web.

Spring Web MVC

O pacote Web MVC do Spring fornece uma implementação do Model-View-Controller para aplicações da Web. A implementação de MVC do Spring não é apenas uma implementação comum, ela fornece uma separação limpa entre o código do modelo do domínio e os formulários da Web e permite que todos os outros recursos do Spring Framework, como validação, sejam usados.


Bom, espero que tenham gostado do post galerinha.
Foi longo também neh, mas Spring é um mundo.
Espero vocês no próximo! o/
Fui!

About thallitaceleste

0 comments:

Postar um comentário