SlideShare une entreprise Scribd logo
1  sur  20
LINGUAGEM DE
PROGRAMAÇÃO III
SERVLETS
Servlets
• Um servlet estende a funcionalidade de um
servidor, como um servidor Web que serve
páginas da Web para um navegador do usuário
com o protocolo HTTP.
• Os pacotes javax.servlet, javax.jsp e
javax.servlet.http fornecem as classes e
interfaces para definir os servlets.
• Os pacotes javax.servlet.jsp,
javax.servlet.jsp.tagex fornecem classes e
interfaces que estendem as capcidades dos
servlet para Java Server Pages (JSP)
Servlets
• JSP permite que desenvolvedores de páginas web
criem páginas que encapsulam a funcionalidade Java
e até mesmo escrevam scriptlets do código Java real
diretamente na página.
• Os servlets são eficientes para desenvolver soluções
baseadas na Web que ajudam a fornecer acesso
seguro a um site, interagir com bancos de dados em
favor de um cliente, gerar dinamicamente
documentos personalizados de XHTML a ser exibidos
por navegadores e manter informações de sessão
exclusivas de cada cliente.
Clientes Magros
• São aplicativos que fornecem apresentação, mas não
processam dados, reqeurendo assim menos recursos de
computação
• O servidor é responsável pelo acesso ao banco de
dados.
• Os clientes conectam-se ao servidor utilizando
protocolos-padrão disponíveis na maioria das
plataformas clientes
• O código da lógica de apresentação para gerar conteúdo
dinâmico pode ser escrito uma vez e residir no servidor
para acesso pelos clientes para permitir que os
programadores criem clientes magros eficientes.
Tomcat
• JCP – Java Community Process: comunidade
java responsável pelo desenvolvimento das
especificações (APIs) Java.
• A implementação de referência para JSP e
Servlet é feita pela Apache Software
Foundation como parte do Jakarta Project.
• Um dos suprojetos do Jakarta é o TOMCAT que
é a implementação oficial de referência dos
padrões JSPs e Servlets
Ciclo de Vida de um Servlet
• Um ciclo de vida de um servlet inicia quando o
contêiner de servlets o carrega na memória.
• Antes que o servlet possa tratar essa
solicitação, o contêiner invoca o método INIT
do servlet.
• Depois que INIT completa a execução, o
servlet pode responder à sua primeira
solicitação
Ciclo de Vida de um Servlet
• Todas as solicitações são tratadas por um
método SERVICE do servlet, que recebe a
solicitação, processa-a e envia uma resposta
ao cliente
• Durante o ciclo de vida de um servlet, o
método SERVICE é chamado uma vez por
solicitação
Ciclo de Vida de um Servlet
• Cada nova solicitação é em geral tratada em
uma nova thread separada de execução e
gerenciada pelo contêiner de servlets na
qual o método SERVICE executa.
• Quando o contêiner de servlets termina o
servlet, o método DESTROY do servlet é
chamado para liberar os recursos do servlet.
Ciclo de Vida de um Servlet
MÉTODO DESCRIÇÃO
VOID INIT
(SERVLETCONFIG
CONFIG)
O contêiner de servlets chama esse método
uma vez durante o ciclo de execução de um
servlet para inicializar o servlet. O argumento
SERVLETCONFIG é fornecido pelo contêiner
de servlets que executa o servlet
SERVLETCONFIG
GETSERVLETCONFIG()
Este método retorna uma referência para um
objeto que implementa a interface
SERVLETCONFIG. Esse objeto fornece acesso
às informações de configuração do servlet,
como seus parâmetros de inicialização e
SERVLECONTEXT, que fornece ao servlet
acesso ao seu ambiente
Ciclo de Vida de um Servlet
MÉTODO DESCRIÇÃO
STRING
GETSERVLETINFO()
Este método é definido por um programador de
servlet para retornar uma string que contém
informações do servlet como o autor e a versão do
servlet
VOID SERVICE
(SERVLETREQUEST
REQUEST,
SERVLETRESPONSE
RESPONSE)
O contêiner de servlets chama este método para
responder a uma solicitação do cliente para o servlet
VOID DESTROY() Este método de limpeza é chamado quando um
servlet é terminado pelo seus contêiner de servlets.
Os recursos utilizados pelo servlet, como abrir
arquivos ou abrir conexões ao banco de dados,
devem ser desalocados aqui
Servlets
• Os pacotes de servlet definem duas classes
ABSTRACT que implementam a interface
SERVLET: GENERICSERVLET e
HTTPSERVLET
• Essas classes fornecem implementações
padrão de alguns métodos SERVLET
• A maioria dos servlets estende
GENERCSERVLET ou HTTPSERVLET
Servlets
• A maioria dos servlets sobrescreve alguns
ou todos os métodos de GENERICSERVLET
e HTTPSERVLET
• GENERICSERVLET é um servlet
independente de protocolo
• HTTPSERVLET utiliza o protocolo HTTP para
trocar as informações entre o servidor e o
cliente
Servlets
• O método chave em casa servlet é o SERVICE,
que aceita um objeto SERVLETRESPONSE e
SERVLET REQUEST
• Esses objetos fornecem acesso a fluxos de
entrada e saída que permitem aos servlets ler
dados do cliente e enviar dados ao cliente
• Esses fluxos podem ser baseados em bytes ou
em caracteres
MÉTODOS DA CLASSE HTTPSERVLET
MÉTODO DESCRIÇÃO
DODELTE Chamado em resposta a uma solicitação de HTTP DELETE.
Utilizada para excluir um arquivo de um servidor. Isso talvez
não esteja disponível em alguns servidores por causa dos
riscos inerentes de sergurança.
DOHEAD Chamado em resposta a uma solicitação de HTTP HEAD.
Utilizada quando o cliente quer somente os cabeçalhos da
resposta, como o tipo do seu conteúdo e o comprimento do
conteúdo.
DOOPTIONS Chamado em resposta a uma solicitação de HTTP OPTIONS.
Isso retorna as informações ao cliente indicando as opções de
HTTP suportadas pelo servidor, como a versão do HTTP e os
métodos de solicitação que o servidor suporta.
MÉTODOS DA CLASSE HTTPSERVLET
MÉTODO DESCRIÇÃO
DOPUT Chamado em resposta a uma solicitação HTTP PUT.
Essa solicitação é normalmente utilizada para
armazenar um arquivo no servidor. Isso talvez não
esteja disponível em alguns servidores por causa dos
riscos inerentes de segurança.
DOTRACE Chamado em resposta a uma solicitação HTTP
TRACE. Essa solicitação é normalmente utilizada
para depuração. A implementação desse método
retorna automaticamente um documento de HTML
para o cliente contendo as informações de
cabeçalho da solicitação
Métodos HTTPSERVLETREQUEST
MÉTODO DESCRIÇÃO
STRING
GETPARAMETER(
STRING NAME )
Obtém o valor de um parâmetro enviado ao
servlet como parte de uma solicitação get ou
post. O argumento name representa o nome do
parâmetro
ENUMERATION
GETPARAMENTERNA
MES()
Retorna os nomes de todos os parâmetros
enviados para o servlet como parte de uma
solicitação post
STRING[]
GETPARAMETERVALU
ES( STRING NAME)
Para um parâmetro com múltiplos valores, este
método retorna um array de strings contendo os
valores para um parâmetro especificado de
servlet
Métodos HTTPSERVLETREQUEST
MÉTODO DESCRIÇÃO
COOKIE[]
GETCOOKIES()
Retorna um array de objetos COOKIE armazenados no
cliente pelo servidor. Objetos COOKIE podem ser
utilizados para identificar unicamente os clientes para o
servlet
HTTPSESSION
GETSESSION( BOOLEAN
CREATE )
Retorna um objeto HTTPSESSION associado com a atual
sessão de navegação do cliente. Este método pode
criar um objeto HTTPSESSION( ARGUMENTO TRUE ) se
ainda não existir um para o cliente. Objetos
HTTPSESSION e COOKIE são utilizados de maneira
semelhante para clientes unicamente identificados
Métodos HTTPSERVLETREQUEST
MÉTODO DESCRIÇÃO
STRING
GETLOCALADDR()
Obtém o endereço IP em que a solicitação foi recebida
INT GETLOCALPORT() Obtém o número de porta do IP em que a solicitação
foi recebida
STRING
GETLOCALNAME()
Obtém o nome de host em que a solicitação foi
recebida
Métodos HTTPSERVLETRESPONSE
MÉTODO DESCRIÇÃO
VOID ADDCOOKIE(
COOKIE COOKIE)
Utilizado para adicionar um COOKIE ao cabeçalho
da resposta para o cliente. A idade máxima do
COOKIE e se COOKIES estão ativados no cliente
determina se COOKIES são armazenados no
cliente.
SERVLETOUTPUTSTREAM
GETOUTPUTSTREAM()
Obtém um fluxo de saída baseado em bytes para
enviar dados binários ao cliente.
PRINTWRITER
GETWRITER()
Obtém um fluxo de saída baseado em caracteres
para enviar dados de texto ao cliente
Métodos HTTPSERVLETRESPONSE
MÉTODO DESCRIÇÃO
VOID
SETCONTENTTYPE(
STRING TYPE )
Especifica o tipo de conteúdo da resposta para o
navegador. O tipo de conteúdo ajuda o navegador a
determinar como exibir os dados. O tipo de
conteúdo também é conhecido como tipo de dados
MIME.
STRING
GETCONTENTTYPE()
Obtém o tipo de conteúdo da resposta

