FJ-27 - Spring Framework

Recentemente a quantidade de ofertas de empregos  online relacionadas a Spring ultrapassou na quantidade relacionada a EJB (fonte). Apesar do EJB3 ter corrigido uma série de problemas das edições anteriores, seu mecanismo de injeção de dependências ainda é considerado muito menos poderoso que o do Spring, o que faz muita gente ainda preferir o Spring que a plataforma Java EE 5. Algumas pessoas tentam unir o melhor dos dois mundos, utilizando EJB3 com Spring. Tanto isso é verdade que no mesmo link é possível ver que a quantidade de empregos que pedem Spring e EJB tem aumentado consideravelmente.

O curso possui 20h de duração, trabalhando tanto os conceitos e padrões básicos como questões avançadas de configurações e extensibilidade do Spring Framework, alguns assuntos abordados: inversão de controle, programação orientada a aspectos, desenvolvimento baseado em pojo's, container de inversão de controle, integração com tecnologias de persistência como JDBC e Hibernate, testes unitários com o Spring, configuração via anotações, integração com JSF.


Spring Framework Caelum

Faça já sua reserva

Informações

Carga Horária: 20 horas aula

Pré-requisitos: Curso FJ-11 ou: linguagem Java, variáveis primitivas e orientação a objetos, tratamento de erro, conhecimentos fundamentais de Java SE, entrada e saída, coleções, básico de multi-threading em Java.
Conhecimentos de JDBC, Hibernate, JSP e JSF desejáveis.

Próximas Turmas

Início Término Período
19/01 23/01 Noturno (19:00 as 23:00)
Entre em contato para saber as próximas datas.
Entre em contato para saber as próximas datas.

Indicação de bibliografia
Bibliografia na Livraria Tempo Real

Conteúdo detalhado do FJ-27

Como aprender Java

  1. Falando em Java
  2. O curso
  3. Indicação de bibliografia extra

Inversão de Controle

  1. A necessidade
  2. A solução
  3. Invertendo o Controle

Criando nosso modelo - Controle de Tarefas

  1. Criando o projeto no Eclipse
  2. O sistema de controle de tarefas
  3. Exercícios: Novo projeto no Eclipse

O princípio de Hollywood

  1. Relacionamento entre objetos
  2. Instanciação direta
  3. Registry
  4. Injeção de Dependência
  5. Para saber mais: Inversion Of Control

Spring Framework

  1. O que é?
  2. Arquitetura do Spring
  3. Introdução aos beans do Spring
  4. BeanFactory o container
  5. Configurando o Spring
  6. Iniciando o container
  7. Exercícios: Projeto com Spring IoC
  8. Injetando as Dependências

Preparando os testes

  1. Introdução aos testes unitários
  2. Testes unitários na prática
  3. JUnit
  4. Migrando nosso teste para o JUnit
  5. Testes unitários com Spring
  6. Exercícios: Testes unitários com Spring

Spring Framework e Hibernate

  1. Hibernate
  2. Baixando na internet
  3. Anotações, EJB3 e Persistence API
  4. Mapeando a classe Projeto
  5. Exercícios: Colocando suporte ao Hibernate
  6. Integrando o Hibernate ao Spring
  7. Exercícios: Spring-Hibernate
  8. Para saber mais: hibernate.cfg.xml
  9. Data Access Object
  10. HibernateTemplate
  11. HibernateDAOSupport
  12. Registrando o DAO no Spring
  13. Exercícios: DAO
  14. Amarrando as dependências (wiring)
  15. Exercícios: Wiring do DAO
  16. Exercícios opcionais - Datasource
  17. Exercícios opcionais - Propriedades do Hibernate
  18. Exercícios opcionais - DAO com JDBC

Spring Avançado

  1. Configuração via anotações
  2. Exercícios: Habilitando suporte a anotações
  3. Auto-detectando os componentes
  4. Nomeando nossos componentes
  5. Exercícios: Anotando as classes
  6. Amarrando as dependências
  7. @Qualifier
  8. Exercícios: Wiring
  9. Exercícios opcionais
  10. Exercícios opcionais
  11. Exercícios opcionais

Escopos dos Beans

  1. Diferentes escopos
  2. Escopo Singleton
  3. Escopo Prototype
  4. Outros escopos: Request, Session, Global Session
  5. Configuração inicial
  6. Configurando os escopos
  7. Exercícios: Escopos

AOP

  1. Introdução a Programação Orientada a Aspectos
  2. AOP na prática
  3. Elementos de um Aspecto
  4. AOP com Spring
  5. AOP no Spring com @AspectJ-style
  6. Exercícios
  7. Definindo Pointcuts e Advices
  8. Exercícios
  9. Outros Advices
  10. Para saber mais: Combinando Pointcuts
  11. Para saber mais: @Around
  12. Exercícios Opcionais
  13. Para Saber Mais: Configuração via XML
  14. Exercícios Opcionais

Gerenciamento de Transações

  1. Introdução
  2. Gerenciamento de transações declarativo
  3. Controle de transações através de anotações
  4. Configurando o suporte a transações
  5. Exercícios
  6. Gerenciamento de transações declarativo com xml
  7. Exercícios opcionais
  8. Gerenciamento de transações de maneira programática
  9. Exercícios opcionais

JavaServer Faces e Spring

  1. JavaServer Faces
  2. Configurando o Spring em uma aplicação Web
  3. Exercícios
  4. Integrando JavaServer Faces com Spring
  5. Exercícios
  6. Registrando o managed-bean
  7. Amarrando as dependências
  8. Exercícios
  9. Definindo os escopo do managed-beans
  10. Exercícios
  11. Para saber mais: FacesContextUtils
  12. Exercícios opcional

Spring na Web com SpringMVC

  1. O que é o SpringMVC
  2. Criando Projeto Web com Spring
  3. Configurando a DispatcherServlet
  4. Os Controllers
  5. Exercício opcional
  6. ViewResolvers
  7. Listagem de Projetos com DAO injetado
  8. Listando no JSP com JSTL
  9. Exercícios: Lista Projetos
  10. Para saber mais: Resumo de outros controllers
  11. Usando anotações no 2.5
  12. Exercícios: lista
  13. Adiciona Projeto
  14. Exercícios: Adiciona
  15. Removendo Projetos
  16. Exercícios: Remove
  17. Exercícios opcionais
  18. Para Saber Mais - Integração com Struts

Outras Tecnologias

  1. Enviando E-mail com Spring
  2. Exercício: Spring Mail
  3. Exercício opcional: Email como Aspecto
  4. Integração com JMS
  5. Exercício: Integração com JMS
  6. Spring Integration
  7. Exercício: Spring Integration
  8. Polling
  9. Exercício opcional: Polling
  10. Spring Security
  11. Exercício: Spring Security numa aplicação Web
  12. Autorização com Anotações
  13. Exercício opcional

Apêndice A - Outros Containers e futuro do Spring

  1. Pico Container
  2. Guice
  3. EJB3
  4. Futuro do Spring

Apendice D - Maven

  1. Introdução
  2. Criando um novo projeto
  3. Testando seu projeto
  4. Exercícios opcionais
  5. Eclipse e outras IDEs
  6. Exercícios opcionais

Apêndice C - Spring WebFlow

  1. O que é um fluxo
  2. Exercícios: Preparando o projeto para o WebFlow
  3. Exercícios: Fazendo um fluxo para wizard de um projeto
  4. Exercício opcional: O botão back e mais do xml do Flow