Vous êtes sur la page 1sur 34

Programao Web II

Seo 1 Introduo a Java Server


Pages
Prof. Marcelo Augusto Sudo

Objetivos:
Introduzir os alunos nos conceitos de
ambiente Web e dar uma viso bsica sobre
o que JSP atravs de exposio terica
para prepar-los para o andamento da
disciplina

JAVA
Criado em 1995 pela Sun Microsystems
Oracle Sun (2010)
http://www.sun.com/java/
http://www.oracle.com/us/technologies/java/index.html

Overview Java
Java a base de praticamente todos os
tipos de aplicativos em rede e o padro
global para desenvolvimento e
fornecimento de aplicativos incorporados,
jogos, contedo on-line e software
corporativo. Com mais de 9 milhes de
desenvolvedores em todo o mundo, o
Java permite desenvolver e implementar
aplicativos e servios incrveis com
eficincia.
Fonte: site da Oracle

Tecnologias Java
Java Embedded
Quando voc quiser mais mais seleo,
proteo e capacidade para aplicativos
incorporados , Java a escolha. Os
produtos Oracle Java Embedded so
projetados e otimizados para atender aos
requisitos nicos de dispositivos
incorporados, como microcontroladores,
sensores e gateways. Eles permitem
sistemas inteligentes para as comunicaes
M2M e para a Internet das Coisas, de modo
que voc possa fazer mais com seus
dispositivos.
Fonte: site da Oracle

Terminologias em Java
Java SE
A Plataforma Java, Standard Edition (Java
SE), permite que voc desenvolva aplicativos
seguros, portteis e de alto desempenho para
a maior variedade possvel de plataformas de
computao. Disponibilizando aplicativos em
ambientes heterogneos, as empresas
podem agilizar a produtividade do usurio
final, a comunicao e a colaborao alm
de reduzir drasticamente o custo de
propriedade de aplicativos tanto de empresas
quanto de clientes.
Fonte: site da Oracle

Terminologias em Java
Java EE
O Java Platform, Enterprise Edition (Java EE),
o padro do setor para computao Java
empresarial. Com novos recursos que melhoram
o suporte a HTML5, aumentam a produtividade
do desenvolvedor e aprimoram ainda mais a
forma de atender s demandas corporativas, o
Java EE 7 permite que os desenvolvedores
escrevam menos cdigos, tenham suporte
melhor para os mais recentes aplicativos da Web
e estruturas e tenham acesso mais capacidade
de expanso e funcionalidades mais avanadas.
Fonte: site da Oracle

Terminologias em Java
Cloud
O Oracle Java Cloud Service fornece uma
plataforma empresarial para desenvolver e
implementar aplicativos comerciais na nuvem.
Com ele, voc pode maximizar a
produtividade com acesso instantneo a
ambientes de nuvem que aceitam qualquer
aplicativo Java EE padro, o que se completa
com segurana integrada e acesso a banco
de dados tudo com a tecnologia Oracle
WebLogic Server.
Fonte: site da Oracle

Terminologias em Java
JDK
Java Development Kit
Desenvolvimento (compilador)
Execuo de Aplicaes Java

JRE
Java Runtime Environment
Somente Execuo de Aplicaes

JVM
Java Virtual Machine
Processo executado na memria
Carrega e executa os programas em Java

Ambiente de Desenvolvimento
IDE
Integrated Development Environment
Ferramentas para desenvolvimento

Orientao a Objetos
Conjunto de classes
definem os objetos do sistema de software
comportamento (mtodos)
estados (atributos)
Principais conceitos
Herana
Classe filha herda caractersticas da classe pai

Encapsulamento
Restrio de acesso aos mtodos e atributos

Polimorfismo
Classe carro Classe GM, Classe Fiat, Classe VW

Orientao a Objetos
Instanciao
Criao de um objeto na memria
Objeto fica na JVM
Ex.: Carro meuCarro = new GM(prata);

Banco de Dados
Armazenamento de Dados
Principais bancos
MySQL
Microsoft SQL Server
Oracle

JDBC
API Java para conexo com banco
Conecta a aplicao Java com o banco
Especfico para cada fabricante

Ambiente WEB
Rede de Computadores
Internet
Protocolo TCP/IP
Transmission Control Protocol
Internet Protocol

URL
Uniform Resource Locator
Endereo dos sites

WEB Server
Apache
Porta 80

HTML

Ambiente WEB
Aplicao Cliente x Servidor
Comunicao atravs de Requisio x
Resposta

Ambiente WEB
Servidor de Aplicao
Objetos persistidos na memria
Robusto

Container Servlet
Interpreta JSP

O que Java Server Pages ?


Tecnologia utilizada no desenvolvimento
de aplicaes para Web
Mistura de HTML + Java
Similar s tecnologias Active Server
Pages (ASP) da Microsoft ou PHP
Baseada em Java
portabilidade de plataforma
execuo em diversos sistemas operacionais,
como o Windows da Microsoft, Unix e Linux.

O que Java Server Pages ?


Esta tecnologia permite ao desenvolvedor
de pginas para Internet produzir
aplicaes que acessem o banco de
dados, manipulem arquivos no formato
texto, capturem informaes a partir de
formulrios e captem informaes sobre o
visitante e sobre o servidor.

O que Java Server Pages ?


Uma pgina criada com a tecnologia JSP,
aps instalada em um servidor de
aplicao compatvel com a tecnologia
Java EE, transformada em um Servlet
So exemplos de servidor compatvel com
a tecnologia JSP o Tomcat (Servlet
Container) e o Glassfish (Application
Server)
Ela executada no lado Servidor
Deployment
Implantao do sistema no servidor

