Artigo no estilo: Curso

Por que eu devo ler este artigo:

Este artigo é útil porque apresenta alguns dos recursos disponíveis a partir da versão 4 do Spring Framework. Para isso, será demonstrado como fazer uso desses recursos no decorrer do desenvolvimento de uma aplicação web.

Esse conteúdo é bastante importante principalmente por ajudar o leitor a se familiarizar com as novas soluções disponibilizadas pelo Spring, possibilitando uma análise do funcionamento destas e facilitando a identificação de quando adotá-las.

O Spring Framework chega à versão 4 ultrapassando 10 anos de existência, contados a partir do seu release inicial – mais especificamente, março de 2004. Na época, esta versão inicial já era bastante inovadora, apresentando-se como um container leve que oferecia a criação e gerenciamento de beans, injeção de dependências, controle de transações (de forma declarativa e programática), suporte ao Hibernate, um framework MVC completo, o Spring MVC, classes utilitárias para o desenvolvimento de DAOs, uso da tecnologia JDBC e a integração com EJBs.

O conjunto das soluções providas pelo Spring Framework permite a construção de qualquer tipo de aplicação, não estando restrito apenas a soluções para a plataforma Web. Além disso, a facilidade de configuração e execução do container simplifica o desenvolvimento e a criação do ambiente para execução de testes integrados.

Durante estes mais de 10 anos, o Spring obteve uma evolução grandiosa, acumulando inovações em suas principais funcionalidades. Podemos citar, por exemplo, o uso de anotações para a criação, gerenciamento e injeção de beans, bem como o lançamento de novos módulos como o Spring Security, Spring Data, Spring Batch, Spring Integration, entre outros.

A versão 4 do Spring Framework, lançada em Dezembro de 2013, vem com o compromisso de manter a plataforma alinhada com as tecnologias mais recentes para o desenvolvimento Java.

Nesta versão, além de melhorias em funcionalidades do próprio framework, foram adicionados suporte para as plataformas Java 8 e Java EE 7, a evolução de recursos no desenvolvimento de interfaces REST e o suporte à tecnologia de WebSockets. Dito isso, o objetivo deste artigo é apresentar de forma prática algumas destas novidades trazidas no lançamento do Spring Framework 4, por meio do desenvolvimento das funcionalidades de uma aplicação web.

Nesta primeira parte, alguns dos novos recursos serão apresentados na implementação de funcionalidades de infraestrutura e backend da aplicação, enquanto a segunda parte terá o foco em expor recursos utilizados na criação da camada de apresentação.

A aplicação proposta

Para realizar a demonstração dos recursos disponíveis no Spring Framework 4, foi idealizado um sistema para controle de tarefas. Sendo assim, no decorrer do desenvolvimento deste sistema, serão utilizadas as novas funcionalidades do Spring de uma maneira simples, focando sempre em facilitar o entendimento do funcionamento e o propósito (solução) oferecido por cada recurso.

O sistema de controle de tarefas

O sistema de Controle de Tarefas tem como objetivo principal facilitar o controle das atividades gerenciadas por um grupo de pessoas. Assim, para cada pessoa com acesso ao sistema, denominada usuário, existirá uma associação com um perfil, e cada perfil concede níveis de operação diferentes dentro do sistema.

No sistema de Controle de Tarefas, foram definidos dois perfis de usuário, detalhados a seguir:

  1. Administrador: Este perfil permite ao usuário a criação de tarefas e o acompanhamento (em tempo real) de todas as tarefas cadastradas no sistema;
  2. Usuário: O usuário com este perfil pode assumir tarefas e consequentemente mudar o status das tarefas para as quais ele é o responsável.

Além das informações de usuário, o sistema também manterá os dados que permitem a identificação, autoria, responsabilidade e o controle dos possíveis estados de uma tarefa.

Os estados das tarefas gerenciadas pelo sistema são:

  • Cadastrada: Este é o estado inicial de uma tarefa, atribuído na criação da tarefa por um usuário com perfil Administrador;
  • Iniciada: A tarefa neste estado foi iniciada por um usuário com perfil Usuário, que neste caso assumiu o papel de responsável por ela;
  • Concluída: Ao alcançar este estado, a tarefa foi concluída com suce ...
    Fim do trecho gratuito • continue abaixo
    CONTEÚDO EXCLUSIVO

    Desbloqueie toda a DevMedia

    • +2000 artigos e vídeos
    • +40 trilhas sobre Front-end, Back-end, IA e muito mais
    • +5000 exercícios práticos
    • Mentorias ao vivo individuais
    até 50% OFF
    A partir de
    R$ 69 /mês
    Assinar agora