Contenu connexe

Similaire à Servlets

Curso de WebServlets (Java EE 7)
Curso de WebServlets (Java EE 7)Curso de WebServlets (Java EE 7)
Curso de WebServlets (Java EE 7)Helder da Rocha
 
Trabalho ProgramaçãO Comercial Ii
Trabalho ProgramaçãO Comercial IiTrabalho ProgramaçãO Comercial Ii
Trabalho ProgramaçãO Comercial IiMateus Ramos Pereira
 
Servlet jsp tomcat 8
Servlet jsp tomcat 8Servlet jsp tomcat 8
Servlet jsp tomcat 8maxrosan
 
Java Web - MVC básico com JSP e Servlets
Java Web - MVC básico com JSP e ServletsJava Web - MVC básico com JSP e Servlets
Java Web - MVC básico com JSP e ServletsEduardo Mendes
 
Engenharia da Computação: Resumo servlet + jsp br galo
Engenharia da Computação: Resumo servlet + jsp br galoEngenharia da Computação: Resumo servlet + jsp br galo
Engenharia da Computação: Resumo servlet + jsp br galoGuilhermePetrosky
 
Introdução à Servlets e JSP
Introdução à Servlets e JSPIntrodução à Servlets e JSP
Introdução à Servlets e JSPledsifes
 
