Академический Документы
Профессиональный Документы
Культура Документы
IntroduoaoJavaServerPagesJSP
Buscar
comentrios
favorito (12)
para impresso
anotar
17
Gostei(19)
(0)
ComaevoluodaInternet,surgiramnovasnecessidades.Negciospassarama
existirdeformaonline,meiosdecomunicao,fazemusoconstantedestapoderosa
ferramentaqueaInternet.Mascomoestatecnologiachegouaesteponto?
NoinicioaInterneteraesttica,afaltadeinteratividadeimperava,foiquandosurgiuo
http://www.devmedia.com.br/introducaoaojavaserverpagesjsp/25602
1/25
8/19/2015
IntroduoaoJavaServerPagesJSP
CGI,atecnologiaCGIcriavainteratividadeaoambiente,masnotornavasimpleso
seudesenvolvimento.EntreastecnologiasdeCGImaisutilizadas,destacaseoPERL,
linguagempoderosa,utilizadaathojeparaadministraodeservidores.Ogrande
problemadesedesenvolverumCGI,almdodesempenho,eraasuacomplexidade,a
soluoparasimplificarodesenvolvimentoWEBepassarparaumanovafase,
surgiramaslinguagensserversidescriptscomoASP,PHPeJSP.Estaslinguagens
tornaramodesenvolvimentowebmaisgil,simpleseprtico.Almdepossuirum
maiordesempenhodeaplicao,emummeioqueavelocidadeessencial,isto
garantiuosucessodasnovaslinguagensdescripts.
LOGIN
DEVMEDIA
EsteartigoapresentaosconceitosbsicosdeJSP,bemcomoautilizaoda
linguagemparaaprogramaowebdinmica,todoodesenvolvimentofeitoneste
artigofoitestadoutilizandooServidorTomcat.
Introduo ao JSP
JSPoacrnimoparaJavaServerPages,umalinguagemcriadapelaSUNgratuita,
JSPumalinguagemdescriptcomespecificaoabertaquetemcomoobjetivo
primrioageraodecontedodinmicoparapginasdaInternet.Podemosaoinvs
deutilizarHTMLparadesenvolverpginasWebestticasesemfuncionalidade,utilizar
oJSPparacriardinamismo.possvelescreverHTMLcomcdigosJSPembutidos.
ComooHTMLumalinguagemesttica,oJSPseroresponsvelporcriar
dinamismo.Porsergratuitaepossuirespecificaoabertapossuidiversosservidores
quesuportamalinguagem,entreelestemos:Tomcat,GlassFish,JBoos,entreoutros.
OJSPnecessitadeservidorparafuncionarporserumalinguagemServersidescript,
ousurionoconsegueveracodificaoJSP,poisestaconvertidadiretamentepelo
servidor,sendoapresentadoaousurioapenascodificaoHTML.
UmapaginaJSPpossuiextenso.jspeconsisteemumapginacomcodificao
http://www.devmedia.com.br/introducaoaojavaserverpagesjsp/25602
2/25
8/19/2015
IntroduoaoJavaServerPagesJSP
HTMLecomcodificaoJava,inseridaentreastags,denominadascriptletse
funcionandodaseguinteforma:oservidorrecebeumarequisioparaumapgina
JSP,interpretaestapginagerandoacodificaoHTMLeretornaaoclienteo
resultadodesuasolicitao.ApginaJSPquefoiinterpretadapeloservidorno
precisasercompiladacomoaconteceriacomumservletjavaporexemplo,estatarefa
realizadaemtemporealpeloservidor.necessrioapenasdesenvolveraspginas
JSPedisponibilizlasnoServletContainer(Tomcat,porexemplo).Otrabalhorestante
serrealizadopeloservidorquefazacompilaoemtempodeusotransformandoo
jspembytecode.
Assim,podesedefiniroJSPcomoumatecnologiaqueprovumamaneirasimplese
prticadedesenvolveraplicaesdinmicasbaseadasemweb,sendoindependente
dePlataformadeSistemaOperacional.
3/25
8/19/2015
IntroduoaoJavaServerPagesJSP
javascriptquepermitedesenvolverouampliaropoderaoladodocliente.
Server-side
Serverside,porsuavez,otermoquerepresentaoconjuntodetecnologiasemque
osprocessossointerpretados/processadosdiretamentenoservidor,retornandocomo
resultadoacodificaoclientside.Quandoumclienteweb(navegador)acessauma
pginaweb,umasolicitaoenviadaaoservidoratravsdoprotocolohttpparaqueo
servidorenviearesposta.OServidoralmderodarosaplicativos,oladoservidor
tambmumrepositriodepginasestticas,queseroenviadosaoclientequando
solicitado.SupondoquehajaumapginaJSP,estaserprocessadapeloservidore
encaminhadoumarespostaaocliente(Navegador).
Benefcios do JSP
OobjetivodalinguagemJSPnosodesenvolvimentodepginasdinmicaspara
Internet.ComelapossveldesenvolversistemasinteirosparaInternet.Almdisso,
existemdiversosbenefciosemseutilizaralinguagemJSP.
Custo
OJSPnotemcustodelicena.Istosignificaquepodeserutilizadoemqualquer
mquina,paraqualquernumerodeusuriossemviolarnenhumdireitoautoral.Claro
queistodependedoservidorescolhido,oTomcatumservidorlivre,licenciadosoba
licenadaApacheFoundation,dealtaqualidadeesemcustodelicenciamento.
4/25
8/19/2015
IntroduoaoJavaServerPagesJSP
OJSPsimplesdeseutilizar,podendogeraroHTMLouaindaestarembutidodentro
doHTML,comonoexemploaseguir:
Listagem1:ExemplodecdigoJSPembutidonoHTML
<html>
<head>
<title>PaginaJSPOlaMundo</title>
</head>
<body>
<h1>
<%
out.println("OlaMundo");
%>
</h1>
</body>
</html>
Tomcat
http://www.devmedia.com.br/introducaoaojavaserverpagesjsp/25602
5/25
8/19/2015
IntroduoaoJavaServerPagesJSP
OJSPporserumalinguagemServerSidecomovistoanteriormente,necessitadeum
servidorparaoseufuncionamento.
OApacheTomcatfoidesenvolvidopelaApacheSoftwareFoundation,oTomcatum
servletcontainerdecdigoaberto,ouseja,umaaplicaoqueinterpretaeprocessa
servlets(javaservlets)eJSP(JavaServerPages).Oservidorestadisponvel
livrementenaInternetsemanecessidadedepagamentodelicenciamentoeest
disponvelnoendereohttp://tomcat.apache.orgparadiversasplataformas,entreelas
oWindows,Linux,Solarisetc.Recomendaseodownloaddaverso7doservidor.A
instalaosimples,bastaseguiroseupassoapasso.Odesenvolvedordevefazera
instalaocompletadoservidorparaseusistemaoperacional.
ComoTomcatinstaladopodeseiniciarodesenvolvimentoJSP.Parainiciaro
desenvolvimentodevesecriarumdiretrioeasyjavaemC:\ProgramFiles
(x86)\ApacheSoftwareFoundation\Tomcat7.0\webapps(noWindows)e
/usr/java/apachetomcat7.0(noLinux).Nodiretrioeasyjavadevesecriaros
diretriossrc,web,WEBINFeWEBINF/lib.
src=diretrioondeficaarmazenadoocdigofontedosservlets
web=diretrioraizdaaplicaoweb
WEBINF=diretrioquearmazenaodescritordaaplicaoweb(web.xml),bem
comooutrosarquivosdeconfigurao.Estediretrioinvisvelaousurio
WEBINF/lib=bibliotecasnecessriasparaaaplicao.
Utilizaremos,inicialmente,apenasojsp,masemartigosfuturoscriaremosservletspara
ampliaracapacidadedenossaaplicaoweb,porissocriamosaestruturacompleta
dediretriosTomcat.
6/25
8/19/2015
IntroduoaoJavaServerPagesJSP
ParainiciarotrabalhocomJSP,criaremosoprimeiroarquivodeexemplo,doArtigo
JSP.Paramanteropadro,criaremosumarquivohelloword/olamundo.
Nodiretrio(pasta)easyjava,comseueditorfavoritonotepad,vi,emacsetc.,o
desenvolverdevecriaroarquivoola.jspcomoseguintecontedo:
Listagem2:ProgramaOlMundo.
<html>
<head>
<title>PaginaJSPOlaMundo</title>
</head>
<body>
<h1>
<%
out.println("OlaMundo");
%>
</h1>
</body>
</html>
Salveoarquivoeabraonavegadordesuapreferenciaedigite:
http://127.0.0.1:8080/easyjava/ola.jsp,conformeaFigura1.
http://www.devmedia.com.br/introducaoaojavaserverpagesjsp/25602
7/25
8/19/2015
IntroduoaoJavaServerPagesJSP
Figura1:Resultadodaexibiodocdigoalomundo
OresultadoaexibiodeumapginacomotextoOlaMundo.Nocdigodapagina
serexibidoapenasHTMLenoJSP.Paraoteste,cliquecomobotodireitonatelae
mandeexibirocdigofontecomonalistagem2.
Listagem3:ProgramaOlMundo.
<html>
<head>
<title>PaginaJSPOlaMundo</title>
</head>
<body>
<h1>
OlaMundo
</h1>
</body>
</html>
Vamosentenderoquefoifeitonalistagem1,todoscriptjspestaentreastags,alinha
out.println("OlaMundo")responsvelporescreverotextoqueestaentreaspas,
sendoconvertidoparaaexibioemHTMLdeOlaMundo,istoporqueocomando
out.printlnresponsvelporescrevernatela,ouseja,escreveemHTMLumcontedo,
enestecasoOlaMundo.Contedosdetextodevemestarentreaspas,comovistono
exemplo.ObservequeaexibionoclientenohnenhumcdigoJSP,poisfoi
processadonoservidor,outropontoimportantequeoJSPsegueopadrodoJava,
ouseja,aofinaldecadalinhatemosum().
Prosseguimos,agora,paraosestudosdoJSP.Inicialmente,abordaremososeu
funcionamento.OJSP,assimcomooPHP,podeserutilizadodentrodoHTML,a
pginaJSP,naverdade,umapaginaHTML,masquandofornecessrioutilizar
codificaoJSPquedeveestarentreastags,oservidortratadeconverterpara
http://www.devmedia.com.br/introducaoaojavaserverpagesjsp/25602
8/25
8/19/2015
IntroduoaoJavaServerPagesJSP
HTMLpararesponderasolicitaodousurio.
NacodificaoJSP,tmsealgumasdiretivas,asquaissoutilizadaspara
informaesespeciaisdentrodepaginas,sendodivididoemtrstipos:
@include:utilizadoparainseriroscdigosdearquivospginacorrente
@page:responsvelportrazerinformaessobreapginaJSP
@taglib:responsvelporhabilitarumabibliotecadetagspersonalizada(itemque
serabordadoemoutroartigocommaisdetalhes).
Agora,vamosincrementarumpoucomaisnossaaplicaoolamundo,exibindoadata
atual.
Listagem4:ProgramaOlaMundomelhorado
<%@pagecontentType="text/html"import="java.util.Date,java.text.*"pageEncoding="ISO8859
<html>
<head>
<title>PaginaJSPOlaMundo</title>
</head>
<body>
<h1>
<%
out.println("OlaMundo");
%>
<br>
<%=newDate()%>
</h1>
</body>
</html>
Aoabrirnonavegadororesultadoseraexibiodoolamundoedadataehoraatual,
conformeaFigura2.
http://www.devmedia.com.br/introducaoaojavaserverpagesjsp/25602
9/25
8/19/2015
IntroduoaoJavaServerPagesJSP
Figura2:Resultadodacodificaoalistagem4
Emconjuntocomadiretiva@page,temososatributoslistadosnatabela1.
Atributos
Descrio
DefinealinguagemdescriptqueserutilizadonoJSP.Anicalinguagemsuportada
Language
JAVA.
DefineonomedaclassequeessapginaJSPdeveherdar.Geralmenteesseatributo
Extends
noinformado,sendodeixadoacargodoServletContainersepreocuparcomisso.
Import
PermiteapginaJSpimportarpacoteseclassesqueseroutilizadospelapgina.
Session
Defineseapaginafarusodesesso,ovalorpadrotrue.
DefineotamanhodobufferdapginaemKB,casonosejadefinidoasadanoser
Buffer
buferizada.
autoFlush
Esteatributo,sedefinidocomotrue,fazcomqueobufferdapginaJSPsejafinalizado
casoatinjaolimite.
http://www.devmedia.com.br/introducaoaojavaserverpagesjsp/25602
10/25
8/19/2015
IntroduoaoJavaServerPagesJSP
isThereadSafe Seoatributofordefinidocomotrue,apaginanoimplementaainterface
SingleThreadeModel.Ovalorpadrotrue.
Info
RetornaoresultadodomtodogetServletInfo().
errorPage
Defineocaminhorelativoaumapginadeerro,casoocorraumaexceo.
contentType
Informaotipodesadadodocumento.Ovalordefaulttext/html.
isErrorPage
Informaseapginaumapginadeerro.
pageEncoding Defineocaracterencondingdapgina.
Tabela1:Atributosdadiretiva@page.
Vejaquenoexemploanterior,foicriadoalinha:,indicandoqueserimportadoas
bibliotecasjava.util.Dateejava.text.*,almdissofoidefinidoopageEncodingcomo
ISO88591.
Noexemploanteriorutilizamosaexibiocompletadadatautilizando.O
desenvolvedordeveevitarousodoout.println,utilizandodiretamenteo=newDate().O
newDatefezumachamadadiretaclasseDate,disponvelemjava.util.Date.Este
motivodaimportao.Paradarandamentoaplicaoaperfeioaremosacodificao
conformealistagem3.
Listagem5:ProgramaOlaMundomelhorado
<%@pagecontentType="text/html"import="java.util.*,java.text.*"pageEncoding="ISO88591"%
<html>
<head>
<metahttpequiv="ContentType"content="text/html;charset=ISO88591">
<title>JSPPage</title>
</head>
<body>
<h1>HelloWorld!</h1>
<%
intdia=Integer.parseInt((newSimpleDateFormat("dd")).format(newDate()));
http://www.devmedia.com.br/introducaoaojavaserverpagesjsp/25602
11/25
8/19/2015
IntroduoaoJavaServerPagesJSP
out.println("<br>Hojedia"+dia);
%>
</body>
</html>
OresultadoserexibidoconformaaFigura3.
Figura3:Resultadodaexecuodalistagem3
Destavezfoideclaradoumavariveldotipointparaarmazenaradata.Adeclarao
devariveisnoJSPidnticaaojava:tmseotipo,onomeeosdadosquesero
armazenados.Oescopodeumavariveldestetipooarquivoemquefoideclarado,
ouseja,osoutrosarquivosnotminformaessobreavariveldeclaradaaqui.Os
tiposdedadossuportadospeloJSPso:
boolean=true/false
byte=128a127
char=caracteres
double=1.89869313486232E308a4.94065645841247E
http://www.devmedia.com.br/introducaoaojavaserverpagesjsp/25602
12/25
8/19/2015
IntroduoaoJavaServerPagesJSP
324/1.89869313486232E308a4.94065645841247E324
int=2.147.483.648a2.147.483.647
long=9.223.372.036.854.775.808a9..223.372.036.854.775.807
shot=32.768a32.767
String=textos
ParatrabalharcomotipoStringquearmazenatextosnecessrioincluira
java.lang.String.
TambmfizemosusodeconversodetipoInteger.parseInt,paraconverterotipo
string,vindadoobjetodataparaInteiro.Destaformapodesearmazenarodiaemuma
varivelcomotipointeiro(int).
Outrasconverses:
Byte.parseByte(objetoString)=converteumastringparaotipobyte
Short.parteShort(objetoString)=converteumastringparaotiposhort
Float.parteFloat(objetoString)=converteumastringparaotipofloat
Double.parseDouble(objetoString)converteumastringparaotipodouble.
Utilizamosanteriormenteasadaout.println,esteumtipodeobjetoimplcito.Esses
objetosrecebemonomedeimplcitopornonecessitarsereminstanciadosparaasua
utilizao.Elespodemseracessadosdiretamentenapgina.Osobjetosimplcitosque
podemseracessadosempginasJSPso:
Objetos
Descrio
MtododotipoWritter,utilizadoparaexibirdadosnapgina.(exemplo:out.println(Ola
Out
Mundo)
Objetopermiteacessoaparmetrosenviadospelocliente,pelomtodoHTTP(GETou
Request
POST).
http://www.devmedia.com.br/introducaoaojavaserverpagesjsp/25602
13/25
8/19/2015
IntroduoaoJavaServerPagesJSP
Response
Permiteacessorespostaqueserenviadaaousurio.
Session
Acessoasesses.
ObjetoquereferenciaaclasseServletContextepermitequesejamarmazenadosvalores,
application
aoquaisserocompartilhadosportodaaplicao,pormeiodosmtodossetAttributee
getAttribute.
Config
Objetoutilizadoparaaleituradeparmetrosdeinicializao.
exception
PermitequeaspginasJSPsejamdefinidascomopginasdeerros.
pageContext Objetoqueumpontodeacessoamuitosatributosdapgina.
Page
Semelhantearefernciathisutilizadaemclassesjava.
Operadores:
Osoperadoressoutilizadospararealizaraessobreumoumaisvalores.Os
operadoressoclassificadosemgruposnoJSPassimcomoemquasetodasas
linguagensdeprogramao.Osoperadorestmprefernciadevidoaprioridadecomo
acontecenamatemtica.
Operadoresdecomparao:
==igualdade
!=noigualoudiferente
>maior
>=maiorouigual
http://www.devmedia.com.br/introducaoaojavaserverpagesjsp/25602
14/25
8/19/2015
IntroduoaoJavaServerPagesJSP
Concatenadores
&&representaoandoue
||representaoorouou
^representaoorexclusivo
Operadoresaritmticos
+soma
subtrais
/divide
*multiplica
%resto
OperadoresdeIncrementoedecremento
++incrementavalor
decrementavalor
Estrutura de programao:
Condicionalif
Oif(se)responsvelpelatomadadedecisodentrodacodificaojsp,possuindoo
seguinteformato:
If(condio){
Codificaoseverdadeiro
}else{
Condificaosefalso
}
http://www.devmedia.com.br/introducaoaojavaserverpagesjsp/25602
15/25
8/19/2015
IntroduoaoJavaServerPagesJSP
Podendoaindasercomplementadodacomoutrosifs,daseguinteforma:
If(condio){
Codificaoseverdadeiro
}elseif(condio){
Condificaoseasegundacondioforverdadeira
}else{
Codificaoseasegundacondioforfalsa
}
Vamoscriarumexemploutilizandooquejsabemos,complementandoaindamais
nossoOlaMundo.
Listagem6:ProgramaOlaMundocondicionalif
<%@pagecontentType="text/html"import="java.util.*,java.text.*"pageEncoding="ISO88591"%
<html>
<head>
<metahttpequiv="ContentType"content="text/html;charset=ISO88591">
<title>JSPPage</title>
</head>
<body>
<%
out.println("<h1>HelloWorld!</h1>");
intdia=Integer.parseInt((newSimpleDateFormat("dd")).format(newDate()));
intmes=Integer.parseInt((newSimpleDateFormat("M")).format(newDate()));
intano=Integer.parseInt((newSimpleDateFormat("yyyy")).format(newDate()));
if(mes==1){
out.println("Hoje"+dia+"deJaneirode"+ano);
}elseif(mes==02){
out.println("Hoje"+dia+"deFevereirode"+ano);
}elseif(mes==3){
out.println("Hoje"+dia+"deMarode"+ano);
}elseif(mes==4){
out.println("Hoje"+dia+"deAbrilde"+ano);
}elseif(mes==5){
out.println("Hoje"+dia+"deMaiode"+ano);
http://www.devmedia.com.br/introducaoaojavaserverpagesjsp/25602
16/25
8/19/2015
IntroduoaoJavaServerPagesJSP
}elseif(mes==6){
out.println("Hoje"+dia+"deJunhode"+ano);
}elseif(mes==7){
out.println("Hoje"+dia+"deJulhode"+ano);
}elseif(mes==8){
out.println("Hoje"+dia+"deAgostode"+ano);
}elseif(mes==9){
out.println("Hoje"+dia+"deSetembrode"+ano);
}elseif(mes==10){
out.println("Hoje"+dia+"deOutubrode"+ano);
}elseif(mes==11){
out.println("Hoje"+dia+"deNovembrode"+ano);
}elseif(mes==12){
out.println("Hoje"+dia+"deDezembrode"+ano);
}
%>
</body>
</html>
Almdacondioif,tmseacondioswitch,aqualsemelhanteaoif,pormpara
cadacomparaodeveexistirumainstruobreak.
switch(atributo/varivel){
casevalor:
instruo
break
casevalorn:
instruo
break
default:
instruoparavalorpadro
}
http://www.devmedia.com.br/introducaoaojavaserverpagesjsp/25602
17/25
8/19/2015
IntroduoaoJavaServerPagesJSP
Aseguir,apresentaseumexemplosemelhandoaodoif,pormutilizandooswitch.
Listagem7:ProgramaOlaMundocondicionalswitch
<%@pagecontentType="text/html"import="java.util.*,java.text.*"pageEncoding="ISO88591"%
<html>
<head>
<metahttpequiv="ContentType"content="text/html;charset=ISO88591">
<title>JSPPage</title>
</head>
<body>
<%
out.println("<h1>HelloWorld!</h1>");
intdia=Integer.parseInt((newSimpleDateFormat("dd")).format(newDate()));
intmes=Integer.parseInt((newSimpleDateFormat("M")).format(newDate()));
intano=Integer.parseInt((newSimpleDateFormat("yyyy")).format(newDate()));
switch(mes){
case1:
out.println("Hoje"+dia+"deJaneirode"+ano);
break;
case2:
out.println("Hoje"+dia+"deFevereirode"+ano);
break;
case3:
out.println("Hoje"+dia+"deMarode"+ano);
break;
default:
out.println("Ola");
}
%>
</body>
</html>
Existem,ainda,outrasinstruescomolaos/repeties,asquaisseroabordadasem
prximoartigo.Agora,paradarandamento,trataremossobreofuncionamentodas
funes.
http://www.devmedia.com.br/introducaoaojavaserverpagesjsp/25602
18/25
8/19/2015
IntroduoaoJavaServerPagesJSP
Afuno/mtodocontmcdigos,queseroexecutadosquandoafuno/mtodofor
chamado.
Acessotiponome(parmetro){
Cdigodafuno
}
Ostiposdeacessoserotratadosemnoprximoartigo.Iniciandoodesenvolvimento
deumapginaJSPcommaisrecursosedetalhes,utilizaseainclusodepginase
umformulriocomoexemplo.Adotandooquejfoiaprendido,vamoscriarumarquivo
topo,quearmazenarocontedoaserexibidonotopodonossosite.Estearquivoter
onometopo.jsp.
Listagem8:Programatopo.jsp
<%!
publicStringfncMES(intmes)
{
Stringretorno="";
switch(mes){
case1:retorno="Janeiro";break;
case2:retorno="Fevereiro";break;
case3:retorno="Maro";break;
case4:retorno="Abril";break;
case5:retorno="Maio";break;
case6:retorno="Junho";break;
case7:retorno="Julho";break;
case8:retorno="Agosto";break;
case9:retorno="Setembro";break;
case10:retorno="Outubro";break;
case11:retorno="Novembro";break;
case12:retorno="Dezembro";break;
}
returnretorno;
}
%>
<h1>PaginaJSP</h1>
<h4><%
intmes=Integer.parseInt(newSimpleDateFormat("M").format(newDate()));
http://www.devmedia.com.br/introducaoaojavaserverpagesjsp/25602
19/25
8/19/2015
IntroduoaoJavaServerPagesJSP
intdia=Integer.parseInt(newSimpleDateFormat("dd").format(newDate()));
intano=Integer.parseInt(newSimpleDateFormat("yyyy").format(newDate()));
out.println("Hojedia"+dia+"de"+fncMES(mes)+"de"+ano);
%></h4>
Otopo.jsputilizaoswitchemumafunochamadafncMES(FunoMs)paraexibiro
ms,comojfeitocomooifanteriormente.Agora,crieoarquivorodape.jsp.Estevai
terocontedodorodapdapgina.Nestapgina,insiraapenasoseguintetexto
PaginaEasyJava
.
Aseguir,criaremosoindex.jsp,quevaiunirosdoisarquivos.Criaremos,ainda,um
formulrioeenviarparaumapginaemquevamostratarosdadosrecebidos,
validandoos.
Listagem9:Programaindex.jsp
<%@pagecontentType="text/html"import="java.util.*,java.text.*"pageEncoding="ISO88591"%
<!DOCTYPEHTMLPUBLIC"//W3C//DTDHTML4.01Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<metahttpequiv="ContentType"content="text/html;charset=ISO88591">
<title>JSPPage</title>
</head>
<body>
<%@includefile="topo.jsp"%>
<formaction="trataform.jsp"method="post">
Nome:<inputtype="text"name="txtnome"/><br>
EMail:<inputtype="text"name="txtemail"/><br>
DatadeNascimento:<inputtype="text"name="txtdtnasc"/><br>
<inputtype="submit"value="Enviar"/>
http://www.devmedia.com.br/introducaoaojavaserverpagesjsp/25602
20/25
8/19/2015
IntroduoaoJavaServerPagesJSP
</form>
<%@includefile="rodape.jsp"%>
</body>
</html>
Aquitemosautilizaodo@includeparaincluirosarquivosjspquecriamos.Tambm
criamosumformulrioparaenviardadosparaumapginaquevamosaindacriar.O
nomedapaginasertrataform.jsp.Paraisso,utilizamosomtododeenviodedados
post.
Listagem10:Programatrataform.js
<%@pagecontentType="text/html"import="java.util.*,java.text.*,java.lang.String"pageEnco
<!DOCTYPEHTMLPUBLIC"//W3C//DTDHTML4.01Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<metahttpequiv="ContentType"content="text/html;charset=ISO88591">
<title>JSPPage</title>
</head>
<body>
<%@includefile="topo.jsp"%>
Dadosdoformulario<br>
<%
Stringnome=request.getParameter("txtnome");
if(nome=="")
out.println("Nomenofoidigitato");
else
out.println("Seunome"+nome);
%>
<br>EMail:<%=request.getParameter("txtemail")%><br>
DatadeNascimento:<%=request.getParameter("txtdtnasc")%><br>
<%@includefile="rodape.jsp"%>
</body>
</html>
http://www.devmedia.com.br/introducaoaojavaserverpagesjsp/25602
21/25
8/19/2015
IntroduoaoJavaServerPagesJSP
Aquifoiutilizadoorequest.getParameter,queomtodoresponsvelporreceberos
dadosdoformulrio.Elerecebepelonomedocampoquefoicriado.Nestecasoos
dadosseroarmazenadosdentrodavarivelnome,queumtipostring.Utilizamoso
ifparaverificarseonomefoidigitado.
Concluses
EstafoiaumabreveintroduosobrealinguagemServersideJSPedecomocriar
pginaswebdinmicasdeformaprticaesimples.Emprximosartigos,ser
abordadocomoseconectarabancodedadosparacriarumapginadinmicade
notciasatautilizaodeJSTL.
Referncias
PginaprincipaldoTomcat
TudosobreaJSP,FernandoAnselmo,VisualBooks,2005:LivrotratasobreJSP
esobreautilizaodeJSTL
FabioGomesRocha
CSMCertifieldScrumMasterCISFCertifieldInformationSecurityFoundationbasedonISO/IEC
27002DocenteSenaiemcursostecnicosedeformaocontinuada.Prof.UniversidadeTiradentesnos
cursosdecomputao.Analista[...]
Oquevocachoudestepost?
http://www.devmedia.com.br/introducaoaojavaserverpagesjsp/25602
22/25