Caelum - Ensino e Inovação | Explore o poder de Java e Scrum

FJ-21 - Java para Desenvolvimento Web

O mercado de desenvolvimento Web em Java é realmente muito grande. Este curso visa não apenas mostrar os conceitos básicos de uma web application, mas também mostrar os frameworks mais conhecidos e requisitados no mercado para aplicar o padrão arquitetural Model View Controller (MVC).

Incluindo o uso de Hibernate 3 com recursos do Java 5 e anotações do EJB 3.0, Struts 1.x e VRaptor. O Tomcat 6 é usado como servlet container e o Eclipse com WTP como IDE. Aprenda a última versão desses frameworks no curso de web mais respeitado do mercado!

Apostila recentemente reformulada (fevereiro de 2009).

Valeu cada centavo investido. Aprendi em duas semanas o que não aprendi em três anos. Ótima didática com excelentes profissionais, em breve voltarei para fazer mais dois cursos. Sai daqui com outra visão, buscando novos desafios. Obrigado à Família Caelum por nos recebermos tão bem!

Raimundo Jose, Aracaju-ES, FJ-21


É impressionante tudo que se aprende em tão pouco tempo. A combinação de um bom material e ótimos professores é o grande defirencial da Caelum, recomento a todos!!!

Daves Vieira, Aracaju-SE, FJ-21


Faça já sua reserva

Informações

Carga Horária: 40 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, básico de http e html.

Próximas Turmas

São Paulo

Início Término Período
06/07 10/07 Integral (9:00 as 17:00)
11/07 08/08 Sabado (9:00 as 17:00)
13/07 17/07 Integral (9:00 as 17:00)
13/07 24/07 Noturno (19:00 as 23:00)
13/07 24/07 Noturno (19:00 as 23:00)
20/07 24/07 Integral (9:00 as 17:00)
27/07 07/08 Noturno (19:00 as 23:00)
27/07 31/07 Integral (9:00 as 17:00)
03/08 07/08 Integral (9:00 as 17:00)
10/08 21/08 Noturno (19:00 as 23:00)
24/08 04/09 Noturno (19:00 as 23:00)
29/08 26/09 Sabado (9:00 as 17:00)
26/09 24/10 Sabado (9:00 as 17:00)
10/10 07/11 Sabado (9:00 as 17:00)
21/11 19/12 Sabado (9:00 as 17:00)

Rio de Janeiro

Início Término Período
04/07 01/08 Sabado (9:00 as 17:00)
04/07 01/08 Sabado (9:00 as 17:00)
13/07 17/07 Integral (9:00 as 17:00)
17/08 28/08 Noturno (18:00 as 22:00)
12/09 10/10 Sabado (9:00 as 17:00)

Indicação de bibliografia
Bibliografia na Livraria Tempo Real

Conteúdo detalhado do FJ-21

Como Aprender Java

  1. O que é realmente importante?
  2. Sobre os exercícios
  3. Tirando dúvidas
  4. Bibliografia

JDBC - java.sql

  1. Executando o Eclipse pela primeira vez
  2. O banco
  3. Sockets: uma idéia inocente
  4. A conexão em Java
  5. Fábrica de Conexões
  6. Soluções para viagem - Design Patterns
  7. Exercícios - ConnectionFactory
  8. A tabela de exemplo
  9. Javabeans
  10. Exercícios - Contato
  11. Inserindo dados
  12. DAO - Data Access Object
  13. Exercícios - ContatoDAO
  14. Exercícios Opcionais
  15. Pesquisando
  16. Exercícios - Listagem
  17. Um pouco mais...
  18. Exercícios opcionais
  19. Outros métodos para o seu DAO
  20. Exercícios opcionais - Alterar e remover

O que é J2EE?

  1. Java EE
  2. APIs
  3. Implementações compatíveis com a especificação

Servlet Container

  1. Introdução
  2. Aplicações web no Java EE e Servlet Container
  3. Instalando o Tomcat
  4. Sobre o Tomcat
  5. Instalando o Tomcat em casa
  6. Outra opção: Jetty