ASP.NET MVC - Alexandre Tarifa
ASP.NET MVC - Alexandre TarifaASP.NET MVC - Alexandre Tarifa
ASP.NET MVC - Alexandre Tarifaguestea329c
 
Transformando eficientemente resultados de uma consulta jdbc para json
Transformando eficientemente resultados de uma consulta jdbc para jsonTransformando eficientemente resultados de uma consulta jdbc para json
Transformando eficientemente resultados de uma consulta jdbc para jsonJeison Barros
 
Curso de Ruby on Rails - Aula 01
Curso de Ruby on Rails - Aula 01Curso de Ruby on Rails - Aula 01
Curso de Ruby on Rails - Aula 01Maurício Linhares
 
Desenvolvimento de sistemas web com php Frameworks - Aula 1
Desenvolvimento de sistemas web com php Frameworks - Aula 1Desenvolvimento de sistemas web com php Frameworks - Aula 1
Desenvolvimento de sistemas web com php Frameworks - Aula 1Thyago Maia
 

Similaire à Servlets (20)

Aplicações web parte 2
Aplicações web parte 2Aplicações web parte 2
Aplicações web parte 2
 
Curso de WebServlets (Java EE 7)
Curso de WebServlets (Java EE 7)Curso de WebServlets (Java EE 7)
Curso de WebServlets (Java EE 7)
 
Servlets e jsp
Servlets e jspServlets e jsp
Servlets e jsp
 
Trabalho ProgramaçãO Comercial Ii
Trabalho ProgramaçãO Comercial IiTrabalho ProgramaçãO Comercial Ii
Trabalho ProgramaçãO Comercial Ii
 
Servlet jsp tomcat 8
Servlet jsp tomcat 8Servlet jsp tomcat 8
Servlet jsp tomcat 8
 
Te aula2
Te aula2Te aula2
Te aula2
 
Servlets e JSP
Servlets e JSPServlets e JSP
Servlets e JSP
 
Te servelts
Te serveltsTe servelts
Te servelts
 
Java Web - MVC básico com JSP e Servlets
Java Web - MVC básico com JSP e ServletsJava Web - MVC básico com JSP e Servlets
Java Web - MVC básico com JSP e Servlets
 
Servlets 2.5
Servlets 2.5Servlets 2.5
Servlets 2.5
 
365on Lab - Asp.Net MVC
365on Lab - Asp.Net MVC365on Lab - Asp.Net MVC
365on Lab - Asp.Net MVC
 
Engenharia da Computação: Resumo servlet + jsp br galo
Engenharia da Computação: Resumo servlet + jsp br galoEngenharia da Computação: Resumo servlet + jsp br galo
Engenharia da Computação: Resumo servlet + jsp br galo
 
Introdução à Servlets e JSP
Introdução à Servlets e JSPIntrodução à Servlets e JSP
Introdução à Servlets e JSP
 
ASP.NET MVC - Alexandre Tarifa
ASP.NET MVC - Alexandre TarifaASP.NET MVC - Alexandre Tarifa
ASP.NET MVC - Alexandre Tarifa
 
ASP.NET MVC
ASP.NET MVCASP.NET MVC
ASP.NET MVC
 
Web services
Web servicesWeb services
Web services
 
Transformando eficientemente resultados de uma consulta jdbc para json
Transformando eficientemente resultados de uma consulta jdbc para jsonTransformando eficientemente resultados de uma consulta jdbc para json
Transformando eficientemente resultados de uma consulta jdbc para json
 
Curso de Ruby on Rails - Aula 01
Curso de Ruby on Rails - Aula 01Curso de Ruby on Rails - Aula 01
Curso de Ruby on Rails - Aula 01
 
Desenvolvimento de sistemas web com php Frameworks - Aula 1
Desenvolvimento de sistemas web com php Frameworks - Aula 1Desenvolvimento de sistemas web com php Frameworks - Aula 1
Desenvolvimento de sistemas web com php Frameworks - Aula 1
 
ApresentaçãO Mvc
ApresentaçãO MvcApresentaçãO Mvc
ApresentaçãO Mvc
 

Plus de Elaine Cecília Gatto

A influência da Tecnologia em cada faixa etaria
A influência da Tecnologia em cada faixa etariaA influência da Tecnologia em cada faixa etaria
A influência da Tecnologia em cada faixa etariaElaine Cecília Gatto
 
Inteligência Artificial Aplicada à Medicina
Inteligência Artificial Aplicada à MedicinaInteligência Artificial Aplicada à Medicina
Inteligência Artificial Aplicada à MedicinaElaine Cecília Gatto
 
Além do Aprendizado Local e Global: Particionando o espaço de classes em prob...
Além do Aprendizado Local e Global: Particionando o espaço de classes em prob...Além do Aprendizado Local e Global: Particionando o espaço de classes em prob...
Além do Aprendizado Local e Global: Particionando o espaço de classes em prob...Elaine Cecília Gatto
 
Apresentação da minha tese de doutorado no EPPC
Apresentação da minha tese de doutorado no EPPCApresentação da minha tese de doutorado no EPPC
Apresentação da minha tese de doutorado no EPPCElaine Cecília Gatto
 
Como a pesquisa científica impacta o mundo real.pptx
Como a pesquisa científica impacta o mundo real.pptxComo a pesquisa científica impacta o mundo real.pptx
Como a pesquisa científica impacta o mundo real.pptxElaine Cecília Gatto
 