Exerccios
1. Qual a diferena entre Java SE e Java EE
?
2. Qual a diferena entre JDK e JRE ?
3. Qual a diferena entre Servidor de
Aplicao e Container Servlet ?
4. Por que o JSP melhor que outras
linguagens ?

Introduo ao Java

Prof. Peter Jandl Jr.

Reviso Geral
1.
2.
3.
4.

Introduo ao Java
Variveis
Operadores
Estruturas de controle

Java na prtica - Exemplo


1. class teste {

2.

public static void main (String args[]) {


System.out.println(Al mundo!");

3.

4.

5. }

Todo programa java deve ter essa estrutura


Java case sensitive maiscula / minscula
fazem diferena
Nome da classe deve ser o nome do arquivo. Ex:
teste.java

Tipos de Dados Primitivos


Tipos numricos inteiros

byte (8 bits), varia de -128 at 127


short (2 bytes), varia de -32.768 at 32.767

int (4 bytes), varia de -2Gb at 2Gb


long (64 bits), varia de -9Tb a 9Tb
Tipos numricos decimais (ponto flutuante)
float (4 bytes), Aprox. 7 dgitos significativos, F ao final
double (8 bytes), 15 dgitos significativos
Tipo Lgico (verdadeiro ou falso)
boolean (1 bit), apenas dois valores: true ou false

Declarao de Variveis
Identificar o tipo da varivel e seu nome
Ex.: int idade; // idade do aluno
Pode-se iniciar a varivel com um valor inicial
Ex.: int idade = 18;

Variveis que contenham palavras


Ex.: String nome = Marcelo;

Pode ser concatenada com sinal de +


Ex.: nome_completo = Marcelo + + Sudo;

As variveis podem ser declaradas em qq parte


do programa, sendo vlidas dentro de seu
escopo

Operadores Aritmticos

Adio ( + ), Ex. a + 2
Subtrao ( - ), Ex. a 3
Multiplicao ( * ), Ex. a * 4
Diviso ( / ), Ex. a / 5
Resto da diviso inteira ( % ) funo mod
Ex. a % b, 10 % 3 = 1, 12 % 5 = 2

Hierarquia de Operadores
Parnteses, ( )
*,/,%
+, && , ||

Operadores Relacionais

Igual ( == ), Ex. a == 1
Diferente ( != ), Ex. a != 2
Maior que ( > ), Ex. a > 1
Menor que ( < ), Ex. a < 2
Maior ou igual que ( >= ), Ex. a >= 3
Menor ou igual que ( <= ), Ex. a <= 3

Operadores Lgicos

E lgico (AND), Ex. (a > 10) && (b < 5)


OU lgico (OR), Ex. (a > 10) || (b < 5)

Vetores e Matrizes

Vetores (array)

Estruturas utilizadas para armazenar dados


Definio: int[] vetor = new int[10];
Vetor de 10 posies (de 0 a 9) de valores inteiros
Os elementos do vetor podem ser acessados
segundo sua posio
vetor[0]; (primeiro elemento do vetor)

Para inserir valores no vetor, utilizamos a mesma


idia
vetor[0] = 5;

Matrizes
Vetores de vrias dimenses
int [][] matriz = new int[2][3]

Estrutura de repetio simples


Conjunto de comandos que devem ser repetidos um
nmero conhecido e fixo de vezes
Sintaxe:
for (inicializao; condio; incremento/decrem.) {
comandos;
}

Ex.:
for (int i=0; i < 10; i++) {
System.out.println(Meu nome Sudo!);
}

Estruturas de desvio de fluxo


Sintaxe:
if (expresso lgica) {
comandos;
} else {
outros comandos;
}

Ex.:
if (a > 10) {
System.out.println(Maior que 10);
} else {
System.out.println(Menor que 10);
}

Estruturas de desvio de fluxo

Sintaxe:
switch (expresso ordinal) {
case ordinal1: comando1;
break;
case ordinal2: comando2;
break;
default:
ltimo comando;
}
Ex.:
switch (idade) {
case 5: System.out.println(Criana);
break;
case 14: System.out.println(Adolescente);
break;
default: System.out.println(Adulto);
}

Estruturas de repetio condicionais


Controle de execuo feito pela avaliao de expresses
condicionais
Adequado para permitir a execuo repetida de um
conjunto de comandos por um nmero indeterminado de
vezes
Sintaxe:
while (expresso lgica) {
comandos;
}

Ex.:
int a = 0;
while (a < 10) {
System.out.println(Contador: + a);
a++;
}

Orientao a Objeto
Package (organizao das classes)
package edu.etep.prw4;

Import (uso de APIs)


import java.io.*;

Classe
public class MinhaClasse { ... }

Atributos (variveis)
public int idade;

Mtodos
public void calcular() { idade++; }

Instanciao
MinhaClasse minhaclasse = new MinhaClasse();

Design Patterns DAO e DTO


DAO (Data Access Object)
permite separar regras de negcio das regras de acesso
a banco de dados
funcionalidades de bancos de dados, tais como obter as
conexes, mapear objetos Java para tipos de dados
SQL ou executar comandos SQL
DTO (Data Transfer Object), VO (Value Object)
Transferncia de dados entre aplicaes
Usado com DAO para retornar informaes de banco de
dados

Exerccios
1. Faa um algoritmo que leia 3 nmeros e
imprima o maior e o menor deles. Dados
de entrada: os 3 valores j inseridos no
cdigo.
2. Dado um vetor com 10 nmeros, verificar
quantos so pares. Dados de entrada: o
vetor com os 10 valores j inseridos no
cdigo.
3. Implementar o algoritmo de potenciao.
Dados de entrada: base e potncia.
Ex.: 3 elevado a 2 igual 9.

Vous aimerez peut-être aussi