O eclipse e seus plugins

  1. O plugin WTP
  2. Configurando o Tomcat no WTP

Novo projeto web

  1. Novo projeto
  2. Análise do resultado final
  3. Exercícios: primeira página
  4. Para saber mais: configurando o Tomcat sem o plugin

JSP - JavaServer Pages

  1. O que é uma página JSP
  2. Exercícios: Primeiro JSP
  3. Listando os contatos
  4. Exercícios: Lista de contatos com scriptlet
  5. HTML e Java: eu não quero código Java no meu JSP!
  6. EL: Expression language
  7. Exercícios: parâmetros com EL
  8. Exercícios opcionais
  9. Erros comuns
  10. Exercício opcional
  11. Instanciando POJOs
  12. Para saber mais: Compilando os arquivos JSP

JSTL - JavaServer Pages Tag Library

  1. JSTL
  2. As empresas hoje em dia
  3. Instalação
  4. Cabeçalho para a JSTL core
  5. For
  6. Exercícios: forEach
  7. Exercício opcional
  8. c:out e c:set
  9. Mas quais são as tags da taglib core?
  10. Import: trabalhando com cabeçalhos e rodapés
  11. Exercícios
  12. Erros Comuns
  13. Inclusão estática de arquivos
  14. Exercícios
  15. Exercícios opcionais
  16. Trabalhando com links
  17. Exercícios opcionais
  18. c:if
  19. Exercícios

Controle de erro

  1. Exceptions
  2. JSTL é a solução?
  3. Exercício opcional
  4. Quando acontece um erro em uma página JSP
  5. Página de erro
  6. Exercícios
  7. Erros comuns

Servlets

  1. Servlet
  2. A estrutura de diretórios
  3. Mapeando uma servlet no web.xml
  4. Exercícios: Servlet OiMundo
  5. Erros comuns
  6. Init e Destroy
  7. Curiosidades do mapeamento de uma servlet
  8. OutputStream x PrintWriter
  9. Parâmetros
  10. Exercícios: TestaParametros
  11. Exercício opcional
  12. doGet, doPost e outros
  13. Conversão de parâmetros
  14. Exercícios opcionais
  15. Variáveis membro
  16. Exercícios: Contador
  17. HTML e Java: eu não quero código html na minha servlet!
  18. Como funciona uma página JSP
  19. Web archive (.war)
  20. Exercícios: Deploy com war
  21. Quando acontece um erro em uma servlet
  22. O try e catch
  23. Tratamento padrão de erros - modo declarativo
  24. Configurando a página de erro
  25. Exercícios
  26. Erros comuns
  27. Tratamento de outros erros
  28. Exercício opcional
  29. Outro erro comum
  30. Servlet para adicionar contatos no banco
  31. Exercício
  32. Exercícios Opcionais

Servlet e JSP API

  1. Propriedades de páginas JSP
  2. Exercícios
  3. Filtros
  4. Configuração de filtros
  5. Exercícios
  6. Entendendo os filtros
  7. Exercício Opcional

Model View Controller

  1. Servlet ou JSP?
  2. Request dispatchers
  3. Exercícios
  4. Melhorando o processo
  5. Retomando o ::design pattern:: Factory

Construindo um Framework MVC

  1. Nossa interface de execução
  2. Exercícios
  3. Criando um controlador e um pouco mais de reflection
  4. Configurando o web.xml
  5. Exercícios
  6. Erros comuns
  7. Exercícios
  8. Exercícios opcionais
  9. Model View Controller
  10. Lista de tecnologias: camada de controle
  11. Lista de tecnologias: camada de visualização
  12. MVC 2