Explorando correlações entre rótulos para o particionamento do espaço de rótu...
Explorando correlações entre rótulos para o particionamento do espaço de rótu...Explorando correlações entre rótulos para o particionamento do espaço de rótu...
Explorando correlações entre rótulos para o particionamento do espaço de rótu...Elaine Cecília Gatto
 
Community Detection for Multi-Label Classification - Seminários UFSCar
Community Detection for Multi-Label Classification - Seminários UFSCarCommunity Detection for Multi-Label Classification - Seminários UFSCar
Community Detection for Multi-Label Classification - Seminários UFSCarElaine Cecília Gatto
 
Classificação Multirrótulo: Aprendizado de Correlações
Classificação Multirrótulo: Aprendizado de CorrelaçõesClassificação Multirrótulo: Aprendizado de Correlações
Classificação Multirrótulo: Aprendizado de CorrelaçõesElaine Cecília Gatto
 
EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...
EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...
EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...Elaine Cecília Gatto
 
Community Detection Method for Multi-Label Classification
Community Detection Method for Multi-Label ClassificationCommunity Detection Method for Multi-Label Classification
Community Detection Method for Multi-Label ClassificationElaine Cecília Gatto
 
Mulheres na Campus Party assumir o feminismo ou não – Blogueiras Feministas.pdf
Mulheres na Campus Party assumir o feminismo ou não – Blogueiras Feministas.pdfMulheres na Campus Party assumir o feminismo ou não – Blogueiras Feministas.pdf
Mulheres na Campus Party assumir o feminismo ou não – Blogueiras Feministas.pdfElaine Cecília Gatto
 
Explorando Correlações entre Rótulos usando Métodos de Detecção de Comu...
Explorando Correlações entre Rótulos usando Métodos de Detecção de Comu...Explorando Correlações entre Rótulos usando Métodos de Detecção de Comu...
Explorando Correlações entre Rótulos usando Métodos de Detecção de Comu...Elaine Cecília Gatto
 
EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...
EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...
EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...Elaine Cecília Gatto
 
Pipeline desdobramento escalonamento
Pipeline desdobramento escalonamentoPipeline desdobramento escalonamento
Pipeline desdobramento escalonamentoElaine Cecília Gatto
 
Resumo das Instruções de Desvio Incondicionais MIPS 32 bits
Resumo das Instruções de Desvio Incondicionais MIPS 32 bitsResumo das Instruções de Desvio Incondicionais MIPS 32 bits
Resumo das Instruções de Desvio Incondicionais MIPS 32 bitsElaine Cecília Gatto
 
Como descobrir e classificar coisas usando machine learning sem compilcação
Como descobrir e classificar coisas usando machine learning sem compilcaçãoComo descobrir e classificar coisas usando machine learning sem compilcação
Como descobrir e classificar coisas usando machine learning sem compilcaçãoElaine Cecília Gatto
 

Plus de Elaine Cecília Gatto (20)

A influência da Tecnologia em cada faixa etaria
A influência da Tecnologia em cada faixa etariaA influência da Tecnologia em cada faixa etaria
A influência da Tecnologia em cada faixa etaria
 
Inteligência Artificial Aplicada à Medicina
Inteligência Artificial Aplicada à MedicinaInteligência Artificial Aplicada à Medicina
Inteligência Artificial Aplicada à Medicina
 
Além do Aprendizado Local e Global: Particionando o espaço de classes em prob...
Além do Aprendizado Local e Global: Particionando o espaço de classes em prob...Além do Aprendizado Local e Global: Particionando o espaço de classes em prob...
Além do Aprendizado Local e Global: Particionando o espaço de classes em prob...
 
Apresentação da minha tese de doutorado no EPPC
Apresentação da minha tese de doutorado no EPPCApresentação da minha tese de doutorado no EPPC
Apresentação da minha tese de doutorado no EPPC
 
entrevista r7.pdf
entrevista r7.pdfentrevista r7.pdf
entrevista r7.pdf
 
Como a pesquisa científica impacta o mundo real.pptx
Como a pesquisa científica impacta o mundo real.pptxComo a pesquisa científica impacta o mundo real.pptx
Como a pesquisa científica impacta o mundo real.pptx
 
Empoderamento Feminino
Empoderamento FemininoEmpoderamento Feminino
Empoderamento Feminino
 
Explorando correlações entre rótulos para o particionamento do espaço de rótu...
Explorando correlações entre rótulos para o particionamento do espaço de rótu...Explorando correlações entre rótulos para o particionamento do espaço de rótu...
Explorando correlações entre rótulos para o particionamento do espaço de rótu...
 
Community Detection for Multi-Label Classification - Seminários UFSCar
Community Detection for Multi-Label Classification - Seminários UFSCarCommunity Detection for Multi-Label Classification - Seminários UFSCar
Community Detection for Multi-Label Classification - Seminários UFSCar
 
Classificação Multirrótulo: Aprendizado de Correlações
Classificação Multirrótulo: Aprendizado de CorrelaçõesClassificação Multirrótulo: Aprendizado de Correlações
Classificação Multirrótulo: Aprendizado de Correlações
 
EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...
EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...
EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...
 
Community Detection Method for Multi-Label Classification
Community Detection Method for Multi-Label ClassificationCommunity Detection Method for Multi-Label Classification
Community Detection Method for Multi-Label Classification
 
Mulheres na Campus Party assumir o feminismo ou não – Blogueiras Feministas.pdf
Mulheres na Campus Party assumir o feminismo ou não – Blogueiras Feministas.pdfMulheres na Campus Party assumir o feminismo ou não – Blogueiras Feministas.pdf
Mulheres na Campus Party assumir o feminismo ou não – Blogueiras Feministas.pdf
 
