Objetivo Estes cursos unidos, possuem um completo conteúdo, com um aprendizado teórico e prático da linguagem de programação Java tanto para ambiente Desktop como para a Web. Serão abordados os seguintes tópicos: Lógica de Programação, Orientação a Objeto, Programação Java, Sistemas Web, Banco de Dados e os Frameworks Struts 2 e Hibernate. Desta forma, com este treinamento o aluno possuirá uma sólida base que permitirá o seu rápido ingresso no mercado de trabalho. Pré-requisitos Uso dos comandos básicos do Windows, tais como: criação, gerenciamento, remoção de arquivos ou pastas, instalação de aplicativos, criação e edição de arquivos tipo texto. Público Alvo Pessoas que desejam aprender a Linguagem de Programação Java tanto em ambiente Desktop como para Web. Isso inclui estudantes, programadores de linguagens não orientadas a objetos, analistas de sistemas, entre outros. Diferenciais X25 Duração 124 horas/aula - Instrutores altamente qualificados - Livros como Material Didático - Coffee-break - Estacionamento coberto gratuito - Computadores de última geração - Salas com projetores multimídia - Somente 01 aluno por computador - Certificado diferenciado pelo aproveitamento do aluno - Parcerias internacionais - Treinamentos in-company - Treinamentos revisados periodicamente Material Didático Livro: Aplicando Lógica Orientada a Objetos em Java Editora: Visual Books Autor: Fernando Anselmo Número de páginas: 178 Livro: Programação Java com Ênfase em Orientação a Objetos Editora: Novatec Autor: Douglas Rocha Mendes Número de páginas: 456 Struts 2 : Projeto e Programação Editora: Ciência Moderna Autor: Antunes Budi Kurniawan Número de páginas: 600 Telefones:(61) 3244-2510 / 3242-4339 www.x25.com.br 1
Conteúdo Programático Lógica Sequência de Pensamentos Lógicos Introdução ao Pensamento Lógico Conceitos iniciais (variáveis, sistema e constante) Sequência Lógica e Portugol Métodos e funções Exercícios práticos sobre o tópico de Sequência de Pensamentos Lógicos Tipos de Dados Inteiros, Numéricos, Alfanuméricos, Lógicos e Caractere Exercícios práticos sobre o tópico de Tipos de Dados Comandos de Decisão Exercícios práticos sobre o tópico de Decisão Comandos de Repetição Determinado e Indeterminado Exercícios práticos sobre o tópico de Repetição Orientação a Objetos Princípios Abstração, Encapsulamento, Herança e Modularização Polimorfismo Classes Abstratas e Classes UML (software StarUML) Diagrama de Classe IS-A (associação e agrupamento) e HAS-A (herança) Projeto realizado sobre Orientação a Objetos Programação Java Linguagem Java Características da linguagem de programação Java Palavras Chaves e Regras de Formação de Nomes (Notação) Tipos primitivos e Classe String, StringBuffer e StringBuilder Casting Wrapper Class Conversão entre os tipos primitivos Exercícios práticos sobre o tópico Linguagem Java Orientação a Objetos na prática com Java Enum, Interface, Classes Abstratas e Classes Reais Princípio do Encapsulamento, métodos GET e SET Polimorfismo por Overload e Override Exercícios práticos sobre o tópico Orientação a Objetos na prática com Java Partes de uma classe Escopo: Público, Protegido e Particular Conceito de pacote e importação Telefones:(61) 3244-2510 / 3242-4339 www.x25.com.br 2
Atributos Membros estáticos Composição de métodos Método principal: main Construção de métodos Métodos construtores Exercícios práticos sobre o tópico Partes de uma classe Operadores Operadores aritméticos Operadores unários Operadores relacionais Operadores lógicos Operadores de atribuição Exercícios práticos sobre o tópico Operadores Estruturas de controle Decisão Comandos IF e SWITCH Repetição Comandos WHILE, DO e FOR e FOR-EACH Comandos BREAK e CONTINUE Exercícios práticos sobre o tópico Estrutura de controle abordando os comandos de decisão e repetição Comando de proteção TRY e ASSERT Comandos throws e throw Exercícios práticos sobre o tópico proteção Arrays Exercícios práticos sobre Arrays Formatação Classes NumberFormat e DecimalFormat Classes DateFormat e SimpleDateFormat Método System.out.print Exercícios práticos sobre Formatação de Tipos Entrada de dados Classe java.util.scanner Visualização gráfica, classe javax.swing.joptionpane Exercícios práticos sobre o tópico Entrada de dados Classe Math Exercícios práticos sobre a classe Math IO: Entrada e Saída I/O Stream Byte Stream, Character Stream, Buffered Stream, Data Stream e Object Stream Leitura formatada por meio da classe java.util.scanner Gravação formatada por meio da classe PrintWriter Standard Stream I/O por meio da linha de comando Classe File Exercícios práticos sobre o tópico IO Telefones:(61) 3244-2510 / 3242-4339 www.x25.com.br 3
Java Reflection e Thread Java Reflection Listando os métodos de uma classe Obtendo informações mais precisas sobre método Obtendo informações sobre construtores de uma classe Obtendo os atributos de uma classe Invocando métodos pelo nome Criando novos objetos a partir do nome da classe Utilizando Atributos e Arrays Thread Herdando a classe Thread ou implementando Runnable Sincronização, Schedule e Prioridades Interrompendo a execução Concorrência entre Threads Exercícios práticos sobre o tópico Java Reflection e Thread Generics e Collections Generics Utilizando Generics com Classe Utilizando Generics com Métodos Utilizando Generics com Collections Collections Interface List Classes ArrayList, LinkedList e ArrayList Interface Set Classes LinkedHashSet, HashSet e TreeSet Interface Map Classes HashTable, LinkedHashMap, HashMap e TreeMap Exercícios práticos sobre o tópico Generics e Collections Introdução a Banco de Dados Banco HSQLDB Conexão JDBC Comandos SQL de Manutenção do BD CREATE, ALTER e DROP Comandos SQL de Manipulação de Dados INSERT, UPDATE, DELETE e SELECT Exemplos sobre conexões com bancos de dados Lógica e Prog. Java6.0 + Java p/ Web com Hibernate e Struts 2 Conceitos de Programação Java para WEB Nomenclatura de pacotes, métodos, variáveis para classes Java Nomenclatura de arquivos e diretórios Apresentação do projeto que será desenvolvido Texto descritivo do problema apresentado pelo cliente Texto descritivo com as funcionalidades do projeto Wireframe das telas do projeto Telefones:(61) 3244-2510 / 3242-4339 www.x25.com.br 4
Apresentação do diagrama de classe de domínio do projeto Ambiente de desenvolvimento e estrutura do laboratório e todos os recursos disponíveis Exercício: Codificar as classes do diagrama UML Conceitos de Banco de Dados Introdução ao MySQL Principais comandos utilizados SELECT INSERT DELETE UPDATE Modelagem básica do banco de dados com base no diagrama de classe, apresentado no exercício anterior Inserção de registros no banco de dados Integração do Java com o Banco de dados Download do Driver JDBC do MySQL JDBC e suas principais classe DriverManager Driver Connection PrepareStatement Statement ResultSet Aplicação de um CRUD (Create, Report, Update and Delete) em uma das entidades do diagrama de classes Exercício: CRUD para as demais entidades Web Server e Tomcat, JSP, Servlet e HTML Sobre o Tomcat Diretório onde está instalado o tomcat Principal variável de ambiente Problemas e soluções Estrutura de um projeto WEB Exercício: Criar a estrutura de diretórios para um projeto WEB Criar um projeto WEB HTML Principais tags do HTML html head body h1, h2, h3, h4, h5 e h6 p br form label input Lógica e Prog. Java6.0 + Java p/ Web com Hibernate e Struts 2 Telefones:(61) 3244-2510 / 3242-4339 www.x25.com.br 5
Exercício: Construir os formulários de entrada de dados do projeto modelo JSP Delimitadores Diretivas Objetos implícitos Exemplo Projeto modelo Exercício: Construir demais funcionalidades do projeto Servlets Classe HttpServlet e seus principais métodos doget e dopost Como criar um Servlet Vantages e desvantagens de utilizar o Servlet Como processar um formulário com o Servlet Filtros Qual o papel de um filtro e quando o Tomcat executa um filtro Como criar um filtro Exemplo de utilização do filtro Como criar um filtro para verificar autenticação do usuário Modelo MVC Conceito do MVC e sua filosofia. Separação das camadas do projeto. Exemplo Separando as camadas do projeto modelo Hibernate Como funciona o Hibernate Vantagens em adicionar o Hibernate ao projeto Mapeamento de Objetos Mapeamento utilizando XML Mapeamento utilizando Anotações Principais anotações @Entity @Table @Id @GeneratedValue @Column @Temporal @Lob @JoinColumn @OneToOne @OneToMany @ManyToMany Lógica e Prog. Java6.0 + Java p/ Web com Hibernate e Struts 2 Telefones:(61) 3244-2510 / 3242-4339 www.x25.com.br 6
@ManyToOne Utilitário Hibernate XML ou Anotações, qual o melhor formato? JPA Outras implementações do JPA Vantagens e desvantagens do JPA Principais diferenças entre o Hibernate (Tradicional) e o Hibernate (JPA) Objetos de conexão Configuração Relacionamentos Principais relacionamentos; Identificar os relacionamentos que o projeto possui; Anotações @OneToMany @ManyToOne @ManyToMany @JoinColumn @relatedby @JoinTable Como mapear objetos com herança Tabela única Junção Tabela por classe Manipulando os dados de um objeto persistente merge persist remove createquery createnativequery HQL Manipulando dados com o HQL Comparando HQL com o SQL ANSI Exercício: Mapear os objetos de dominio do projeto modelo Criar métodos para recuperar, listar, remover e inserir objetos Struts 2 O que é Struts 2 Vantagens e desvantagens do Struts 2 Adicionar o Struts 2 no projeto. Como o Struts 2 funciona Arquivo de configuração struts.xml Estrutura de um Action ActionSupport Prepareble Struts 2 e suas tags s:form Telefones:(61) 3244-2510 / 3242-4339 www.x25.com.br 7
s:head s:include s:textield s:textarea s:submit s:action Exercício: Converter os formulários da aplicação, utilizando as tags do Struts Validação de dados do formulário Exercício: Validar os formulários do projeto modelo, com base no requisitos do projeto Interceptor Como funciona o intereceptor Como verificar a sessão do usuário com interceptor Configurando o LoginInterceptor Exercício: Remover o filtro do sistema e configurar o LoginInterceptor Como tabular dados utilizando o displaytag Exercício: Adicionar filtros e ordenação aos formulários Telefones:(61) 3244-2510 / 3242-4339 www.x25.com.br 8