Struts Framework

  1. Struts
  2. Configurando o Struts
  3. Exercícios
  4. Uma ação Struts
  5. Configurando a ação no struts-config.xml
  6. Exercícios: TesteSimplesAction
  7. Erros comuns
  8. Pesquisando um banco de dados
  9. Criando a ação
  10. O arquivo WebContent/lista.jsp
  11. ListaContatos no struts-config.xml
  12. Exercício: ListaContatosAction
  13. Resultado condicional com o Struts
  14. Exercícios: listagem vazia
  15. Resultado do struts-config.xml
  16. Novos contatos
  17. Formulário
  18. Mapeando o formulário no arquivo struts-config.xml
  19. Exercício: ContatoForm
  20. Erro comum
  21. Lógica de Negócios
  22. Exercício: AdicionaContatoAction
  23. Erros comuns
  24. Arquivo de mensagens
  25. Exercícios: Mensagens
  26. Erros comuns
  27. Validando os campos
  28. Exercício: validação
  29. Erros comuns
  30. Exercícios opcionais
  31. Limpando o formulário
  32. Exercícios: scope
  33. Exercícios opcionais
  34. O mesmo formulário para duas ações
  35. Exercícios opcionais
  36. Struts-logic taglib: um exemplo antigo de for
  37. Para saber mais

Autenticação, cookies e sessão

  1. Preparando um sistema de login
  2. Nossas classes: Funcionario e FuncionarioDAO
  3. Passo 1: Formbean
  4. Passo 2: A página de login: formulario-login.jsp
  5. Exercícios: formulário de login
  6. A ação
  7. A ação no struts-config.xml
  8. ok.jsp e erro.jsp
  9. Exercícios: LoginAction
  10. Erro comum
  11. Exercícios opcionais
  12. Cookies
  13. Sessão
  14. Configurando o tempo limite
  15. Registrando o usuário logado na sessão
  16. Exercícios: autorização
  17. Exercícios opcionais

Hibernate

  1. Vantagens
  2. Criando seu projeto
  3. Modelo
  4. Configurando a classe/tabela Produto
  5. Exercícios
  6. Propriedades do banco
  7. Exercícios
  8. Configurando
  9. Criando as tabelas
  10. Exercícios
  11. Dica: log do Hibernate
  12. HibernateUtil
  13. Exercícios
  14. Erros comuns
  15. Salvando novos objetos
  16. Exercícios
  17. Buscando pelo id
  18. Criando o ProdutoDAO
  19. Exercícios
  20. Buscando com uma cláusula where
  21. ProdutoDAO: Listar tudo e fazer paginação
  22. Exercícios
  23. Exercícios para o preguiçoso
  24. Exercício opcional

VRaptor

  1. Eu não quero o que eu não conheço
  2. Vantagens
  3. Vraptor 2
  4. Exercícios
  5. Internacionalização
  6. A classe de modelo
  7. Minha primeira lógica de negócios
  8. Como configurar a minha lógica?
  9. E o JSP com o formulário?
  10. E a página final?
  11. Exercícios
  12. A lista de produtos
  13. Exercícios opcionais
  14. Velocity, Freemaker e Sitemesh
  15. Configurações
  16. Um pouco mais...
  17. Plugin para o Eclipse
  18. Pequenos exemplos de simplicidade

E agora?

  1. Certificação
  2. Frameworks
  3. Revistas
  4. Grupo de Usuários
  5. Falando em Java - Próximos módulos

Apêndice A - Servlet e JSP API

  1. Início e término da sua aplicação
  2. Exercícios
  3. getServletContext()
  4. Exercícios opcionais
  5. Acessando a aplicação no JSP
  6. Exercícios
  7. Configuração de uma servlet
  8. Exercícios
  9. Descobrindo todos os parâmetros do request

Apêndice B - Design Patterns

  1. Factory - exemplo de cache de objetos
  2. Singleton
  3. Exercícios
  4. Um pouco mais...

Caelum | Ensino e Inovação
São Paulo: Rua Vergueiro, 3185, cj. 87, próximo ao Metrô Vila Mariana   |   Tel. (11) 5571-2751
Rio de Janeiro: Rua Senador Dantas, 80, cj. 307/308 - Centro   |   Tel. (21) 2220-4156 ou 2297-0033