Curtinhas de sábado.pdf
Curtinhas de sábado.pdfCurtinhas de sábado.pdf
Curtinhas de sábado.pdf
 
Explorando Correlações entre Rótulos usando Métodos de Detecção de Comu...
Explorando Correlações entre Rótulos usando Métodos de Detecção de Comu...Explorando Correlações entre Rótulos usando Métodos de Detecção de Comu...
Explorando Correlações entre Rótulos usando Métodos de Detecção de Comu...
 
EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...
EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...
EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...
 
Pipeline desdobramento escalonamento
Pipeline desdobramento escalonamentoPipeline desdobramento escalonamento
Pipeline desdobramento escalonamento
 
Cheat sheet Mips 32 bits
Cheat sheet Mips 32 bitsCheat sheet Mips 32 bits
Cheat sheet Mips 32 bits
 
Resumo das Instruções de Desvio Incondicionais MIPS 32 bits
Resumo das Instruções de Desvio Incondicionais MIPS 32 bitsResumo das Instruções de Desvio Incondicionais MIPS 32 bits
Resumo das Instruções de Desvio Incondicionais MIPS 32 bits
 
Como descobrir e classificar coisas usando machine learning sem compilcação
Como descobrir e classificar coisas usando machine learning sem compilcaçãoComo descobrir e classificar coisas usando machine learning sem compilcação
Como descobrir e classificar coisas usando machine learning sem compilcação
 

Dernier

apostila filosofia 1 ano 1s (1).pdf 1 ANO DO ENSINO MEDIO . CONCEITOSE CARAC...
apostila filosofia 1 ano  1s (1).pdf 1 ANO DO ENSINO MEDIO . CONCEITOSE CARAC...apostila filosofia 1 ano  1s (1).pdf 1 ANO DO ENSINO MEDIO . CONCEITOSE CARAC...
apostila filosofia 1 ano 1s (1).pdf 1 ANO DO ENSINO MEDIO . CONCEITOSE CARAC...SileideDaSilvaNascim
 
Tema de redação - As dificuldades para barrar o casamento infantil no Brasil ...
Tema de redação - As dificuldades para barrar o casamento infantil no Brasil ...Tema de redação - As dificuldades para barrar o casamento infantil no Brasil ...
Tema de redação - As dificuldades para barrar o casamento infantil no Brasil ...AnaAugustaLagesZuqui
 
Sistema articular aula 4 (1).pdf articulações e junturas
Sistema articular aula 4 (1).pdf articulações e junturasSistema articular aula 4 (1).pdf articulações e junturas
Sistema articular aula 4 (1).pdf articulações e junturasrfmbrandao
 
