Baixe jsp tutorial [ebook, java programming] e outras Notas de estudo em PDF para Informática, somente na Docsity! JSP
tutoria
Written by the team at Visualbuilder.com
Last Updated : July 12, 2001
Online version available at http://visualbuilder.com/
Visualbuilder.com
This is a tutorial to help a developer understand what is meant by
JavaServer Pages. The reader will learn the main concepts, setup
the JSP environment on their computer and write a few JSP
programs.
Visualbuilder.com
9LVXDOEXLOGHUFRP :K\XVH-63" -63LVHDV\WROHDUQDQGDOORZVGHYHORSHUVWRTXLFNO\SURGXFHZHEVLWHVDQGDSSOLFDWLRQVLQDQRSHQDQGVWDQGDUGZD\-63LVEDVHGRQ-DYDDQREMHFWRULHQWHGODQJXDJH-63RIIHUVDUREXVWSODWIRUPIRUZHEGHYHORSPHQW 0DLQUHDVRQVWRXVH-63 0XOWLSODWIRUP &RPSRQHQWUHXVHE\XVLQJ-DYDEHDQVDQG(-% $GYDQWDJHVRI-DYD <RXFDQWDNHRQH-63ILOHDQGPRYHLWWRDQRWKHUSODWIRUPZHEVHUYHURU-636HUYOHWHQJLQH 7KLVPHDQV\RXDUHQHYHUORFNHGLQWRRQHYHQGRURUSODWIRUP +70/DQGJUDSKLFVGLVSOD\HGRQWKHZHEEURZVHUDUHFODVVHGDVWKHSUHVHQWDWLRQOD\HU7KH-DYDFRGH -63 RQWKHVHUYHULVFODVVHGDVWKHLPSOHPHQWDWLRQ%\KDYLQJDVHSDUDWLRQRISUHVHQWDWLRQDQGLPSOHPHQWDWLRQZHEGHVLJQHUVZRUNRQO\RQWKHSUHVHQWDWLRQDQG-DYDGHYHORSHUVFRQFHQWUDWHRQLPSOHPHQWLQJWKHDSSOLFDWLRQ 0LFURVRIW17 -636HUYOHW(QJLQH-581 :HEVHUYHU 0LFURVRIW,,6 0RYLQJ-63ILOHIURPRQHSODWIRUPWRDQRWKHU -636HUYOHW(QJLQH 8QL[ -636HUYOHW(QJLQH7RPFDW :HEVHUYHU $SDFKH -636HUYOHW(QJLQH 0RYLQJ-63ILOHV JSP compared to ASP
JSP and ASP are fairly similar in the functionality that they provide. JSP may have
slightly higher learning curve. Both allow embedded code in an HTML page,
session variables and database access and manipulation. Whereas ASP is mostly
found on Microsoft platforms i.e. NT, JSP can operate on any platform that
conforms to the J2EE specification. JSP allow component reuse by using
Javabeans and EJBs. ASP provides the use of COM / ActiveX controls.
JSP compared to Servlets
A Servlet is a Java class that provides special server side service. It is hard work
to write HTML code in Servlets. In Servlets you need to have lots of printin
statements to generate HTML.
Visualbuilder.com
9LVXDOEXLOGHUFRP -63DUFKLWHFWXUH -63VDUHEXLOWRQWRSRI681¶VVHUYOHWWHFKQRORJ\-63VDUHHVVHQWLDODQ+70/SDJHZLWKVSHFLDO-63WDJVHPEHGGHG7KHVH-63WDJVFDQFRQWDLQ-DYDFRGH7KH-63ILOHH[WHQVLRQLVMVSUDWKHUWKDQKWPRUKWPO7KH-63HQJLQHSDUVHVWKHMVSDQGFUHDWHVD-DYDVHUYOHWVRXUFHILOH,WWKHQFRPSLOHVWKHVRXUFHILOHLQWRDFODVVILOHWKLVLVGRQHWKHILUVWWLPHDQGWKLVZK\WKH-63LVSUREDEO\VORZHUWKHILUVWWLPHLWLVDFFHVVHG$Q\WLPHDIWHUWKLVWKHVSHFLDOFRPSLOHGVHUYOHWLVH[HFXWHGDQGLVWKHUHIRUHUHWXUQVIDVWHU ,17(51(7 :HE%URZVHU :HE6HUYHU :HEEURZVHU5HTXHVW -63UHTXHVWVHQWWR:HEVHUYHU -636HUYOHW(QJLQH 3DUVH-63ILOH *HQHUDWH6HUYOHWVRXUFHFRGH &RPSLOH6HUYOHWVRXUFHFRGHLQWRFODVV ,QVWDQWLDWH6HUYOHW -63)LOH 6HQGWR-636HUYOHW(QJLQH +70/ 6HUYOHWRXWSXW +70/VHQWWREURZVHU 6WHSVUHTXLUHGIRUD-63UHTXHVW 7KHXVHUJRHVWRDZHEVLWHPDGHXVLQJ-637KHXVHUJRHVWRD-63SDJH HQGLQJZLWKMVS 7KHZHEEURZVHUPDNHVWKHUHTXHVWYLDWKH,QWHUQHW 7KH-63UHTXHVWJHWVVHQWWRWKH:HEVHUYHU 7KH:HEVHUYHUUHFRJQLVHVWKDWWKHILOHUHTXLUHGLVVSHFLDO MVS WKHUHIRUHSDVVHVWKH-63ILOHWRWKH-636HUYOHW(QJLQH ,IWKH-63ILOHKDVEHHQFDOOHGWKHILUVWWLPHWKH-63ILOHLVSDUVHGRWKHUZLVHJRWRVWHS 7KHQH[WVWHSLVWRJHQHUDWHDVSHFLDO6HUYOHWIURPWKH-63ILOH$OOWKH+70/UHTXLUHGLVFRQYHUWHGWRSULQWOQVWDWHPHQWV 7KH6HUYOHWVRXUFHFRGHLVFRPSLOHGLQWRDFODVV 7KH6HUYOHWLVLQVWDQWLDWHGFDOOLQJWKHLQLW DQGVHUYLFH PHWKRGV +70/IURPWKH6HUYOHWRXWSXWLVVHQWYLDWKH,QWHUQHW +70/UHVXOWVDUHGLVSOD\HGRQWKHXVHU¶VZHEEURZVHU Creating your first JSP page
<html>
<head>
<title>My first JSP page
</title>
</head>
<body>
<%O page language="java” Y%>
<% System.out.printin(“Hello World”); %>
</body>
</html>
Type the code above into a text file. Name the file helloworld.jsp.
Place this in the correct directory on your JSP web server and call it via your
browser.
Visualbuilder.com
Using JSP tags
There are five main tags:
Declaration tag
Expression tag
Directive Tag
Scriptlet tag
Action tag
nftwnN
Visualbuilder.com
9LVXDOEXLOGHUFRP 'HFODUDWLRQWDJ ! 7KLVWDJDOORZVWKHGHYHORSHUWRGHFODUHYDULDEOHVRUPHWKRGV %HIRUHWKHGHFODUDWLRQ\RXPXVWKDYH$WWKHHQGRIWKHGHFODUDWLRQWKHGHYHORSHUPXVWKDYH! &RGHSODFHGLQWKLVWDJPXVWHQGLQDVHPLFRORQ 'HFODUDWLRQVGRQRWJHQHUDWH RXWSXWVRDUHXVHGZLWK-63H[SUHVVLRQVRUVFULSWOHWV )RU([DPSOH SULYDWHLQWFRXQWHU SULYDWH6WULQJJHW$FFRXQW LQWDFFRXQW1R ! 9LVXDOEXLOGHUFRP HUURUV0XVWEH85/WRHUURUSDJH ³HUURUHUURUMVS´!,V(UURU3DJH 7KLVIODJLVVHWWRWUXHWRPDNHD-63SDJHDVSHFLDO(UURU3DJH7KLVSDJHKDVDFFHVVWRWKHLPSOLFLWREMHFWH[FHSWLRQ VHHODWHU FRQWHQW7\SH 6HWWKHPLPHW\SHDQGFKDUDFWHUVHWRIWKH-63 ,QFOXGHGLUHFWLYH $OORZVD-63GHYHORSHUWRLQFOXGHFRQWHQWVRIDILOHLQVLGHDQRWKHU7\SLFDOO\LQFOXGHILOHVDUHXVHGIRUQDYLJDWLRQWDEOHVKHDGHUVDQGIRRWHUVWKDWDUHFRPPRQWRPXOWLSOHSDJHV 7ZRH[DPSOHVRIXVLQJLQFOXGHILOHV 7KLVLQFOXGHVWKHKWPOIURPSULYDF\KWPOIRXQGLQWKHLQFOXGHGLUHFWRU\LQWRWKHFXUUHQWMVSSDJH #LQFOXGHILOH ³LQFOXGHSULYDF\KWPO! RUWRLQFOXGH DQDYLDJDWLRQPHQX MVSILOH IRXQGLQWKHFXUUHQWGLUHFWRU\ #LQFOXGHILOH ³QDYLJDWLRQMVS! ,QFOXGHILOHVDUHGLVFXVVHGLQPRUHGHWDLOLQWKHODWHUVHFWLRQVRIWKLVWXWRULDO 7DJ/LEGLUHFWLYH $WDJOLELVDFROOHFWLRQRIFXVWRPWDJVWKDWFDQEHXVHGE\WKHSDJH #WDJOLEXUL ³WDJOLEUDU\85,´SUHIL[ ³WDJ3UHIL[´! &XVWRPWDJVZHUHLQWURGXFHGLQ-63DQGDOORZ-63GHYHORSHUVWRKLGHFRPSOH[VHUYHUVLGHFRGHIURPZHEGHVLJQHUV 7KLVWRSLFZLOOEHFRYHUHGLQWKH$GYDQFHG-63WXWRULDODWYLVXDOEXLOGHUFRP Scriptlet tag ( <% ... Yo> )
Between <% and %> tags, any valid Java code is called a Scriptlet. This code can
access any variable or bean declared.
For example, to print a variable.
<Y%
String username = “visualbuilder” ;
out.println ( username ) ;
%>
Visualbuilder.com
9LVXDOEXLOGHUFRP $FWLRQWDJ 7KHUHDUHWKUHHPDLQUROHVRIDFWLRQWDJV HQDEOHWKHXVHRIVHUYHUVLGH-DYDEHDQV WUDQVIHUFRQWUROEHWZHHQSDJHV EURZVHULQGHSHQGHQWVXSSRUWIRUDSSOHWV -DYDEHDQV $-DYDEHDQLVDVSHFLDOW\SHRIFODVVWKDWKDVDQXPEHURIPHWKRGV7KH-63SDJHFDQFDOOWKHVHPHWKRGVVRFDQOHDYHPRVWRIWKHFRGHLQWKHVH-DYDEHDQV)RUH[DPSOHLI\RXZDQWHGWRPDNHDIHHGEDFNIRUPWKDWDXWRPDWLFDOO\VHQWRXWDQHPDLO%\KDYLQJD-63SDJHZLWKDIRUPZKHQWKHYLVLWRUSUHVVHVWKHVXEPLWEXWWRQWKLVVHQGVWKHGHWDLOVWRD-DYDEHDQWKDWVHQGVRXWWKHHPDLO7KLVZD\WKHUHZRXOGEHQRFRGHLQWKH-63SDJHGHDOLQJZLWKVHQGLQJHPDLOV -DYD0DLO$3, DQG\RXU-DYDEHDQFRXOGEHXVHGLQDQRWKHUSDJH SURPRWLQJUHXVH 7RXVHD-DYDEHDQLQD-63SDJHXVHWKHIROORZLQJV\QWD[ MVSXVHEHDQLG ³«³VFRSH ³DSSOLFDWLRQ´FODVV ³FRP«´! 7KHIROORZLQJLVDOLVWRI-DYDEHDQVFRSHV SDJH± YDOLGXQWLOSDJHFRPSOHWHVUHTXHVW± EHDQLQVWDQFHODVWVIRUWKHFOLHQWUHTXHVWVHVVLRQ± EHDQODVWVIRUWKHFOLHQWVHVVLRQDSSOLFDWLRQ± EHDQLQVWDQFHFUHDWHGDQGODVWVXQWLODSSOLFDWLRQHQGV -DYDEHDQVDUHGLVFXVVHGLQGHWDLOODWHULQWKLVWXWRULDO '\QDPLF-63,QFOXGH <RXKDYHVHHQKRZDILOHFDQEHLQFOXGHGLQWRD-63XVLQJDQ ,QFOXGH'LUHFWLYH #LQFOXGHILOH ³LQFOXGHSULYDF\KWPO! 7KLVLVXVHIXOIRULQFOXGLQJFRPPRQSDJHVWKDWDUHVKDUHGDQGLVLQFOXGHGDWFRPSLOHWLPH 7RLQFOXGHDSDJHDWUXQWLPH\RXVKRXOGXVHG\QDPLF-63LQFOXGHV MVSLQFOXGHSDJH 85/IOXVK WUXH! 9LVXDOEXLOGHUFRP 6HVVLRQ7UDFNLQJLQ-63 6HVVLRQ2EMHFW 6D\IRUH[DPSOH\RXZRXOGOLNHWRLPSOHPHQWDVKRSSLQJFDUWXVLQJ-637KHUHDUHVHYHUDORSWLRQV\RXFRXOGFRQVLGHU x &RRNLHV ± DVPDOOWH[WILOHVWRUHGRQWKHFOLHQW¶VPDFKLQH&RRNLHVFDQEHGLVDEOHGLQWKHEURZVHUVHWWLQJVVRDUHQRWDOZD\VDYDLODEOHx 85/UHZULWLQJ ± VWRUHVHVVLRQLQIRUPDWLRQLQWKH85/:RUNVZKHQFRRNLHVDUHQRWVXSSRUWHGEXWFDQPDNHERRNPDUNLQJRIZHESDJHVDSUREOHPEHFDXVHWKH\KDYHVHVVLRQVSHFLILFLQIRUPDWLRQDWWKHHQGRID85/x +LGGHQIRUPILHOGV ± +70/KLGGHQHGLWER[HVVXFKDV,13877<3( ´+,''(1´1$0( ´86(51$0(´9$/8( ´«³!(YHU\SDJHKDVWREHG\QDPLFDOO\SURGXFHGZLWKWKHYDOXHVLQWKHKLGGHQILHOGx 6HVVLRQREMHFWV ± -63,PSOLFLWREMHFW $VHVVLRQREMHFWXVHVDNH\YDOXHFRPELQDWLRQWRVWRUHLQIRUPDWLRQ 7RUHWULHYHLQIRUPDWLRQIURPDVHVVLRQ VHVVLRQJHW9DOXH ³YLVLWFRXQWHU´ 7KHUHWXUQW\SHRIWKHPHWKRG JHW9DOXHLV2EMHFWVR\RXZLOOQHHGWRW\SHFDVWWRJHWWKHUHTXLUHGYDOXH,IWKHUHLVQRWDVHVVLRQNH\ZLWKWKDWQDPHDQXOOLVUHWXUQHG 7RVHWDVHVVLRQNH\ZLWKDYDOXH VHVVLRQSXW9DOXH ³YLVLWFRXQWHU´WRWDOYLVLWV 7KHWKLUG-63H[DPSOHLQ WKLVWXWRULDOGHPRQVWUDWHVWKHXVHRIWKHVHVVLRQREMHFW 9LVXDOEXLOGHUFRP -63&RPPHQWV -63FRPPHQW! -63FRPPHQWVDUHVLPLODUWR+70/FRPPHQWV +70/&RPPHQW!H[FHSW-63FRPPHQWVDUHQHYHUVHQWWRWKHXVHU¶VEURZVHU+70/FRPPHQWVDUHYLVLEOHLQWKHSDJHVRXUFH KWPO!KHDG!WLWOH!+70/DQG-63&RPPHQWVWLWOH!KHDG!ERG\!K!FRPPHQWVK! 7KLV+70/&RPPHQW YLVLEOHLQWKHSDJHVRXUFH! 7KLV-63FRPPHQW QRWYLVLEOHLQ WKHSDJHVRXUFH! ERG\!KWPO! 9LVXDOEXLOGHUFRP &UHDWLQJ\RXUWKLUG-63SDJH 7KLVWKLUGH[DPSOHFRXQWVKRZPDQ\WLPHVDSDUWLFXODUXVHUYLVLWVDSDJH,WXVHVWKH6HVVLRQREMHFWWKDWZDVSUHVHQWHGLQWKH,PSOLFLWREMHFWVHFWLRQRIWKLVWXWRULDO 7KHIROORZLQJDUHWKHPDLQVWHSVLQYROYHG JHWWKHYDOXHRIWKHVHVVLRQYDULDEOH YLVLWFRXQWHULIWKHVHVVLRQYDULDEOH YLVLWFRXQWHU LVQXOOVHWWKHVHVVLRQYDULDEOHWRDQGZHOFRPHWKHYLVLWRULIWKHVHVVLRQYDULDEOHLVQRWQXOO DIWHUVWHS LQFUHPHQWWKHVHVVLRQYDUDLEOHDQGGLVSOD\WKHQXPEHURIYLVLWV VHVVLRQMVSFKHFNVWRVHHLI\RXKDYHYLVLWHGDSDJHDQGNHHSVDFRXQWHUYLVXDOEXLOGHUFRP!KWPO!KHDG!KHDG! ERG\! JHWWKHYDOXHRIWKHVHVVLRQYDULDEOH YLVLWFRXQWHU,QWHJHUWRWDOYLVLWV ,QWHJHU VHVVLRQJHW9DOXH YLVLWFRXQWHU LIWKHVHVVLRQYDULDEOH YLVLWFRXQWHU LVQXOOLI WRWDOYLVLWV QXOO ^ VHWVHVVLRQYDULDEOHWRWRWDOYLVLWV QHZ,QWHJHU VHVVLRQSXW9DOXH YLVLWFRXQWHUWRWDOYLVLWV SULQWDPHVVDJHWRRXWYLVLWRURXWSULQWOQ :HOFRPHYLVLWRU H̀OVH^ LI\RXKDYHYLVLWHGWKHSDJHEHIRUHWKHQDGGWRWKHYLVLWFRXQWHUWRWDOYLVLWV QHZ,QWHJHU WRWDOYLVLWVLQW9DOXH VHVVLRQSXW9DOXH YLVLWFRXQWHUWRWDOYLVLWV RXWSULQWOQ <RXKDYHYLVLWHGWKLVSDJHWRWDOYLVLWVWLPH V ̀! ERG\!KWPO! 9LVXDOEXLOGHUFRP 7KHEHQHILWRIXVLQJ-DYD%HDQVLVWKDW\RXFDQHDVLO\UHXVHWKHFRGHLQRWKHUDSSOLFDWLRQV,WDOVRPLQLPLVHVWKHDPRXQWRIFRGHLQWKH-63DOORZLQJGHVLJQHUVWRXVHWKHLUIDYRULWHZHEGHVLJQHGLWRUZLWKRXWGHVWUR\LQJWKH-DYDFRGH7KLVIROORZVDFRPSRQHQWFHQWULFDSSURDFKWRGHYHORSLQJDSSOLFDWLRQV 1DPLQJFRQYHQWLRQ $FRPPRQFRQYHQWLRQLVWKDWSURSHUW\QDPHVDUHPL[HGFDVHEHJLQQLQJZLWKDORZHUFDVHOHWWHUDQGXSSHUFDVLQJWKHILUVWOHWWHURIHDFKZRUGLQWKHSURSHUW\QDPH JHW1DPH VHW1DPH 6WULQJQDPH 7KHGDWDIURPDQ+70/IRUPFDQEHSDVVHGVWUDLJKWLQWRD-DYD%HDQ,QRUGHUWRGRWKLVXVHMVSVHW3URSHUW\!WRGHILQHSURSHUWLHVLQWKH-DYD%HDQZLWKQDPHVWKDWPDWFKWKHQDPHVRIWKH+70/IRUPHOHPHQWV<RXZRXOGDOVRGHILQHFRUUHVSRQGLQJVHWPHWKRGVIRUHDFKSURSHUW\ ,QRXUH[DPSOHLIWKHIRUPHOHPHQWZHUHFDOOHGQDPH\RXZRXOGGHILQHDSURSHUW\FDOOHGXVHUDQGPHWKRGVJHW1DPHDQGVHW1DPHLQWKH-DYD%HDQ7KLVDOORZV\RXWRJHWGDWDIURPWKHIRUPLQWRWKH-DYD%HDQ <RXVKRXOGQRZXQGHUVWDQGKRZWRXVH-DYD%HDQVZLWK-63 Feedback
If you have any comments or suggestions regarding this document,
please use the JSP forum at visualbuilder.com or send us an email
at supportQvisualbuilder.com
Thank you,
Visualbuilder team
http://www.visualbuilder.com
Visualbuilder.com