Aula 25 - A america espanhola - colonização, exploraçãp e trabalho (mita e en...
Aula 25 - A america espanhola - colonização, exploraçãp e trabalho (mita e en...Aula 25 - A america espanhola - colonização, exploraçãp e trabalho (mita e en...
Aula 25 - A america espanhola - colonização, exploraçãp e trabalho (mita e en...MariaCristinaSouzaLe1
 
Caderno de exercícios Revisão para o ENEM (1).pdf
Caderno de exercícios Revisão para o ENEM (1).pdfCaderno de exercícios Revisão para o ENEM (1).pdf
Caderno de exercícios Revisão para o ENEM (1).pdfJuliana Barbosa
 
ATIVIDADE 2 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024
ATIVIDADE 2 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024ATIVIDADE 2 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024
ATIVIDADE 2 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024azulassessoria9
 
Considerando as pesquisas de Gallahue, Ozmun e Goodway (2013) os bebês até an...
Considerando as pesquisas de Gallahue, Ozmun e Goodway (2013) os bebês até an...Considerando as pesquisas de Gallahue, Ozmun e Goodway (2013) os bebês até an...
Considerando as pesquisas de Gallahue, Ozmun e Goodway (2013) os bebês até an...azulassessoria9
 
Questões de Língua Portuguesa - gincana da LP
Questões de Língua Portuguesa - gincana da LPQuestões de Língua Portuguesa - gincana da LP
Questões de Língua Portuguesa - gincana da LPEli Gonçalves
 
Missa catequese para o dia da mãe 2025.pdf
Missa catequese para o dia da mãe 2025.pdfMissa catequese para o dia da mãe 2025.pdf
Missa catequese para o dia da mãe 2025.pdfFbioFerreira207918
 
ATIVIDADE 2 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024
ATIVIDADE 2 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024ATIVIDADE 2 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024
ATIVIDADE 2 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024azulassessoria9
 
tensoes-etnicas-na-europa-template-1.pptx
tensoes-etnicas-na-europa-template-1.pptxtensoes-etnicas-na-europa-template-1.pptx
tensoes-etnicas-na-europa-template-1.pptxgia0123
 
aprendizagem significatica, teórico David Ausubel
aprendizagem significatica, teórico David Ausubelaprendizagem significatica, teórico David Ausubel
aprendizagem significatica, teórico David Ausubeladrianaguedesbatista
 
GUIA DE APRENDIZAGEM 2024 9º A - História 1 BI.doc
GUIA DE APRENDIZAGEM 2024 9º A - História 1 BI.docGUIA DE APRENDIZAGEM 2024 9º A - História 1 BI.doc
GUIA DE APRENDIZAGEM 2024 9º A - História 1 BI.docPauloHenriqueGarciaM
 
Educação Financeira - Cartão de crédito665933.pptx
Educação Financeira - Cartão de crédito665933.pptxEducação Financeira - Cartão de crédito665933.pptx
Educação Financeira - Cartão de crédito665933.pptxMarcosLemes28
 
Quiz | Dia da Europa 2024 (comemoração)
Quiz | Dia da Europa 2024  (comemoração)Quiz | Dia da Europa 2024  (comemoração)
Quiz | Dia da Europa 2024 (comemoração)Centro Jacques Delors
 
ATIVIDADE 3 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024
ATIVIDADE 3 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024ATIVIDADE 3 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024
ATIVIDADE 3 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024azulassessoria9
 
6ano variação linguística ensino fundamental.pptx
6ano variação linguística ensino fundamental.pptx6ano variação linguística ensino fundamental.pptx
6ano variação linguística ensino fundamental.pptxJssicaCassiano2
 
Slide - SAEB. língua portuguesa e matemática
Slide - SAEB. língua portuguesa e matemáticaSlide - SAEB. língua portuguesa e matemática
Slide - SAEB. língua portuguesa e matemáticash5kpmr7w7
 
Introdução às Funções 9º ano: Diagrama de flexas, Valor numérico de uma funçã...
Introdução às Funções 9º ano: Diagrama de flexas, Valor numérico de uma funçã...Introdução às Funções 9º ano: Diagrama de flexas, Valor numérico de uma funçã...
Introdução às Funções 9º ano: Diagrama de flexas, Valor numérico de uma funçã...marcelafinkler
 
O desenvolvimento é um conceito mais amplo, pode ter um contexto biológico ou...
O desenvolvimento é um conceito mais amplo, pode ter um contexto biológico ou...O desenvolvimento é um conceito mais amplo, pode ter um contexto biológico ou...
O desenvolvimento é um conceito mais amplo, pode ter um contexto biológico ou...azulassessoria9
 

Dernier (20)

apostila filosofia 1 ano 1s (1).pdf 1 ANO DO ENSINO MEDIO . CONCEITOSE CARAC...
apostila filosofia 1 ano  1s (1).pdf 1 ANO DO ENSINO MEDIO . CONCEITOSE CARAC...apostila filosofia 1 ano  1s (1).pdf 1 ANO DO ENSINO MEDIO . CONCEITOSE CARAC...
apostila filosofia 1 ano 1s (1).pdf 1 ANO DO ENSINO MEDIO . CONCEITOSE CARAC...
 
Tema de redação - As dificuldades para barrar o casamento infantil no Brasil ...
Tema de redação - As dificuldades para barrar o casamento infantil no Brasil ...Tema de redação - As dificuldades para barrar o casamento infantil no Brasil ...
Tema de redação - As dificuldades para barrar o casamento infantil no Brasil ...
 
Sistema articular aula 4 (1).pdf articulações e junturas
Sistema articular aula 4 (1).pdf articulações e junturasSistema articular aula 4 (1).pdf articulações e junturas
Sistema articular aula 4 (1).pdf articulações e junturas
 
Aula 25 - A america espanhola - colonização, exploraçãp e trabalho (mita e en...
Aula 25 - A america espanhola - colonização, exploraçãp e trabalho (mita e en...Aula 25 - A america espanhola - colonização, exploraçãp e trabalho (mita e en...
Aula 25 - A america espanhola - colonização, exploraçãp e trabalho (mita e en...
 
Caderno de exercícios Revisão para o ENEM (1).pdf
Caderno de exercícios Revisão para o ENEM (1).pdfCaderno de exercícios Revisão para o ENEM (1).pdf
Caderno de exercícios Revisão para o ENEM (1).pdf
 
ATIVIDADE 2 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024
ATIVIDADE 2 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024ATIVIDADE 2 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024
ATIVIDADE 2 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024
 
Considerando as pesquisas de Gallahue, Ozmun e Goodway (2013) os bebês até an...
Considerando as pesquisas de Gallahue, Ozmun e Goodway (2013) os bebês até an...Considerando as pesquisas de Gallahue, Ozmun e Goodway (2013) os bebês até an...
Considerando as pesquisas de Gallahue, Ozmun e Goodway (2013) os bebês até an...
 
Questões de Língua Portuguesa - gincana da LP
Questões de Língua Portuguesa - gincana da LPQuestões de Língua Portuguesa - gincana da LP
Questões de Língua Portuguesa - gincana da LP
 
Missa catequese para o dia da mãe 2025.pdf
Missa catequese para o dia da mãe 2025.pdfMissa catequese para o dia da mãe 2025.pdf
Missa catequese para o dia da mãe 2025.pdf
 
ATIVIDADE 2 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024
ATIVIDADE 2 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024ATIVIDADE 2 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024
ATIVIDADE 2 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024
 
tensoes-etnicas-na-europa-template-1.pptx
tensoes-etnicas-na-europa-template-1.pptxtensoes-etnicas-na-europa-template-1.pptx
tensoes-etnicas-na-europa-template-1.pptx
 
aprendizagem significatica, teórico David Ausubel
aprendizagem significatica, teórico David Ausubelaprendizagem significatica, teórico David Ausubel
aprendizagem significatica, teórico David Ausubel
 
GUIA DE APRENDIZAGEM 2024 9º A - História 1 BI.doc
GUIA DE APRENDIZAGEM 2024 9º A - História 1 BI.docGUIA DE APRENDIZAGEM 2024 9º A - História 1 BI.doc
GUIA DE APRENDIZAGEM 2024 9º A - História 1 BI.doc
 
Educação Financeira - Cartão de crédito665933.pptx
Educação Financeira - Cartão de crédito665933.pptxEducação Financeira - Cartão de crédito665933.pptx
Educação Financeira - Cartão de crédito665933.pptx
 
Quiz | Dia da Europa 2024 (comemoração)
Quiz | Dia da Europa 2024  (comemoração)Quiz | Dia da Europa 2024  (comemoração)
Quiz | Dia da Europa 2024 (comemoração)
 
ATIVIDADE 3 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024
ATIVIDADE 3 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024ATIVIDADE 3 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024
ATIVIDADE 3 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024
 
6ano variação linguística ensino fundamental.pptx
6ano variação linguística ensino fundamental.pptx6ano variação linguística ensino fundamental.pptx
6ano variação linguística ensino fundamental.pptx
 
Slide - SAEB. língua portuguesa e matemática
Slide - SAEB. língua portuguesa e matemáticaSlide - SAEB. língua portuguesa e matemática
Slide - SAEB. língua portuguesa e matemática
 
Introdução às Funções 9º ano: Diagrama de flexas, Valor numérico de uma funçã...
Introdução às Funções 9º ano: Diagrama de flexas, Valor numérico de uma funçã...Introdução às Funções 9º ano: Diagrama de flexas, Valor numérico de uma funçã...
Introdução às Funções 9º ano: Diagrama de flexas, Valor numérico de uma funçã...
 
O desenvolvimento é um conceito mais amplo, pode ter um contexto biológico ou...
O desenvolvimento é um conceito mais amplo, pode ter um contexto biológico ou...O desenvolvimento é um conceito mais amplo, pode ter um contexto biológico ou...
O desenvolvimento é um conceito mais amplo, pode ter um contexto biológico ou...
 

Servlets

  • 2. Servlets • Um servlet estende a funcionalidade de um servidor, como um servidor Web que serve páginas da Web para um navegador do usuário com o protocolo HTTP. • Os pacotes javax.servlet, javax.jsp e javax.servlet.http fornecem as classes e interfaces para definir os servlets. • Os pacotes javax.servlet.jsp, javax.servlet.jsp.tagex fornecem classes e interfaces que estendem as capcidades dos servlet para Java Server Pages (JSP)
  • 3. Servlets • JSP permite que desenvolvedores de páginas web criem páginas que encapsulam a funcionalidade Java e até mesmo escrevam scriptlets do código Java real diretamente na página. • Os servlets são eficientes para desenvolver soluções baseadas na Web que ajudam a fornecer acesso seguro a um site, interagir com bancos de dados em favor de um cliente, gerar dinamicamente documentos personalizados de XHTML a ser exibidos por navegadores e manter informações de sessão exclusivas de cada cliente.
  • 4. Clientes Magros • São aplicativos que fornecem apresentação, mas não processam dados, reqeurendo assim menos recursos de computação • O servidor é responsável pelo acesso ao banco de dados. • Os clientes conectam-se ao servidor utilizando protocolos-padrão disponíveis na maioria das plataformas clientes • O código da lógica de apresentação para gerar conteúdo dinâmico pode ser escrito uma vez e residir no servidor para acesso pelos clientes para permitir que os programadores criem clientes magros eficientes.
  • 5. Tomcat • JCP – Java Community Process: comunidade java responsável pelo desenvolvimento das especificações (APIs) Java. • A implementação de referência para JSP e Servlet é feita pela Apache Software Foundation como parte do Jakarta Project. • Um dos suprojetos do Jakarta é o TOMCAT que é a implementação oficial de referência dos padrões JSPs e Servlets
  • 6. Ciclo de Vida de um Servlet • Um ciclo de vida de um servlet inicia quando o contêiner de servlets o carrega na memória. • Antes que o servlet possa tratar essa solicitação, o contêiner invoca o método INIT do servlet. • Depois que INIT completa a execução, o servlet pode responder à sua primeira solicitação
  • 7. Ciclo de Vida de um Servlet • Todas as solicitações são tratadas por um método SERVICE do servlet, que recebe a solicitação, processa-a e envia uma resposta ao cliente • Durante o ciclo de vida de um servlet, o método SERVICE é chamado uma vez por solicitação
  • 8. Ciclo de Vida de um Servlet • Cada nova solicitação é em geral tratada em uma nova thread separada de execução e gerenciada pelo contêiner de servlets na qual o método SERVICE executa. • Quando o contêiner de servlets termina o servlet, o método DESTROY do servlet é chamado para liberar os recursos do servlet.
  • 9. Ciclo de Vida de um Servlet MÉTODO DESCRIÇÃO VOID INIT (SERVLETCONFIG CONFIG) O contêiner de servlets chama esse método uma vez durante o ciclo de execução de um servlet para inicializar o servlet. O argumento SERVLETCONFIG é fornecido pelo contêiner de servlets que executa o servlet SERVLETCONFIG GETSERVLETCONFIG() Este método retorna uma referência para um objeto que implementa a interface SERVLETCONFIG. Esse objeto fornece acesso às informações de configuração do servlet, como seus parâmetros de inicialização e SERVLECONTEXT, que fornece ao servlet acesso ao seu ambiente
  • 10. Ciclo de Vida de um Servlet MÉTODO DESCRIÇÃO STRING GETSERVLETINFO() Este método é definido por um programador de servlet para retornar uma string que contém informações do servlet como o autor e a versão do servlet VOID SERVICE (SERVLETREQUEST REQUEST, SERVLETRESPONSE RESPONSE) O contêiner de servlets chama este método para responder a uma solicitação do cliente para o servlet VOID DESTROY() Este método de limpeza é chamado quando um servlet é terminado pelo seus contêiner de servlets. Os recursos utilizados pelo servlet, como abrir arquivos ou abrir conexões ao banco de dados, devem ser desalocados aqui
  • 11. Servlets • Os pacotes de servlet definem duas classes ABSTRACT que implementam a interface SERVLET: GENERICSERVLET e HTTPSERVLET • Essas classes fornecem implementações padrão de alguns métodos SERVLET • A maioria dos servlets estende GENERCSERVLET ou HTTPSERVLET
  • 12. Servlets • A maioria dos servlets sobrescreve alguns ou todos os métodos de GENERICSERVLET e HTTPSERVLET • GENERICSERVLET é um servlet independente de protocolo • HTTPSERVLET utiliza o protocolo HTTP para trocar as informações entre o servidor e o cliente
  • 13. Servlets • O método chave em casa servlet é o SERVICE, que aceita um objeto SERVLETRESPONSE e SERVLET REQUEST • Esses objetos fornecem acesso a fluxos de entrada e saída que permitem aos servlets ler dados do cliente e enviar dados ao cliente • Esses fluxos podem ser baseados em bytes ou em caracteres
  • 14. MÉTODOS DA CLASSE HTTPSERVLET MÉTODO DESCRIÇÃO DODELTE Chamado em resposta a uma solicitação de HTTP DELETE. Utilizada para excluir um arquivo de um servidor. Isso talvez não esteja disponível em alguns servidores por causa dos riscos inerentes de sergurança. DOHEAD Chamado em resposta a uma solicitação de HTTP HEAD. Utilizada quando o cliente quer somente os cabeçalhos da resposta, como o tipo do seu conteúdo e o comprimento do conteúdo. DOOPTIONS Chamado em resposta a uma solicitação de HTTP OPTIONS. Isso retorna as informações ao cliente indicando as opções de HTTP suportadas pelo servidor, como a versão do HTTP e os métodos de solicitação que o servidor suporta.
  • 15. MÉTODOS DA CLASSE HTTPSERVLET MÉTODO DESCRIÇÃO DOPUT Chamado em resposta a uma solicitação HTTP PUT. Essa solicitação é normalmente utilizada para armazenar um arquivo no servidor. Isso talvez não esteja disponível em alguns servidores por causa dos riscos inerentes de segurança. DOTRACE Chamado em resposta a uma solicitação HTTP TRACE. Essa solicitação é normalmente utilizada para depuração. A implementação desse método retorna automaticamente um documento de HTML para o cliente contendo as informações de cabeçalho da solicitação
  • 16. Métodos HTTPSERVLETREQUEST MÉTODO DESCRIÇÃO STRING GETPARAMETER( STRING NAME ) Obtém o valor de um parâmetro enviado ao servlet como parte de uma solicitação get ou post. O argumento name representa o nome do parâmetro ENUMERATION GETPARAMENTERNA MES() Retorna os nomes de todos os parâmetros enviados para o servlet como parte de uma solicitação post STRING[] GETPARAMETERVALU ES( STRING NAME) Para um parâmetro com múltiplos valores, este método retorna um array de strings contendo os valores para um parâmetro especificado de servlet
  • 17. Métodos HTTPSERVLETREQUEST MÉTODO DESCRIÇÃO COOKIE[] GETCOOKIES() Retorna um array de objetos COOKIE armazenados no cliente pelo servidor. Objetos COOKIE podem ser utilizados para identificar unicamente os clientes para o servlet HTTPSESSION GETSESSION( BOOLEAN CREATE ) Retorna um objeto HTTPSESSION associado com a atual sessão de navegação do cliente. Este método pode criar um objeto HTTPSESSION( ARGUMENTO TRUE ) se ainda não existir um para o cliente. Objetos HTTPSESSION e COOKIE são utilizados de maneira semelhante para clientes unicamente identificados
  • 18. Métodos HTTPSERVLETREQUEST MÉTODO DESCRIÇÃO STRING GETLOCALADDR() Obtém o endereço IP em que a solicitação foi recebida INT GETLOCALPORT() Obtém o número de porta do IP em que a solicitação foi recebida STRING GETLOCALNAME() Obtém o nome de host em que a solicitação foi recebida
  • 19. Métodos HTTPSERVLETRESPONSE MÉTODO DESCRIÇÃO VOID ADDCOOKIE( COOKIE COOKIE) Utilizado para adicionar um COOKIE ao cabeçalho da resposta para o cliente. A idade máxima do COOKIE e se COOKIES estão ativados no cliente determina se COOKIES são armazenados no cliente. SERVLETOUTPUTSTREAM GETOUTPUTSTREAM() Obtém um fluxo de saída baseado em bytes para enviar dados binários ao cliente. PRINTWRITER GETWRITER() Obtém um fluxo de saída baseado em caracteres para enviar dados de texto ao cliente
  • 20. Métodos HTTPSERVLETRESPONSE MÉTODO DESCRIÇÃO VOID SETCONTENTTYPE( STRING TYPE ) Especifica o tipo de conteúdo da resposta para o navegador. O tipo de conteúdo ajuda o navegador a determinar como exibir os dados. O tipo de conteúdo também é conhecido como tipo de dados MIME. STRING GETCONTENTTYPE() Obtém o tipo de conteúdo da resposta