COMPUTER LEARNING CENTERWWW.HUUKHANG.COM                             Moân hoïc: Java Server Pages                         ...
COMPUTER LEARNING CENTERWWW.HUUKHANG.COM      Baïn phaûi baûo daûm raèng chuùng ñang ôû cheá ñoä Started, trong tröôøng hô...
COMPUTER LEARNING CENTERWWW.HUUKHANG.COM                             Hình 1-2: Ñaêng nhaäp JRUN Admin    2. Taïo thö muïc ...
COMPUTER LEARNING CENTERWWW.HUUKHANG.COM    3. Choïn vaøo menu Home, JRUN seõ lieät keâ danh saùch caùc server ñang caáu h...
COMPUTER LEARNING CENTERWWW.HUUKHANG.COM                                        Hình 1-5: Taïo website                    ...
COMPUTER LEARNING CENTERWWW.HUUKHANG.COM                                      Hình 1-7: Teân site vöøa taïo      Xem treân...
COMPUTER LEARNING CENTERWWW.HUUKHANG.COM2. GIÔÙI THIEÄU JSP   2.1. Yeâu caàu        JSP döïa treân cuù phaùp cuûa ngoân ng...
COMPUTER LEARNING CENTERWWW.HUUKHANG.COM   2.4. Kòch baûn (script)      Noäi dung cuûa JSP coù theå khai baùo laãn loän vô...
COMPUTER LEARNING CENTER                                                    WWW.HUUKHANG.COM                              ...
COMPUTER LEARNING CENTER                                              WWW.HUUKHANG.COM                 Byte               ...
COMPUTER LEARNING CENTER                                                 WWW.HUUKHANG.COM         out.println(“SQL Stateme...
COMPUTER LEARNING CENTER                                                 WWW.HUUKHANG.COM       out.println(“Length of Acc...
COMPUTER LEARNING CENTER                                               WWW.HUUKHANG.COM   %>Nhöng neáu coù nhu caàu laáy r...
COMPUTER LEARNING CENTER                                                 WWW.HUUKHANG.COM      <%!      public String repl...
COMPUTER LEARNING CENTER                                                 WWW.HUUKHANG.COM      String str1=”Select * from ...
COMPUTER LEARNING CENTER                                           WWW.HUUKHANG.COM                                       ...
COMPUTER LEARNING CENTER                                            WWW.HUUKHANG.COM                      ||             A...
COMPUTER LEARNING CENTER                                             WWW.HUUKHANG.COM     j=i++;// i taêng sau khi gaùn i ...
COMPUTER LEARNING CENTER                                           WWW.HUUKHANG.COM     out.println(“Value of add is ” +i+...
COMPUTER LEARNING CENTER                                            WWW.HUUKHANG.COM  2.6. Toaùn töû && vaø ||     && laø ...
COMPUTER LEARNING CENTER                                        WWW.HUUKHANG.COM3. PHEÙP GAÙN     Khi gaùn moät giaù trò h...
COMPUTER LEARNING CENTER                                              WWW.HUUKHANG.COM  4.1. Phaùt bieåu IF (ñieàu kieän) ...
COMPUTER LEARNING CENTER                                             WWW.HUUKHANG.COM              case Value1            ...
COMPUTER LEARNING CENTER                                              WWW.HUUKHANG.COM  4.4. Phaùt bieåu While(ñieàu kieän...
COMPUTER LEARNING CENTER                                                      WWW.HUUKHANG.COM                            ...
COMPUTER LEARNING CENTER                                                    WWW.HUUKHANG.COM   Khi ngöôøi söû duïng goïi t...
COMPUTER LEARNING CENTER                                                   WWW.HUUKHANG.COM                               ...
COMPUTER LEARNING CENTER                                                 WWW.HUUKHANG.COM                                 ...
COMPUTER LEARNING CENTER                                                 WWW.HUUKHANG.COM           // Laáy giaù trò keywo...
COMPUTER LEARNING CENTER                                                    WWW.HUUKHANG.COM    <tr><td colspan=3><hr size...
COMPUTER LEARNING CENTER                                                          WWW.HUUKHANG.COM    <%            String...
COMPUTER LEARNING CENTER                                                       WWW.HUUKHANG.COM           }           catc...
COMPUTER LEARNING CENTER                                                   WWW.HUUKHANG.COM                               ...
COMPUTER LEARNING CENTER                                                WWW.HUUKHANG.COM    }    </script>    </head>    <...
COMPUTER LEARNING CENTER                                               WWW.HUUKHANG.COM                                   ...
COMPUTER LEARNING CENTER                                                      WWW.HUUKHANG.COM                            ...
COMPUTER LEARNING CENTER                                                     WWW.HUUKHANG.COM                             ...
COMPUTER LEARNING CENTER                                                     WWW.HUUKHANG.COM   Neáu username laø khang va...
COMPUTER LEARNING CENTER                                                      WWW.HUUKHANG.COM                            ...
COMPUTER LEARNING CENTER                                                     WWW.HUUKHANG.COM          <%          session...
COMPUTER LEARNING CENTER                                            WWW.HUUKHANG.COM     <LINK href="newstyle.css" rel=sty...
COMPUTER LEARNING CENTER                                              WWW.HUUKHANG.COM                                    ...
COMPUTER LEARNING CENTER                                                        WWW.HUUKHANG.COM     </style> Trong ñoù, A...
COMPUTER LEARNING CENTER                                                  WWW.HUUKHANG.COM        <h4>Style Tag</h4>      ...
COMPUTER LEARNING CENTER                                                      WWW.HUUKHANG.COM Töông töï nhö vaäy khi baïn...
COMPUTER LEARNING CENTER                                                      WWW.HUUKHANG.COM     <html>     <head>     <...
COMPUTER LEARNING CENTER                                                          WWW.HUUKHANG.COM                        ...
COMPUTER LEARNING CENTER                                                                       WWW.HUUKHANG.COM Nhö vaäy, ...
COMPUTER LEARNING CENTER                                                    WWW.HUUKHANG.COM     </head>     <body bottomM...
COMPUTER LEARNING CENTER                                                      WWW.HUUKHANG.COM     <html>     <head>     <...
COMPUTER LEARNING CENTER                                                WWW.HUUKHANG.COM    <LINK href="style.css" rel=sty...
COMPUTER LEARNING CENTER                                                  WWW.HUUKHANG.COM                                ...
COMPUTER LEARNING CENTER                                                      WWW.HUUKHANG.COM Noäi dung cuûa taäp tin lef...
COMPUTER LEARNING CENTER                                                      WWW.HUUKHANG.COM3. KHAI BAÀ
8234 tai lieu_ve_lap_trinh_web
8234 tai lieu_ve_lap_trinh_web
8234 tai lieu_ve_lap_trinh_web
8234 tai lieu_ve_lap_trinh_web
8234 tai lieu_ve_lap_trinh_web
8234 tai lieu_ve_lap_trinh_web
8234 tai lieu_ve_lap_trinh_web
8234 tai lieu_ve_lap_trinh_web
8234 tai lieu_ve_lap_trinh_web
8234 tai lieu_ve_lap_trinh_web
8234 tai lieu_ve_lap_trinh_web
8234 tai lieu_ve_lap_trinh_web
8234 tai lieu_ve_lap_trinh_web
8234 tai lieu_ve_lap_trinh_web
8234 tai lieu_ve_lap_trinh_web
8234 tai lieu_ve_lap_trinh_web
8234 tai lieu_ve_lap_trinh_web
8234 tai lieu_ve_lap_trinh_web
8234 tai lieu_ve_lap_trinh_web
8234 tai lieu_ve_lap_trinh_web
8234 tai lieu_ve_lap_trinh_web
8234 tai lieu_ve_lap_trinh_web
8234 tai lieu_ve_lap_trinh_web
8234 tai lieu_ve_lap_trinh_web
8234 tai lieu_ve_lap_trinh_web
8234 tai lieu_ve_lap_trinh_web
8234 tai lieu_ve_lap_trinh_web
8234 tai lieu_ve_lap_trinh_web
8234 tai lieu_ve_lap_trinh_web
8234 tai lieu_ve_lap_trinh_web
8234 tai lieu_ve_lap_trinh_web
8234 tai lieu_ve_lap_trinh_web
8234 tai lieu_ve_lap_trinh_web
8234 tai lieu_ve_lap_trinh_web
8234 tai lieu_ve_lap_trinh_web
8234 tai lieu_ve_lap_trinh_web
8234 tai lieu_ve_lap_trinh_web
8234 tai lieu_ve_lap_trinh_web
8234 tai lieu_ve_lap_trinh_web
8234 tai lieu_ve_lap_trinh_web
8234 tai lieu_ve_lap_trinh_web
8234 tai lieu_ve_lap_trinh_web
8234 tai lieu_ve_lap_trinh_web
8234 tai lieu_ve_lap_trinh_web
8234 tai lieu_ve_lap_trinh_web
8234 tai lieu_ve_lap_trinh_web
8234 tai lieu_ve_lap_trinh_web
8234 tai lieu_ve_lap_trinh_web
8234 tai lieu_ve_lap_trinh_web
8234 tai lieu_ve_lap_trinh_web
8234 tai lieu_ve_lap_trinh_web
8234 tai lieu_ve_lap_trinh_web
8234 tai lieu_ve_lap_trinh_web
8234 tai lieu_ve_lap_trinh_web
8234 tai lieu_ve_lap_trinh_web
8234 tai lieu_ve_lap_trinh_web
8234 tai lieu_ve_lap_trinh_web
8234 tai lieu_ve_lap_trinh_web
8234 tai lieu_ve_lap_trinh_web
8234 tai lieu_ve_lap_trinh_web
8234 tai lieu_ve_lap_trinh_web
8234 tai lieu_ve_lap_trinh_web
8234 tai lieu_ve_lap_trinh_web
8234 tai lieu_ve_lap_trinh_web
Upcoming SlideShare
Loading in...5
×

8234 tai lieu_ve_lap_trinh_web

481

Published on

Published in: Education, Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
481
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
31
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Transcript of "8234 tai lieu_ve_lap_trinh_web"

  1. 1. COMPUTER LEARNING CENTERWWW.HUUKHANG.COM Moân hoïc: Java Server Pages Baøi 1 Nhöõng vaán ñeà chính seõ ñöôïc ñeà caäp trong khoaù hoïc: Caøi ñaët JRUN. o Caøi ñaët JDK1.3. o Caøi ñaët JRUN. o Caáu hình öùng duïng JSP Giôùi thieäu JSP. o Script. o Khai baùo chæ muïc.1. CAØI ÑAËT JRUN 1.1. Caøi ñaët JDK Ñeå caáu hình JRUN 4.0 treân Windows, tröôùc tieân baïn caøi ñaët boä JDK1.3 hay JDK1.4 leân ñóa cöùng C hay D, sau khi caøi ñaët thaønh coâng baïn neân boot maùy laïi, trong oå ñóa seõxuaát hieän thö muïc JDK1.3 vôùi caùc thö vieän cuûa chuùng. 1.2. Caøi ñaët JRUN Ñeå caøi ñaët JRUN, baïn mua ñóa CD vôùi öùng duïng JRUN 4.0, sau ñoù caøi ñaët chuùngvaøo maùy coù caøi ñaët JDK. Trong khi caøi ñaët thì JRUN coù yeâu caàu choøn thö muïc nôi baïn caøiñaët JDK. Trong khi caøi ñaët JRUN, coù theå yeâu caàu baïn caøi ñaët chuùng döôùi daïng moät dòch vuïcuûa hôïp ñoàng haønh (maëc ñònh laø Yes), khi ñoù JRUN seõ caøi ñaët vôùi hai dòch vuï laø JRUNAdmin vaø JRUN Default trong cöûa soå Services (trong Control Panel hay AdministrativeTools) cuûa heä ñieàu haønh Windows nhö hình 1-1 sau: Hình 1-1: Dòch vuï JRUN trong Servies Giaùo vieân: Phaïm Höõu Khang
  2. 2. COMPUTER LEARNING CENTERWWW.HUUKHANG.COM Baïn phaûi baûo daûm raèng chuùng ñang ôû cheá ñoä Started, trong tröôøng hôïp ñang ôû cheáñoä STOP thì baïn choïn dòch vuï naøy vaø nhaán nuùt Start. Neáu JRUN ñang ôû cheá ñoä Start thì baïn seõ goõ http://localhost:8000 treân trình duyeätvaø cung caáp username cung vôùi password ñeå ñaêng nhaäp vaøo maøn hình uqaûn trò JRUN neáumuoán chöông. Neáu JRUN Default Server ñang ôû cheá ñoä Start thì baïn coù theå goõ ñòa chæ sau treânbrowser http://localhost:8100 ñeå chaïy öùng duïng maëc ñònh cuûa JSP. Ngoaøi ra, neáu baïn khoâng caøi ñaët JRUN nhö moät dòch vuï cuûa heä ñieàu haønh Windowsthì moãi laàn baïn muoán chaïy öùng duïng JSP thì phaøi Start noù leân baèng caùch choïn Start |Programs | JRUN 4.0 | JRUN Default Server hay JRUN Admin Server roi sau do khôûiñoäng JRUN Default Server, phaàn naøy seõ trình baøy trong phaàn caáu hình. 1.3. Caáu hình öùng duïng JSP Ñeå trieäu goïi trang JSP (teân môû roäng .jsp) treân trình duyeät, baïn coù theå caáu hình moättorng hai caùch sau: 1.3.1. Caùch 1: Neáu khoâng muoán taïo öùng duïng Web cho rieâng mình maø söû duïng thö muïc maëc ñònhthì baïn coù theå khai baùo caùc trang JSP vaø boû vaøo thö muïc JRUN4/Servers/Defaul/ default-ear/ default-war/. Chaúng haïn, trong tröôøng hôïp naøy chuùng ta khai baùo trang test.jsp vôùi noäi dung nhösau: <HTML> <HEAD> <title>Test JSP</title> </HEAD> <BODY> <%=”Hello JSP”%> </BODY> </HTML> Ñeå kieåm tra trang JSP naøy, baïn khai baùo treân trình duyeät nhö sau: http://localhost1:8100/test.jsp Tuy nhieân, baïn coù theå khai baùo caùc thö muïc con beân trong cuûa thö muïc maëc ñònhnaøy, sau ñoù trieäu goïi treân trình duyeät theo teân thö muïc, chaúng haïnhttp://localhost:8100/qlda/danhmucphongban.jsp. 1.3.2. Caùch 2: Ñeå caáu hình öùng duïng JSP treân JRUN baïn coù theå thao taùc theo caùc böôùc sau: 1. Baïn ñaêng nhaäp vaøo JRUN Admin vôùi http://localhost:8000 baèng caùch cung caáp username/pwd nhö hình 1-2 sau. Giaùo vieân: Phaïm Höõu Khang
  3. 3. COMPUTER LEARNING CENTERWWW.HUUKHANG.COM Hình 1-2: Ñaêng nhaäp JRUN Admin 2. Taïo thö muïc löu tröõ web site treân oå ñóa, chaúng haïn trong tröôøng hôïp naøy khai baùo thö muïc jspsample nhö hình 1-3. Hình 1-3: Khai baùo thö muïc ñeå löu tröõ trang JSP Giaùo vieân: Phaïm Höõu Khang
  4. 4. COMPUTER LEARNING CENTERWWW.HUUKHANG.COM 3. Choïn vaøo menu Home, JRUN seõ lieät keâ danh saùch caùc server ñang caáu hình treân JRUN nhö hình 1-4. Hình 1-4: Danh saùch caùc Server treân JRUN 4. Choïn URL coù teân laø Create New Server treân menu naèm ôû ñaàu trang, trong cöûa soå vöøa xuaát hieän (Creating a New JRun Application Server) baïn cung caáp caùc tham soá trong hình 1-5 nhö sau: • Host Name:localhost (hoaëc ñòa chæ IP, teân server) • JRun Server Name: Choïn teân cuûa öùng duïng, ví duï trong tröôøng hôïp naøy choïn jspsample. • JRun Server Directory: Thö muïc cuûa öùng duïng baïn vöøa taïo ra, chaúng haïn D:/jspsample (hay D:/thuvien/hr). 5. Nhaán nuùt Create chôø trong giaây laùt cöûa soå cuûa HOME page seõ xuaát hieän teân öùng duïng web baïn vöøa taïo (jspsample), nhaán nuùt Start ñeå khôûi ñoäng öùng duïng naøy. Trong tröôøng hôïp phaùt sinh loãi do port bò ñuïng ñoä, maëc ñònh cuûa site default laø 8100 (admin laø 8000), khi baïn taïo öùng duïng xong, moät port naøo ñoù ñöôïc gaùn cho öùng duïng cuûa baïn vì duï nhö 8101 nhö hình 1-6. Tuy nhieân, baïn coù theå thay ñoåi port naøy baèng caùch edit ñeå caäp nhaät. Giaùo vieân: Phaïm Höõu Khang
  5. 5. COMPUTER LEARNING CENTERWWW.HUUKHANG.COM Hình 1-5: Taïo website Hình 1-6: Taïo öùng duïng JSP thaønh coâng Sau khi taïo thaønh coâng, teân öùng duïng vöøa taïo seõ xuaát hieän trong danh saùch servercuûa JRUN nhö hình 1-7. Giaùo vieân: Phaïm Höõu Khang
  6. 6. COMPUTER LEARNING CENTERWWW.HUUKHANG.COM Hình 1-7: Teân site vöøa taïo Xem treân baûng danh saùch server öùng vôùi jspsample coù phaàn HTTP Port laø 8101,sau ñoù treân http, baïn goõ http://localhost:8101/test.jsp, keát quaû seõ xuaát hieän nhö hình 1-8. Hình 1-8: Keát quaû trang test.jsp Giaùo vieân: Phaïm Höõu Khang
  7. 7. COMPUTER LEARNING CENTERWWW.HUUKHANG.COM2. GIÔÙI THIEÄU JSP 2.1. Yeâu caàu JSP döïa treân cuù phaùp cuûa ngoân ngöõ laäp trình Java, chính vì vaäy khi laøm vieäc vôùiJSP baïn phaûi laø ngöôøi coù kieán thöùc veà ngoân ngöõ naøy. Neáu baïn xaây döïng öùng duïng JSPcoù keát noái cô sôû döõ lieäu thì kieán thöùc veà cô sôû döõ lieäu SQL Server hay Oracle laø ñieàu caànthieát. 2.2. Giôùi thieäu JSP laø kòch baûn trình chuû (Server Script) ñöôïc chaïy treân neàn JDK 1.3 trôû veà sau,cuøng vôùi öùng duïng Web Server ñeå quaûn lyù chuùng. Web Server thöôøng söû duïng laø Tomcate,Java Web Server, JRUN, WebLogic vaø Apache, ... Tieàn thaân cuûa JSP laø xuaát phaùt töø Java Servlet, khi laøm vieäc vôùi Java Servlet thìhaàu heát caùc laäp trình viweân gaëp khoù khaên khi xuaát nhaäp döõ lieäu, cuï theå laø giao dieän vôùingöôøi söû duïng. Chính vì vaäy SUN Microsystem cung caáp kòch baûn JSP laø phaàn môû roängcuûa Java Servlet ñeå cho pheùp quaù trình laäp trình öùng duïng Web trôû neân ñôn giaûn hôn.Tuy nhieân, nhöõng trang JSP naøy khi bieân dòch ñeà thoâng qua trang trung gian laø JavaSevrlet. 2.3. Bieân dòch trang JSP Khi ngöôøi söû duïng goïi trang JSP laàn ñaàu tieân, Web Server trieäu goïi trình bieân dòchdòch trang JSP (trong tröôøng hôïp naøy laø JDK) thaønh taäp tin Java, keá ñeán taäp tin java(Java Servlet) naøy seõ bieân dòch ra Class . Sau ñoù, trang class thöïc thi vaø traû veà keát quaûcho ngöôøi söû duïng nhö hình 1-9. Java Call Engine Parse Web (JSK) Server Request Taäp tin JSP Taäp tin Instantiate Java Servlet Request Compile Response Taäp tin Class Response Instantiate Process and Render Hình 1-10: Quaù trình bieân dòch trang JSP Giaùo vieân: Phaïm Höõu Khang
  8. 8. COMPUTER LEARNING CENTERWWW.HUUKHANG.COM 2.4. Kòch baûn (script) Noäi dung cuûa JSP coù theå khai baùo laãn loän vôùi HTML, chính vì vaäy baïn söû duïng caëpdaáu <%= %> ñeå khai baùo maõ JSP. Chaúng haïn, chuùng ta khai baùo: <br> 1-Giaù trò bieán Str: <%=str%> 2-Giaù trò bieán i: <%=i%> 3-Giaù trò cuõ theå: <%=10%> Trong tröôøng hôïp coù nhieàu khai baùo, baïn söû duïng Scriptlet, ñeàu naøy coù nghóa laø söûduïng caëp daáu treân nhö <%%> vôùi caùc khai baùo JSP vôùi cuù phaùp cuûa Java nhö sau: <% int i=0; String str=”Select * from tblABC”; out.println(str); %> -Khai baùo treân laø Scriptlet Giaù trò cuûa i: <br> <%=i%> -Khai baùo naøy laø Script3. KEÁT LUAÄN Trong baøi naøy, chuùng ta taäp trung tìm hieåu caùch caøi ñaët JSK vaø JRUN, sau ñoù caáuhình öùng duïng JSP trong JRUN hay söû duïng caáu hình maëc ñònh cuûa chuùng. Ngoaøi ra, baïn laøm quen caùch khai baùo maõ JSP trong trang .jsp cuøng vôùi script hayscriptlet. Giaùo vieân: Phaïm Höõu Khang
  9. 9. COMPUTER LEARNING CENTER WWW.HUUKHANG.COM Moân hoïc: Java Server Pages Baøi 2 Baøi hoïc naøy chuùng ta seõ laøm quen vaø tìm hieåu cuù phaùp vaø moät soá phöông thöùc cô baûn cuûa JSP: Caâu leänh. Bieán vaø kieåu döõ lieäu. Haèng. Baûng daõy Moät soá phöông thöùc cô baûn1. KHAÙI NIEÄM VEÀ CUÙ PHAÙP JSP Cuù phaùp JSP chính laø cuù phaùp trong ngoân ngöõ Java, caùc baïn laøm quen vôùi ngoânngöõ Java thì coù lôïi theá trong laäp trình JSP. Ñeå laäp trình baèng ngoân ngöõ JSP caàn chuù yù nhöõng ñieåm sau: Cuoái caâu leänh coù daáu ; Moãi phöông thöùc ñeàu baét ñaàu { vaø ñoùng baèng daáu } Khi khai baùo bieán thì kieãu döõ lieäu naèm tröôùc teân bieán Neân coù giaù trò khôûi ñaàu cho bieán khai baùo Phaûi coù chi chuù (comment) cho moãi feature môùi Söû duïng daáu // ñeå giaûi thích cho moãi caâu ghi chuù Söû duïng /* vaø */ cho moãi ñoaïn ghi chuù Khai baùo bieán coù phaân bieät chöõ hoa hay thöôøng Teân file vaø lôùp cuõng nhö nhö khai baùo bieán2. KHAI BAÙO BIEÁN Khi thöïc hieän moät vieäc khai baùo bieán trong java, baïn caàn phaûi bieát tuaân thuû quyñònh nhö: kieãu döõ lieäu tröôùc teân bieán vaø coù giaù trò khôûi ñaàu Xuaát phaùt töø nhöõng ñieàu ôû treân, khai baùo bieán trong Java nhö sau: Datatype variable name [initial value]; int licount=0; String lsSQL=”Select * from tblusers where active=1”; double account[]; boolean checkerror=false;3. KIEÅU DÖÕ LIEÄU Baûng caùc kieåu döõ lieäu thoâng thöôøng Type Bytes Range Boolean 2 Giaùo vieân: Phaïm Höõu Khang
  10. 10. COMPUTER LEARNING CENTER WWW.HUUKHANG.COM Byte 1 Char 2 Double 8 cho aâm, 4 soá döông Float 4 Int 4 Long 8 Short 2 Connection Statement ResultSet 3.1. Kieåu Array Kieãu maûng laø moät maûng soá lieäu do ngöôøi duøng ñònh nghóa, chuùng coù cuù phaùp nhö sau: double account[]; // maûng soá double hay coù theå khai baùo nhö sau double account[]={0,0,1,45.95,6.5}; thöù töï index trong maûng baét ñaàu töø vò trí 0. Neáu nhö baïn khai baùo maûng hai chieàu, thì cuù phaùp khai baùo nhö sau: double account[][]=new double[2][5]; Chaúng haïn khai baùo nhö sau: <% double account[][]=new double[2][100]; account[0][3]=43.95; account[1][3]=43.95000; out.println(“Account 0-3 is ” + account[0][3] ); out.println(“Account 1-3 is ” + account[1][3] ); %> Khai baùo bieán String <% String strSQL=”select * from tblusers ”; String strWhere=” where active=0”; Giaùo vieân: Phaïm Höõu Khang
  11. 11. COMPUTER LEARNING CENTER WWW.HUUKHANG.COM out.println(“SQL Statement is ” + strSQL+strWhere ); %> Khai baùo vôùi nhieàu loaïi döõ lieäu <% boolean bo; byte by; char c; short s; int i; long l; float f; double d; object o; int[] intArray = new int[2]; object[] objectArray = new Object[2]; out.println("boolean: "+bo); out.println("byte: "+by); out.println("char: "+c); out.println("short: "+s); out.println("int: "+i); out.println("long: "+l); out.println("float: "+f); out.println("double: "+d); out.println("Object: "+o); out.println("int[2]: "+intArray[0]+" "+intArray[1]); out.println("Object[2]: "+objectArray[0]+" "+objectArray[1]); %>4. CAÙC PHÖÔNG THÖÙC VAØ PHÖÔNG THÖÙC TRONG JAVA 4.1. Phöông thöùc traû veà chieàu daøi maûng Khi quan taâm ñeán chieàu daøi cuûa maûng thì baïn caàn theo cuù phaùp sau: Array.length Giaû söû raèng, baïn khai baùo bieán vôùi chieàu daøi maõng moät vaø hai chieàu <% double account[]={88,11,2.5,77}; double sum; sum=account.length; Giaùo vieân: Phaïm Höõu Khang
  12. 12. COMPUTER LEARNING CENTER WWW.HUUKHANG.COM out.println(“Length of Account is ” + sum);%> 4.2. Chuyeån sang kieåu chuoãi Khi baïn caàn chuyeãn ñoåi töø kieåu soá lieäu khaùc sang kieåu chuoãi, thì caàn khai baùo nhösau: String.valueOf(data); Ví duï chuyeån ñoåi kieåu sang kieåu chuoãi <% double account[]={88,11,2.5,77}; String str; str=String.valueOf(account[2]); out.println(“String of Account 2 is ” + str); %> 4.3. Noái chuoãi Khi caàn thieát noái hai hay nhieàu chuoåi laïi vôùi nhau, baïn söû duïng phöông thöùcconcat, thoâng thöôøng chuùng ta hay dung pheùp toaùn + ñeå noái hai hay nhieàu chuoãi laïi vôùinhau. Cuù phaùp concat nhö sau: Str1.conact(Str2); Keát noái chuoãi <% String str1=”Select * from tblemplyers”; String str2=” where paid=1”; str1=str1.conact(str2); out.println(“String of Str1 is ” + str1); %> 4.4. Chuoãi conKhi baïn caàn laáy moät chuoãi con trong chuoãi lôùn, baïn caàn duøng ñeán phöông thöùc vôùi cuùphaùp nhö sau: str1=str2.substring(start,chieàu daøi)Ví duï khai baùo ñeå laáy chuoãi con <% String str1=”Select * from tblemplyers”; String str2=str1.substring(9,5); out.println(“Sub String of Str1 is ” + str2); Giaùo vieân: Phaïm Höõu Khang
  13. 13. COMPUTER LEARNING CENTER WWW.HUUKHANG.COM %>Nhöng neáu coù nhu caàu laáy ra moät kyù töï naøo ñoù trong chuoãi, thì baïn khoâng caàn duøngsubstring maø chæ söû duïng cuù phaùp charAt nhö sau: Char=Str1.charAt(number);Chaúng haïn, khai baùo ñeå laáy 1 kyù töï <% String str1=”Select * from tblemplyers”; String str2=str1.charAt(5); Out.println(“charAt of Str1 is ” + str2); %> 4.5. Chuyeãn ñoåi String sang Array Thoâng thöôøng trong khi tính toaù chuoãi, ñoâi khi cuõng caàn ñeán chuùng nhö moät maõng,lyù do ñoù chuùng ta coù phöông thöùc chuyeãn ñoåi nhö sau: char char1[]=str1.toCharArray(); Chuyeån chuoãi sang maûng <% String str1=”Select * from tblemplyers”; char char1=str1.toCharArray(); out.println(“Char of Str1[1] is ” + char1[5]); %> 4.6. Thay theá chuoãi Khi caàn thay theá moät chuoãi con naøo ñoù trong chuoãi meï thaønh chuoãi con khaùc, chuùngta caàn ñeán phöông thöùc replace coù cuù phaùp nhö sau: str1=str2.replace(“’”,”’’”); str1=str2.replace(“a”,”k”); Ví duï khai baùo thay theá chuoãi <% String str1=”Select * from tblemplyurs”; str1= replaceString (str1,“u”,”o”); str1= replaceString (str1,“’”,”’’”); out.println(“Char of Str1 is ” + str1); %> Trong ñoù, khai baùo phöông thöùc replaceString nhö sau Giaùo vieân: Phaïm Höõu Khang
  14. 14. COMPUTER LEARNING CENTER WWW.HUUKHANG.COM <%! public String replaceString(String sStr,String oldStr,String newStr) { sStr=(sStr==null?"":sStr); String strVar=sStr; String tmpStr=""; String finalStr=""; int stpos=0,endpos=0,strLen=0; while (true) { strLen=strVar.length(); stpos=0; endpos=strVar.indexOf(oldStr,stpos); if (endpos==-1) break; tmpStr=strVar.substring(stpos,endpos); tmpStr=tmpStr.concat(newStr); strVar=strVar.substring(endpos+oldStr.length()>sStr.length()?endpos:endpos+old Str.length(),strLen); finalStr=finalStr.concat(tmpStr); stpos=endpos; } finalStr=finalStr.concat(strVar); return finalStr; } %> 4.7. Vò trí kyù töï trong chuoãi Khi caàn bieát vò trí cuõa kyù töï hay chuoãi con naøo ñoù trong chuoãi, baïn söû duïng phöôngthöùc sau: virti=str1.indexOf(“select”); virti=str1.indexOf(“o”); Chaúng haïn tìm vò trí chuoãi hay kyù töï trong Chuoãi <% Giaùo vieân: Phaïm Höõu Khang
  15. 15. COMPUTER LEARNING CENTER WWW.HUUKHANG.COM String str1=”Select * from tblemplyurs”; int vitri=str1.indexOf(“o”); Out.println(“Location of ”o” is ” + vitri); %> 4.8. Kieåu chöõ Neáu muoán chuyeãn ñoåi chöõ hoa sang thöôøng hay ngöôïc laïi, thì baïn duøng phöông thöùccoù cuù phaùp nhö sau: Töø hoa sang thöôøng: str1.toLowerCase(); Töø thöôøng saung hoa: str1.toUpperCase(); Ví duï <% String str1=”Select * from tblemplyors”; str1=str1.toLowerCase(); out.println(“LowerCase is ” + str1); str1=str1.toUpperCase(); out.println(“UpperCase is ” + str1); %>5. TOÙM TAÉT Trong baøi hoïc naøy chuùng toâi giôùi thieäu ñeán cho caùc baïn caùch khai baùo bieán, caùc kieåudöõ lieäu, ñoàng thôøi giuùp cho caùc baïn nhöõng phöông thöùc treân chuoãi vaø kyù töï trong JSP. Giaùo vieân: Phaïm Höõu Khang
  16. 16. COMPUTER LEARNING CENTER WWW.HUUKHANG.COM Baøi 3 PHEÙP TOAÙN VAØ PHAÙT BIEÅU COÙ ÑIEÀU KIEÄN TRONG JSP Chöông naøy chuùng ta seõ laøm quen vaø tìm hieåu toaùn töû, phaùt bieåu coù ñieàu kieän vaø voøng laëp cuûa JSP. Nhöõng vaán ñeà chính seõ ñöôïc ñeà caäp trong baøi hoïc naøy Toaùn töû. Pheùp gaùn trong Java Phaùt bieåu coù ñieàu khieån. Voøng laëp.1. KHAÙI NIEÄM VEÀ CAÙC TOAÙN TÖÛ TRONG JSP Khi baïn laäp trình treân JSP laø söû duïng cuù phaùp cuûa ngoân ngöõ Java. Töôngtöï nhö nhöõng ngoân ngöõ laäp trình khaùc, toaùn töû giuùp cho baïn thöïc hieän nhöõngpheùp toaùn nhö soá hoïc hay treân chuoãi. Baûng sau ñaây giuùp cho baïn hình dung ñöôïc nhöõng toaùn töû söû duïng tronJava Java ñòng nghóa toaù töû toaùn hoïc, quan heä, soá hoïc, bit, caste, class, selection,vaø noät soù pheùp toaùn gaùn. Loaïi toaùn töû Toaùn töû Dieãn giaûi Ví duï + Addition a + b - Subtraction a - b Arithmetic * Multiplication a * b / a / b Division % a % b Modulus > Greater than a > b < Less than a < b >= Greater than or equal a >= b Relational <= a <= b Less than or equal != a != b == Not equal a == b Equal ! !a Logical && Not a && bhuukhang@yahoo.com 3-1
  17. 17. COMPUTER LEARNING CENTER WWW.HUUKHANG.COM || AND a || b OR ~ Complement ~a & AND a & b Bit- | OR a | b ^ Exclusive OR a ^ b manipulation << Left shift a << b >> a >> B >>> Right shift a >>> b Zero-filled right shift Assignment = Increment and assign a = b ++ Decrement and assign a++ -- Add and assign a-- += Subtract and assign a += b -= a -= b Multiply and assign *= a *= b /= Divide and assign a /= b Assignment %= Take modulus and assign a %= b |= OR and assign a |= b &= AND and assign a &= b ^= XOR and assign a ^= b <<= a <<= b >>= Left shift and assign a >>= b >>>= Right shift and assign a >>>= b Zero-filled left shift and assign Caste (type) Convert to type (char) b instance Instance of Is instance of class? a instanceof b Create a new object of a Allocation new new A() class Selection ? : If...Then selection a ? b : c2. GIÔÙI THIEÄU TOAÙN TÖÛ Khi noùi ñeán toaùn töû, chuùng ta luoân lieân töôûng ñeán thöù töï xöû lyù, cuõng nhötrong toaùn hoïc, toaùn töû trong java cuõng co ñoä öu tieân add-subtract-multi-divide. 2.1. Toaùn töû AND Khi thöïc hieän moät vieäc taêng leân giaù trò thì baïn söû duïng cuù phaùp nhö sau: int i=0,j=0;huukhang@yahoo.com 3-2
  18. 18. COMPUTER LEARNING CENTER WWW.HUUKHANG.COM j=i++;// i taêng sau khi gaùn i vaøo j, chính vì vaäy sau khi gaùn i vaøo j, j vaãnkhoâng thay ñoåi j=++i;// i taêng tröôùc khi gaùn i vaøo j, chính vì vaäy sau khi gaùn i vaøo j, j thayñoåi.Ví duï 3.1: Pheùp toaùn AND. <% int i=0,j=0; j=i++; out.println(“Value of j is ” + j); j=++i; out.println(“Value of j is ” + j); %> 2.2. Toaùn töû Not: ~ And ! Toaùn töû ~ ñaûo nghòch taát caû caùc bit cuûa tham soá, coøn toaùn töû ! ñaûo nghòchgiaù trò cuûa giaù trò tröôùc ñoùVí duï 3.2: Pheùp toaùn ~ and ! <% short i=32767; boolean b=true; out.println(“Value of ~ short is ” + ~i); out.println(“Value of !b is ” +!b); %> 2.3. Toaùn töû nhaân vaø chia: * and / Baïn coù theå tham khaûo ví duï sauVí duï 3.3: Pheùp toaùn * vaø /, + vaø -<% int i=767; double j=10.5; out.println(“Value of multi is ” + i*j); out.println(“Value of divide is ” +i/5);huukhang@yahoo.com 3-3
  19. 19. COMPUTER LEARNING CENTER WWW.HUUKHANG.COM out.println(“Value of add is ” +i+5); out.println(“Value of subtract is ” +i-5); %> 2.4. Toaùn töû modulus: % Khi chia moät soá cho moät soá, baïn caàn keát quaû laø soá dö cuûa pheùp chia ñoù thìduøng toaùn töû modulusVí duï 3.4: Pheùp toaùn % <% int i=10; int j=3; out.println(“Value of i%j is ” + i%j); %> 2.5. Toaùn töû quan heä: >=,>,<,<=,==,!= Khi caàn so saùnh keát quaû giöõa hai toaùn haïn vôùi nhau, thoâng thöôøng baïn nghóñeán pheùp toaùn so saùnh nhö laø baèng, lôùn hôn, nhoû hôn, ví duï sau dieãn giaûi chobaïn caùc toaùn töû treân:Ví duï 3.5: Pheùp toaùn >,>=,<,<=,==,!=<% int i=10; int j=3; if(i>=j) out.println(“result is true”); else out.println(“result is false”); if(i!=j) out.println(“result is not equals”); else out.println(“result is equals”);%>huukhang@yahoo.com 3-4
  20. 20. COMPUTER LEARNING CENTER WWW.HUUKHANG.COM 2.6. Toaùn töû && vaø || && laø toaù töû and trong soù hoïc || laø toaùn töû or trong soá hoïc Hai toaùn töû naøy raát thöôøng duøng trong khi laäp trình treân Java, ví duï döôùiñaây dieãn giaûi cho baïn ñaày ñuû hai toaùn töû naøy. Chuù yù raèng khi söû duïng toaùn töûñeàu coù keøm phaùt bieåu coù ñieàu kieän.Ví duï 3.6: Pheùp toaùn && vaø || <% boolean b=true; int j=3; if((j>=3) &&(b!=true)) out.println(“result is true”); if((j<3) ||(b==true)) out.println(“result is false”); %> 2.7. Toaùn töû ?: Toaùn töû naøy thay theá cho phaùt bieåu coù ñieàu kieän if.. then .. else, khi baïncaàn laáy keát quaû theo ñieàu kieän naøo ñoù, neáu coù theå khoâng caàn phaùt bieåu if-else,thì haõy thay theá baèng toaùn töû ?:, cuù phaùp cuûa chuùng nhö sau: str1=str2.equals(”khang”)?”Welcome to Java”:”Good bye JSP”;Ví duï 3.7: Pheùp toaùn ?:<% String str1=”Pham Huu Khang”; String str2 =“Khang”; out.println(“result is true”+ (str1.equals(str2)?”Welcome to Java”:”Good bye JSP”));%>huukhang@yahoo.com 3-5
  21. 21. COMPUTER LEARNING CENTER WWW.HUUKHANG.COM3. PHEÙP GAÙN Khi gaùn moät giaù trò hay bieán vaøo moät bieán trong Java, baïn phaûi duøng ñeánpheùp gaùn, nhöng trong Java cuõng gioángnhö trong C thì coù nhöõng pheùp gaùn ñöôïcñôn giaûn hoaù hay noùi ñuùng hôn laø chuaån hoaù ñeå ruùt goïn laïi trong khi vieát. 3.1. Pheùp gaùn thoâng thöôøng nhaát nhö sau: int j=i; String str1 =” Hello!”; boolean b=true; 3.2. Pheùp gaùn theâm moät giaù trò laø 1 int k=0; k++; 3.3. Pheùp gaùn theâm moät vôùi chính noù giaù trò int k=0,j=1; k+=j; töông töï nhö vaäy chuùng ta coù k*=2, nghóa laø k=k*24. PHAÙT BIEÅU COÙ ÑIEÀU KIEÄN Caùc phat bieåu coù ñieàu kieän nhö : IF (ñieàu kieän) { caâu leänh; } IF (ñieàu kieän) { caâu leänh; }ELSE { caâu leänh; } switch (ñieàu kieän) { case Value1 caâu leänh1; break; } While (ñieàu kieän) Do - While (ñieàu kieän) Break Continuehuukhang@yahoo.com 3-6
  22. 22. COMPUTER LEARNING CENTER WWW.HUUKHANG.COM 4.1. Phaùt bieåu IF (ñieàu kieän) { caâu leänh; } Söû duïng phaùt bieåu if ñeå choïn loïc keát quaû khi ñieàu kieän ñuùng, ví duï nhö sau:Ví duï 3.8: Phaùt bieåu IF<% boolean b=true; int j=3; if((j>=3) &&(b!=true)) out.println(“result is true”); if((j<3) ||(b==true)) out.println(“result is false”); %> 4.2. Phaùt bieåu IF (ñieàu kieän) { caâu leänh; }ELSE { caâu leänh; } Söû duïng phaùt bieåu if ñeå choïn loïc keát quaû khi ñieàu kieän ñuùng, vaø xuaát ra keátquaû khi ñieàu kieän sai, ví duï nhö sau:Ví duï 3.9: Phaùt bieåu IF - ELSE<% boolean b=true; int j=3; if((j>=3) &&(b!=true)) out.println(“result is true”); else out.println(“result is false”); %> 4.3. Phaùt bieåu Switch (ñieàu kieän) Phaùt bieåu switch laø phaàn cuûa phaùt bieåu if else nhieàu nhaùnh, khi coù nhieàuñieàu kieän choïn löïa thì baïn söû duïng switch, cuù phaùp cuûa chuùng nhö sau: Switch(ñieàu kieän) {huukhang@yahoo.com 3-7
  23. 23. COMPUTER LEARNING CENTER WWW.HUUKHANG.COM case Value1 caâu leänh1; break; case Value2 caâu leänh2; break; … default: caâu leänh default; }Break: duøng ñeå thoaùt ra khoûi switch khi thoaû moät case naøo ñoù trong switch,default: khi khoâng coù baát kyø giaù trò naøo thoaûn trong caùc case thì giaù trò cuoái cuønglaø defaule statementVí duï 3.10: Phaùt bieåu Switch<% int j=3; switch(j) { case 1: out.println(“Today is Monday”); break; case 2: out.println(“Today is Thurday”); break; case 3: out.println(“Today is Tueday”); break; default: out.println(“Today is Sunday”); } %>huukhang@yahoo.com 3-8
  24. 24. COMPUTER LEARNING CENTER WWW.HUUKHANG.COM 4.4. Phaùt bieåu While(ñieàu kieän) Phaùt bieåu while thöïc thi nhöõng caâu leänh trong while khi ñieàu kieän coø ñuùng.Ví duï 3.11: Phaùt bieåu While<% int j=1; while(j<=30) { out.println(“Number of j” + j); j++; %> 4.5. Phaùt bieåu For Phaùt bieåu for duøng cho voøng laëp coù giôùi haïn cho tröôùc, cuù phaùp coù daïng nhösau: int i=0; for(i=1;i<10;i++) { caâu leänh; }Ví duï 3.12: Phaùt bieåu For<% int mang[]={3,5,6,7,8,9}; for (int j=0;j<mang.length;j++) { out.println(“Phan tu mang “+j+” : ”+mang[j]); } %>5. TOÙM TAÉT Trong baøi hoïc naøy chuùng toâi giôùi thieäu ñeán cho caùc baïn caùc pheùp gaùn, caùc toaùntöû, ñoàng thôøi giuùp cho caùc baïn hieåu theâm vaøo caùc phaùt bieåu coù ñieàu kieän nhöwhile, for, switch, ….huukhang@yahoo.com 3-9
  25. 25. COMPUTER LEARNING CENTER WWW.HUUKHANG.COM Baøi 4 ÑOÁI TÖÔÏNG SESSION, REQUEST, RESPONSE TRONG JSP Chöông naøy chuùng ta seõ laøm quen caùc ñoái töôïng thöôøng söû duïng trong quaù trình thieát keá trang JSP. Nhöõng vaán ñeà chính seõ ñöôïc ñeà caäp trong baøi hoïc naøy Ñoái töôïng Request. Ñoái töôïng Response.1. ÑOÁI TÖÔÏNG REQUEST Khi muoán laáy giaù trò töø moät theû nhaäp lieäu ñeä trình (submit) töø form hay töø chuoãi QueryString, ñieàu naøy coù nghóa laø cho pheùp laáy giaù trò töø client gôûi leân server, ñoái tröôøng hôïp naøy baïn söû duïng ñoái töôïng Request. Ñoái töôïng naøy thuoäc lôùp javax.servlet.ServletRequest. 1.1. Request vôùi töø theû nhaäp lieäu Ví duï chuùng ta khai baùo trang HTML hay JSP coù theû form, beân trong theû form khai baùo caùc theû nhaäp lieäu nhö input, select, textarea nhö ví duï 4-1. <%@ page contentType="text/html; charset=UTF-8" %> <html> <head> <title>JSPs Objects</title> <LINK href="style.css" rel=stylesheet> <LINK href="newstyle.css" rel=stylesheet> <META HTTP-EQUIV="Content-Type" CONTENT="text/html ; charset=utf-8"> </head> <body leftmargin="0" topmargin="0" > <tr><td></td><td>Registration</td></tr> <form name=form1 action=ex2.jsp method=post> <table border=0> <tr> <td>Name: </td><td><input type=text name=txtname></td></tr> <tr><td>Province: </td><td><select name=province> <option value=HAN> Ha Noi </option> <option value=HUE> Hue </option> <option value=HCM> Ho Chi Minh </option> </select></td></tr> <tr><td>Description: </td><td> <textarea name=txtdesc cols=30 rows=5></textarea></td> </tr> <tr><td></td><td><input type=submit value="Submit"></td></tr> </table> </form> </body> </html>huukhang@yahoo.com 3-1
  26. 26. COMPUTER LEARNING CENTER WWW.HUUKHANG.COM Khi ngöôøi söû duïng goïi trang JSP naøy treân trình duyeät vaø nhaäp caùc thoâng tin yeâu caàu nhö hình 4-1. Hình 4-1: Nhaäp lieäu Ñeå laáy ñöôïc giaù trò cuûa caùc phaàn ñaõ nhaäp treân hình 4-1, chuùng ta söû duïng phöông thöùc getParameter cuûa ñoái töôïng request nhö ví duï 4-2. <%@ page contentType="text/html; charset=UTF-8" %> <html> <head> <title>JSP</title> <LINK href="style.css" rel=stylesheet> <LINK href="newstyle.css" rel=stylesheet> <META HTTP-EQUIV="Content-Type" CONTENT="text/html ; charset=utf-8"> </head> <body leftmargin="0" topmargin="0" marginwidth="0" marginheight="0"> <h4>Confirmation</h4> <hr size=1><br> <% String name=request.getParameter("txtname"); String province=request.getParameter("province"); String desc=request.getParameter("txtdesc"); out.println("Name is "+ name +"<br>"); out.println("Province is " + province +"<br>"); out.println("Description is " + desc +"<br>"); %> </body> </html> Keát quaû trình baøy nhö hình 4-2 neáu thoâng tin nhaäp gioáng nhö hình 4-1.huukhang@yahoo.com 3-2
  27. 27. COMPUTER LEARNING CENTER WWW.HUUKHANG.COM Hình 4-2: Söû duïng phöông thöùc getParameter 1.2. Request vôùi töø tham soá treân QueryString Töông töï nhö treân, trong tröôøng hôïp baïn muoán laáy caùc giaù trò cuûa caùc tham soá treân QueryString, baïn cuõng söû duïng phöông thöùc getParameter cuûa ñoái töôïng rquest. Chaúng haïn, chuùng ta khai baùo trang JSP coù theû input vaø söû duïng phöông thöùc get trong theû form nhö ví duï 4-3. <%@ page contentType="text/html; charset=UTF-8" %> <html> <head> <title>JSPs Objects</title> <LINK href="style.css" rel=stylesheet> <LINK href="newstyle.css" rel=stylesheet> <META HTTP-EQUIV="Content-Type" CONTENT="text/html ; charset=utf-8"> </head> <body leftmargin="0" topmargin="0" > <tr><td></td><td><b>Tim kiem va Liet ket</b></td></tr> <form name=form1 action=ex4.jsp method=get> <table border=0> <tr> <td>Keyword: </td><td><input type=text name=keyword></td></tr> <tr><td></td><td><input type=submit value="Submit"></td></tr> </table> </form> </body> </html> Khi ngöôøi söû duïng nhaäp moät töø khoaù naøo ñoù vaø nhaán Submit, trang ex4.jsp seõ ñöôïc trieäu goïi. Chaúng haïn, chuùng ta nhaäp töø khoaù laø SQL Server nhö hình 4-3.huukhang@yahoo.com 3-3
  28. 28. COMPUTER LEARNING CENTER WWW.HUUKHANG.COM Hình 4-3: Phöông thöùc GET Khi trang ex4.jsp trieäu goïi, treân chuoãi QueryString xuaát hieän http://localhost:81/jsp/chapter04/ex4.jsp?keyword=SQL+Server nhö hình 4-4. Hình 4-4: Laáy giaù trò töø QueryString Ñeå laáy giaù trò töø chuoãi QueryString, chuùng ta söû duïng phöông thöùc getParemeter cuûa ñoái töôïng request nhö ví duï 4-4. <%@ page contentType="text/html; charset=UTF-8" %> <%huukhang@yahoo.com 3-4
  29. 29. COMPUTER LEARNING CENTER WWW.HUUKHANG.COM // Laáy giaù trò keyword töø trang ex3.jsp String keyword=request.getParameter("keyword"); // Laáy giaù trò sort töø trang QueryString String sort=request.getParameter("sort"); %> <html> <head> <title>JSP</title> <LINK href="style.css" rel=stylesheet> <LINK href="newstyle.css" rel=stylesheet> <META HTTP-EQUIV="Content-Type" CONTENT="text/html ; charset=utf-8"> </head> <body leftmargin="0" topmargin="0" marginwidth="0" marginheight="0"> <h4>Result</h4> <!--Khai baùo caùc link ñeå giöõ laïi keyword vaø khai baùo giaù trò cho tham soá sort--> <a href="ex4.jsp?keyword=<%=keyword%>&sort=ItemName">ItemName</a> <a href="ex4.jsp?keyword=<%=keyword%>&sort=UnitPrice">Unit Price</a> <br> <hr size=1><br> <% // xuaát giaù trò laáy ñöôïc out.println("Keyword is "+ keyword +"<br>"); sort=(sort==null)?"ItemName":sort; out.println("Sort by " + sort +"<br>"); %> </body> </html> 1.3. Request vôùi maûng tham soá Neáu nhö coù nhieàu theû treân form hay tham soá treân QueryString cuøng teân, chuùng ta phaûi söû duïng phöông thöùc getParameterValues cuûa ñoái töôïng request. Ví duï, chuùng ta khai baùo trang JSP coù nhieàu theû input daïng checkbox cuøng teân nhöng khaùc giaù trò nhö ví duï 4-5. <%@ page contentType="text/html; charset=UTF-8" %> <html> <head> <title>JSPs Objects</title> <LINK href="style.css" rel=stylesheet> <LINK href="newstyle.css" rel=stylesheet> <META HTTP-EQUIV="Content-Type" CONTENT="text/html ; charset=utf-8"> </head> <body leftmargin="0" topmargin="0" > <table width="100%" border="0" cellspacing="0" cellpadding="0"> <form action=ex6.jsp method=post> <tr><td><b>#</b></td><td><b>DepartmentID</b></td><td><b>Department Name</b></td></tr> <tr><td colspan=3><hr size=1></td></tr> <% int i=0; while(i<10) { out.println("<tr><td width=50 valign=top><input type=checkbox "): out.println("name=chkid value="+i+"></td>"); out.println("<td width=100 valign=top>"+ i +"</td>"); out.println("<td width=150 valign=top>Phong ban thu " + i+ " </td><tr>"); i++; } %>huukhang@yahoo.com 3-5
  30. 30. COMPUTER LEARNING CENTER WWW.HUUKHANG.COM <tr><td colspan=3><hr size=1></td></tr> <tr><td colspan=3><input type=submit value="Delete"></td></tr> </table> </form> </body> </html> Khi trieäu goïi trang JSP naøy treân trình duyeät, baèng caùch choïn moät vaøi phoøng ban ñeå xoaù baïn coù giao dieän nhö hình 4-5. Hình 4-5: Theû cuøng teân vaø khaùc giaù trò Nhö hình treân, baïn choïn caùc phoøng ban coù giaù trò laø 1,5,6,8, khi submit form naøy trang ex6.jsp seõ ñöôïc trieäu goïi, ñeå laáy ñöôïc giaù trò 1,5,6,8 nhö ñaõ choïn baèng caùch söû duïng phöông thöùc getParameterValues, baïn khai baùo nhö ví duï 4-6. <%@ page contentType="text/html; charset=UTF-8" %> <html> <head> <title>JSP</title> <LINK href="style.css" rel=stylesheet> <LINK href="newstyle.css" rel=stylesheet> <META HTTP-EQUIV="Content-Type" CONTENT="text/html ; charset=utf-8"> </head> <body leftmargin="0" topmargin="0" marginwidth="0" marginheight="0"> <h4>Delete </h4> <hr size=1><br>huukhang@yahoo.com 3-6
  31. 31. COMPUTER LEARNING CENTER WWW.HUUKHANG.COM <% String[] deleterecord=null; String delStr=""; deleterecord=request.getParameterValues("chkid"); if(deleterecord!=null){ for(int k=0;k<deleterecord.length;k++){ delStr+= deleterecord[k]+","; } delStr=delStr.substring(0,delStr.length()-1); } out.println("Select values are : " + delStr); %> </body> </html> Khi ñoù, keát quaû trình baøy treân trình duyeät nhö hình 4-6, trong thöïc teá baïn coù theå gaùn giaù trò naøy vôùi chuoãi SQL vaø söû duïng pheùp toaùn IN hay NOT IN ñeå truy vaán hay thao taùc trong döõ lieäu. Hình 4-6: Keát quaû laáy maûng giaù trò 1.4. Request keát hôïp vôùi JavaScript Ngoaøi caùc caùch treân, khi laøm öùng duïng thöôøng chuùng ta trình baøy danh saùch maåu tin phuï thuoäc vaøo giaù trò choïn treân theû select hay checkbox hoaëc readiobutton, baïn coù theå söû duïng phöông thöùc getParameter cuûa ñoái töôïng request ñeå thöïc hieän yù ñònh naøy nhö ví duï 4-7. <%@ page contentType="text/html; charset=UTF-8" %> <% // Laáy giaù trò choïn trong theû select coù teân selectid int selectid=0; // Chuyeån qua soá nguyeân neáu coù choïn if (request.getParameter("selectid")!=null) { try { selectid=Integer.parseInt(request.getParameter("selectid"));huukhang@yahoo.com 3-7
  32. 32. COMPUTER LEARNING CENTER WWW.HUUKHANG.COM } catch(Exception ex) { selectid=0; } } %> <html> <head> <title>JSPs Objects</title> <LINK href="style.css" rel=stylesheet> <LINK href="newstyle.css" rel=stylesheet> <META HTTP-EQUIV="Content-Type" CONTENT="text/html ; charset=utf-8"> </head> <body leftmargin="0" topmargin="0" > <table width="100%" border="0" cellspacing="0" cellpadding="0"> <!--Khai baùo theû select coù teân selectid--> <form action=ex7.jsp method=post name=form1> <tr><td colspan=2><h4>Show</h4></td><td> <select name=selectid onchange="document.form1.submit();"> <option value=0>Greater than 0</option> <option value=1>Greater than 1</option> <option value=2>Greater than 2</option> <option value=3>Greater than 3</option> <option value=5>Greater than 5</option> </select> <script> // Choïn laïi giaù trò choïn tröôùc ñoù trong theû select coù teân selectid for(var j=0;j<form1.selectid.length;j++) { if(form1.selectid[j].value=="<%=selectid%>") form1.selectid.selectedIndex=j; } </script> </td></tr> </form> <tr><td><b>#</b></td><td><b>DepartmentID</b></td><td> <b>Department Name</b></td></tr> <tr><td colspan=3><hr size=1></td></tr> <% // Trình baøy soá maåu tin >= giaù trò choïn trong theû select coù teân selectid int i=selectid; while(i<10) { out.println("<tr><td width=50 valign=top>"); out.println("<input type=checkbox name=chkid value="+i+"></td>"); out.println("<td width=100>"+ i +"</td>"); out.println("<td width=150>Phong ban thu " + i+ " </td><tr>"); i++; } %> <tr><td colspan=3><hr size=1></td></tr> </table> </body> </html> Laàn ñaàu tieân goïi ñeán trang ex7.jsp thì keát quaû trình baøy laø 10 phoøng ban, neáu ngöôøi söû duïng choïn giaù trò trong phaàn Show “Greater than ” thì soá maåu tin trình baøy lôn hôn hoaëc baèng giaù trò ñang choïn nhö hình 4-7.huukhang@yahoo.com 3-8
  33. 33. COMPUTER LEARNING CENTER WWW.HUUKHANG.COM Hình 4-7: Trình baøy maåu tin choïn loïc2. ÑOÁI TÖÔÏNG RESPONSE Khi muoán traû giaù trò töø server xuoáng client thì söû duïng ñoái töôïng response. Ñoái töôïng naøy thuoäc lôùp javax.servlet.ServletResponse. Chaúng haïn, sau khi kieåm tra giaù trò username vaø password hôïp leä thì töï ñoäng chuyeån ñeán trang myaccount.jsp trong trang login_authentication.jsp. Ñeå laøm ñieàu naøy, chuùng ta khai baùo trang login.jsp coù hai theû nhaäp lieäu laø username vaø password nhö ví duï 4-8. <%@ page contentType="text/html; charset=UTF-8" %> <html> <head> <title>JSP</title> <META HTTP-EQUIV="Content-Type" CONTENT="text/html ; charset=utf-8"> <script language="JavaScript"> // Khai baùo kieåm tra giaù trò nhaäp treân trình khaùch function checkinput(){ if(document.form1.username.value==""){ alert("Xin vui long nhap username"); document.form1.username.focus(); return false; } if(document.form1.password.value=="" ){ alert("Xin vui long nhap password"); document.form1.password.focus(); return false; } return true;huukhang@yahoo.com 3-9
  34. 34. COMPUTER LEARNING CENTER WWW.HUUKHANG.COM } </script> </head> <body leftmargin="0" topmargin="0" marginwidth="0" marginheight="0"> <table width="100%" border="0" cellspacing="5" cellpadding="5"> <tr><td> <form action=login_authentication.jsp name=form1 method=post onSubmit="return checkinput();"> <table align=center> <tr> <td colspan="2" height="19"> <h4><b><font color="#FF0000"> <font color="#0000CC"> Administration Module</font> </font></b></h4><hr> </td> </tr><tr> <td colspan=2 height="19"> <div align="left">Please enter username and password</div> </td> </tr> <tr> <td height="19"> <div align="left">Username</div> </td> <td height="19"> <div align="left"> <input type="text" name="username" size="30" maxlength="50"> </div> </td> </tr> <tr> <td height="31"> <div align="left">Password</div> </td> <td height="31"> <div align="left"> <input type="password" name="password" size="30" maxlength="10"> </div> </td> </tr> <tr> <td >&nbsp;</td> <td>&nbsp;</td> </tr><tr> <td ><input type=submit value="Login"></td> <td ><input type=reset value=Reset></td> </tr> </table></form> </body> </html> Khi trieäu goïi trang login.jsp treân trình duyeät nhö hình 4-8, neáu baïn khoâng nhaäp giaù trò cho username hay password thì cöûa soå thoâng baùo yeâu caàu xuaát hieän, quaù trình submit leân server chæ xaûy ra khi baïn nhaäp caû hai giaù trò hôïp leä.huukhang@yahoo.com 3-10
  35. 35. COMPUTER LEARNING CENTER WWW.HUUKHANG.COM Hình 4-8: Ñaêng nhaäp Khi submit thaønh coâng, trang login_authentication.jsp ñöôïc goïi, neáu username vaø password baïn nhaäp töông öùng laø khang, 123456 thì trang myaccount.jsp troû ñeán ngöôïc laïi thì goïi laïi trang login.jsp nhö ví duï 4-9. <% String username=""; String password=""; username= request.getParameter("username"); password= request.getParameter("password"); if (username.equals("khang")){ if(password.equals("123456")){ response.sendRedirect("myaccount.jsp"); } else{ /*sai password*/ response.sendRedirect("login.jsp"); } } else{ /*sai user*/ response.sendRedirect("login.jsp"); } %>3. TOÙM TAÉT Trong baøi hoïc naøy chuùng toâi giôùi thieäu ñeán cho caùc baïn hai ñoái töôïng chính laørequest vaø response.huukhang@yahoo.com 3-11
  36. 36. COMPUTER LEARNING CENTER WWW.HUUKHANG.COM Baøi 5 ÑOÁI TÖÔÏNG SESSION TRONG JSP Trong baøi tröôùc chuùng ta seõ laøm quen caùc ñoái töôïng thöôøng söû duïng trong quaù trình thieát keá trang JSP nhö Request, Response. Trong baøi naøy chuùng ta tieáp tuïc laøm vieäc vôùi ñoái töôïng Session. Nhöõng vaán ñeà chính seõ ñöôïc ñeà caäp trong baøi hoïc naøy Ñoái töôïng Session. ÖÙng duïng ñoái töôïng Session.1. ÑOÁI TÖÔÏNG SESSION Khi muoán truyeàn giaù trò töø trang trang web naøy sang trang web khaùc trong moät phieân laøm vieäc thì söû duïng duïng ñoái töôïng Session. Ñoái töôïng naøy thuoäc lôùp HttpSession. http://java.sun.com/j2ee/sdk_1.3/techdocs/api/javax/servlet/http/HttpSession.html 1.1. Nhaän daïng moät phieân laøm vieäc Moãi khi coù moät phieân laøm vieäc ñöôïc taïo ra, thì trình chuû web seõ caáp moät ñònh danh laø moät chuoãi bao goàm caùc kyù töï vaø soá cho phieân laøm vieäc ñoù. Chaúng haïn, baïn môû moät browser vaø goïi trang jsp töø web site, khi ñoù phieân laøm vieäc ñöôïc taïo ra cuøng vôùi ñònh danh duy nhaát. Khi keát thuùc phieân laøm vieäc, ñònh danh naøy bò thu laïi vaø phaân phaùt laïi cho phieân laøm vieäc khaùc môùi taïo ra. Ñeå laáy ñöôïc ñònh danh naøy, baïn söû duïng phöông thöùc getId nhö ví duï 5-1. <%@ page contentType="text/html; charset=UTF-8" %> <html> <head> <title>JSPs Objects</title> <META HTTP-EQUIV="Content-Type" CONTENT="text/html ; charset=utf-8"> </head> <body leftmargin="0" topmargin="0" > <table> <tr><td> Identify ID: <%=session.getId()%> </td></tr> </table> </body> </html> Khi ngöôøi söû duïng goïi trang JSP naøy treân trình duyeät giaù trò cuûa ñònh danh trình baøy nhö hình 4- 1.huukhang@yahoo.com 3-1
  37. 37. COMPUTER LEARNING CENTER WWW.HUUKHANG.COM Hình 5-1: Ñònh danh cuûa phieân laøm vieäc 1.2. Khôûi taïo vaø gaùn giaù trò cho session Khi caàn truyeàn gt töø trang JSP naøy sang trang JSP khaùc, baèng caùch khôûi taïo dt Session vaø gaùn cho chuùng thôøi gian töông öùng, sau ñoù baïn coù theå truy caäp vaøo ñoái töôïng naøy trong trang JSP khaùc trong cuøng phieân laøm vieäc. Ñeå laøm ñieàu naøy, baïn söû duïng phöông thöùc setValue voùi cuù phaùp nhö sau: session.putValue(“teân session”,”giaù trò”); Ví duï sau khi cung caáp username/password vaø nhaán nuùt Submit töø trang login.jsp nhö hình 5-2, trang login_authentication.jsp seõ ñöôïc trieäu goïi. Hình 5-2: Trang login.jsphuukhang@yahoo.com 3-2
  38. 38. COMPUTER LEARNING CENTER WWW.HUUKHANG.COM Neáu username laø khang vaø password laø 123456 thì trang myaccount.jsp seõ ñöôïc trieäu goïi. Tröôùc khi trieäu goïi trang myaccount.jsp, chuùng ta khôûi taïo moät soá session duøng ñeå söû duïng cho phieân laøm vieäc naøy chaúng haïn userid, username, fullname, email nhö ví duï 5-2 (login_authentication.jsp). <% String username=""; String password=""; username= request.getParameter("username"); password= request.getParameter("password"); if (username.equals("khang")){ if(password.equals("123456")){ session.putValue("userid","123"); session.putValue("username",username); session.putValue("fullname","huukhang.com"); session.putValue("email","admin@huukhang.com"); response.sendRedirect("myaccount.jsp"); } else{ /*sai password*/ response.sendRedirect("login.jsp"); } } else{ /*sai user*/ response.sendRedirect("login.jsp"); } %> 1.3. Laáy giaù trò töø session Sau khi ñaêng nhaäp thaønh coâng, nhöõng ñoái töôïng session ñöôïc taïo ra, baèng caùch söû duïng phöông thöùc getValue, baïn coù theå laáy giaù trò töø caùc session naøy nhö ví duï 5-3 (myaccount.jsp).huukhang@yahoo.com 3-3
  39. 39. COMPUTER LEARNING CENTER WWW.HUUKHANG.COM Hình 5-3: Laáy giaù trò töø Session Ñeå laáy giaù trò töø caùc session khai baùo trong trang login_authentication.jsp vaø trình baøy treân trang myaccount.jsp, baïn khai baùo nhö ví duï 5-3. <%@ page contentType="text/html; charset=UTF-8" %> <html> <head> <title>JSP</title> <LINK href="style.css" rel=stylesheet> <LINK href="newstyle.css" rel=stylesheet> <META HTTP-EQUIV="Content-Type" CONTENT="text/html ; charset=utf-8"> </head> <body leftmargin="0" topmargin="0" marginwidth="0" marginheight="0"> <table width="100%" border="0" cellspacing="5" cellpadding="5"> <tr><td> <h4>Welcome to JSP</h4> </td></tr> <tr><td><a href="logout.jsp">logout</a></td></tr> <tr><td>userid: =<%=session.getValue("userid")%></td></tr> <tr><td>username: =<%=session.getValue("username")%></td></tr> <tr><td>fullname: =<%=session.getValue("fullname")%></td></tr> <tr><td>email: =<%=session.getValue("email")%> </td></tr> </table> </body> </html> 1.4. Huyû session Sau khi khoâng söû duïng ñoái töôïng session, baïn caàn söû duïng phöông thöùc ñeå huyø session ñoù thaøy vì ñeå chuùng toàn taïi, bôûi ví neáu chuùng khoâng söû duïng maø vaãn toàn thì web server vaãn phaûi quaûnl lyù. Chaúng haïn, khi chuùng ta logout khoûi öùng duïng website thì trang logout.jsp seõ ñöôïc tieäu goïi, ba72ng caùch söû duïng caùc phöông thöùc removeValue ví duï 5-4.huukhang@yahoo.com 3-4
  40. 40. COMPUTER LEARNING CENTER WWW.HUUKHANG.COM <% session.removeValue("userid"); session.removeValue("username"); session.removeValue("fullname"); session.removeValue("email"); response.sendRedirect("login.jsp"); %> Neáu baïn trieäu goïi laïi trang trang myaccount.jsp treân trình duyeät, thì keát quaû trình baøy nhö hình 5- 4. Hình 5-4: Huyû caùc session Nhö hình treân, khi session chöa taïo ra, neáu baïn truy caäp ñeán giaù trò cuûa chuùng thì giaù trò ñoù laø null, chính vì vaäy trong moät soá trang baét buoäc ngöôøi söû duïng phaûi ñaêng nhaäp roài môùi söû duïng thì baïn caàn phaûi kieåm tra session, neáu session baèng null thì troû ñeán trang login.jsp. Chaúng haïn trong tröôøng hôïp naøy chuùng ta coù ví duï 5-5, cho pheùp söû duïng khi ngöôøi söû duïng ñaõ ñaêng nhaäp, ñieàu naøy coù nghóa laø session coù teân userid phaûi toàn taïi. <%@ page contentType="text/html; charset=UTF-8" %> <% if (session.getValue("userid")==null) response.sendRedirect("login.jsp"); %> <html> <head> <title>JSP</title> <LINK href="style.css" rel=stylesheet>huukhang@yahoo.com 3-5
  41. 41. COMPUTER LEARNING CENTER WWW.HUUKHANG.COM <LINK href="newstyle.css" rel=stylesheet> <META HTTP-EQUIV="Content-Type" CONTENT="text/html ; charset=utf-8"> </head> <body leftmargin="0" topmargin="0" marginwidth="0" marginheight="0"> <table width="100%" border="0" cellspacing="5" cellpadding="5"> <tr><td> <h4>Welcome to JSP</h4> </td></tr> </table> </body> </html>2. TOÙM TAÉT Trong baøi hoïc naøy chuùng toâi giôùi thieäu ñeán cho caùc baïn ñoái töôïng chính laø session,sau khi coù ñoái töôïng naøy, baïn coù theå keát hôïp vôùi hai ñoái töôïng request vaø response ñeåxaây döïng chöùc naêng ñaêng nhaäp heä thoáng.huukhang@yahoo.com 3-6
  42. 42. COMPUTER LEARNING CENTER WWW.HUUKHANG.COM Baøi 6 PHÖÔNG THÖÙC VAØ CHEØN TAÄP TIN Khi xaây döïng öùng duïng Web noùi chung vaø öùng duïng JSP noùi rieâng, vieäc thoáng nhaát hoaù giao dieän laø ñieàu caàn thieát, chaúng haïn moïi trang JSP cuûa öùng duïng ñeàu phaûi coù kích thöôùc phaàn top, left, right, bottom vaø thaân gioáng nhau. Töông töï nhö vaäy moïi font chöõ vaø kích thöôùc cho töøng phaàn noäi dung cuõng laø ñieàu baïn phaûi thöïc hieän ñeå öùng duïng mang tính chuyeân nghieäp hôn Ngoaøi ra, nhö nhöõng baøi keá tieáp chuùng ta söû duïng chuoãi keát noái hay khai baùo ñoái töôïng Connection söû duïng trong moãi trang, taát caû nhöõng ñieàu naøy ñeàu daãn ñeán vieäc quaûn lyù khoù khaên khi caàn thay ñoåi moät trong nhöõng phaàn lieân quan. Nhöõng vaán ñeà chính seõ ñöôïc ñeà caäp trong baøi hoïc naøy Xaây döïng taäp tin ñònh daïng noäi dung Thoáng nhaát kích thöôùc cuûa moïi trang JSP Khai baùo haøm vaø thuû tuïc duøng chung Söû duïng haøm vaø thuû tuïc duøng chung1. XAÂY DÖÏNG TAÄP TIN ÑÒNH DAÏNG NOÄI DUNG Khi trình baøy noäi dung treân trang HTML hay trang JSP, ñeå thoáng nhaát ñònh daïng chuoãi trong theû body hay theû div chaúng haïn baïn caàn khai baùo theû style trong theû <head>. <style> A{ COLOR: #003063; TEXT-DECORATION: none } A:hover { COLOR: #003063; TEXT-DECORATION: underline } A:link { FONT-WEIGHT: bold; COLOR: red; TEXT-DECORATION: none } A:visited { FONT-WEIGHT: bold; COLOR: black; TEXT-DECORATION: none } .title { FONT-WEIGHT: normal; FONT-SIZE: 22px } .text{ FONT: 11px Arial, Helvetica, sans-serif }huukhang@yahoo.com 3-1
  43. 43. COMPUTER LEARNING CENTER WWW.HUUKHANG.COM </style> Trong ñoù, A töông öùng vôùi lieân keát (chuoãi trong theû <a>) coù ñònh daïng öùng vôùi tröôøng hôïp lieân keát, di chuyeån con chuoät, choïn lieân keát. A{ COLOR: #003063; TEXT-DECORATION: none } A:hover { COLOR: #003063; TEXT-DECORATION: underline } A:link { FONT-WEIGHT: bold; COLOR: red; TEXT-DECORATION: none } A:visited { FONT-WEIGHT: bold; COLOR: black; TEXT-DECORATION: none } Chaúng haïn, chuùng ta khai baùo trang JSP vôùi noäi dung ñöôïc aùp duïng vôùi kieåu ñònh daïng khai baùo trong theû style nhö vuù duï 6-1. Ví duï 6-1: Khai baùo theû style <%@ page contentType="text/html; charset=UTF-8" %> <html> <head> <title>Style trong JSP</title> <style> A{ COLOR: #003063; TEXT-DECORATION: none } A:hover { COLOR: #003063; TEXT-DECORATION: underline } A:link { FONT-WEIGHT: bold; COLOR: red; TEXT-DECORATION: none } A:visited { FONT-WEIGHT: bold; COLOR: black; TEXT-DECORATION: none } .title { FONT-WEIGHT: normal; FONT-SIZE: 22px; COLOR: #003063; } .text{ FONT: 11px Arial, Helvetica, sans-serif } </style> </head> <body>huukhang@yahoo.com 3-2
  44. 44. COMPUTER LEARNING CENTER WWW.HUUKHANG.COM <h4>Style Tag</h4> <TABLE cellSpacing=0 cellPadding=0 width="100%" border=0> <TR> <TD vAlign=top class=title> *** Quaûn Trò SQL Server 2000 *** </TD> </TR> <TR> <TD class=text> <div align=justify> Tìm hieåu caùch caøi ñaët, caáu hình, quaûn trò, backup & restore, import & export, thieát keá, laäp trình, töï ñoäng hoaù taùc vuï quaûn trò, baûn sao döõ lieäu, baûo maät vaø choáng thaâm nhaäp döõ lieäu baèng. <b>SQL Injection</b>.</div> </TD> </TR> <TR><TD><hr size=1 color=red></TD</TR> <TR><TD>Welcome to <a href="www.huukhang.com" class=> www.huukhang.com</a></TD </TR> </TABLE> </body> </html> Khi trieäu goïi trang ex1.jsp treân trình duyeät, noäi dung cuûa trang web ñöôïc ñònh daïng theo theû style nhö hình 6-1. Hình 6-1: AÙp duïng theû stylehuukhang@yahoo.com 3-3
  45. 45. COMPUTER LEARNING CENTER WWW.HUUKHANG.COM Töông töï nhö vaäy khi baïn muoán thoáng nhaát noäi dung trong nhöõng theû khaùc cuûa moät trang web thì khai baùo moät ñònh daïng trong theû style. Tuy nhieân, khi ñaët teân truøng vôùi theû HTML, moïi theû ñoù trong trang seõ cuøng chung moät ñònh daïng. Chaúng haïn, baïn khai baùo ñònh daïng cho theû td nhö sau: TD { FONT: 10px Arial, Helvetica, sans-serif } Moïi noäi dung trình baøy trong theû td seõ coù ñònh daïng nhö treân. Neáu baïn muoán coù ñònh daïng khaùc thì khai baùo thuoäc tính class cho theû td ñoù, ví duï söû duïng ñònh daïng khaùc cho theû td: <td class=text>ABC</td> Thay vì chuoãi ABC seõ coù ñònh daïng laø FONT: 10px Arial, Helvetica, sans-serif thì chuùng seõ coù ñònh daïng cuûa FONT: 11px Arial, Helvetica, sans-serif. Chuù yù raèng, trong moãi trang web baïn phaûi khai baùo theû style vaø ñònh nghóa thoáng nhaát cho caùc theû. Khi coù söï thay ñoåi baïn phaûi thay ñoåi trong moïi trang web. Ñeå söû duïng chung cho moïi trang web trong öùng duïng, baïn caàn xaây döïng moät taäp tin style, taäp tin ñöôïc bieát ñeán vôùi teân goïi custom style sheet (css). Baát kyø trang web naøo trong öùng duïng, muoán aùp duïng kieåu ñònh daïng trong taäp tin css thì khai baùo lieân keát taäp tin css baèng theû link. Ví duï, chuùng ta khai baùo taäp tin style.css bao goàm caùc ñònh daïng nhö ví duï 6-2. Ví duï 6-2: Khai baùo taäp tin css A{ COLOR: #003063; TEXT-DECORATION: none } A:hover { COLOR: #003063; TEXT-DECORATION: underline } A:link { FONT-WEIGHT: bold; COLOR: red; TEXT-DECORATION: none } A:visited { FONT-WEIGHT: bold; COLOR: black; TEXT-DECORATION: none } .title { FONT-WEIGHT: bold; FONT-SIZE: 14px; COLOR: #003063; } .text{ FONT: 11px Arial, Helvetica, sans-serif } Sau ñoù trong trang JSP, baïn khai baùo lieân keát taäp tin naøy baèng theû link, neáu muoán aùp duïng ñònh daïng naøy trong moãi theû HTML baïn söû duïng thuoäc tính class nhö khai baùo ñònh daïng cuûa theû style ngay trong trang ñoù nhö ví duï 6-3. Ví duï 6-3: Khai baùo söû duïng taäp tin csshuukhang@yahoo.com 3-4
  46. 46. COMPUTER LEARNING CENTER WWW.HUUKHANG.COM <html> <head> <title> Welcome to Link Style Sheet File </title> <LINK href="style.css" rel=stylesheet> <META http-equiv=Content-Type content="text/html; charset=utf-8"> </head> <body> <h4>Style File</h4> <TABLE cellSpacing=0 cellPadding=0 width="100%" border=0> <TR> <TD vAlign=top class=title> *** Quaûn Trò SQL Server 2000 *** </TD> </TR> <TR> <TD class=text> <div align=justify> Tìm hieåu caùch caøi ñaët, caáu hình, quaûn trò, backup & restore, import & export, thieát keá, laäp trình, töï ñoäng hoaù taùc vuï quaûn trò, baûn sao döõ lieäu, baûo maät vaø choáng thaâm nhaäp döõ lieäu baèng. <b>SQL Injection</b>.</div> </TD> </TR> <TR><TD><hr size=1 color=red></TD</TR> <TR><TD>Welcome to <a href="www.huukhang.com" class=> www.huukhang.com</a></TD </TR> </TABLE> </body> </html> Trieäu goïi trang ex.jsp treân trình duyeät nhö hình 6-3, maøu vaø kích thöôùc font cuøng vôùi kieåu chöõa cuûa noäi dung khoâng thay ñoåi so vôùi ex1.jsp, bôûi vì phaàn theû style ñöôïc taùch ra thaønh taäp tin style.css, sau ñoù duøng theû link ñeå lieân keát taäp tin css naøy vaøo trang jsp trôû laïi.huukhang@yahoo.com 3-5
  47. 47. COMPUTER LEARNING CENTER WWW.HUUKHANG.COM Hình 6-3: Lieân keát taäp tin css Chuù yù raèng, neáu khai baùo thuoäc tính class trong theû <table> thì nhöõng noäi dung trong theû <table> seõ coù ñònh daïng theo ñònh daïng khai baùo trong thuoäc tính class. Töông töï, neáu khai baùo thuoäc tính class trong theû <tr> thì noäi dung trong theû <tr> seõ coù ñònh daïng gioáng nhö ñònh daïng khai baùo trong thoâng tin class.2. THOÁNG NHAÁT KÍCH THÖÔÙC CUÛA MOÏI TRANG JSP Khi xaây döïng öùng duïng web chuyeân nghieäp, ñieàu ñaàu tieân baïn neân quan taâm laø söï thoáng nhaát veà kích thöôùc cuûa caùc phaàn treân trang web. Ñieàu naøy coù nghóa laø khi ngöôøi söû duïng thay ñoåi trang web khi duyeät, phaàn top, left, right, bottom coù kích thöôùc nhö nhau. Ñeå laøm ñieàu naøy, baïn chia trang web ra thaønh 5 phaàn: top, left, right, body vaø bottom. Phaàn top thöôøng trình baøy caùc thuoäc tính nhö quaûn caùo (baner), logo (bieåu töôïng cuûa coâng ty), menu (thöïc ñôn cuûa öùng duïng) vaø moät soá thoâng tin khaùc. Phaàn left laø thoâng tin veà caùc menu phuï hay coøn goïi laø menu cuûa menu chính, beân caïnh menu con naøy trang web thöôøng coù caùc lieân keát veà lieân heä, quaûng caùo, mailing list (ñaêng kyù email), gôûi ñeán baïn beø (send to friend), .... Ñoái vôùi phaàn right, thöôøng laø phaàn giôùi thieäu veà caùc thoâng ñaëc bieät vaø quaûng caùo, chaúng haïn ñoái vôùi öùng duïng baùn saùch, phaàn right thöôøng laø danh saùch caùc nhoùm saùch baùn chaïy, saép phaùt haønh, ... Phaàn bottom thöôøng thoâng tin lieân laïc cuûa coâng ty, chuû nhaân cuûa web site vaø baûn quyeàn. Ngoaøi ra, phaàn bottom ñoâi khi laø danh saùch caùc menu con khaùc. Toùm laïi, tuyø thuoäc vaøo yù töôûng thieát keá moãi phaàn nhö treân bao goàm caùc thuoäc tính maø nhaø thieát keá caàn trình baøy sao cho phuø hôïp. Tuy nhieân, phaàn body laø phaàn trình baøy noäi dung chính cuûa moãi trang web. Ngoaøi ra, tuyø vaøo töøng tröôøng hôïp cuï theå, trang web coù theå khoâng coù phaàn left vaø right.huukhang@yahoo.com 3-6
  48. 48. COMPUTER LEARNING CENTER WWW.HUUKHANG.COM Nhö vaäy, chuùng ta seõ chia trang web ra thaønh 5 phaàn, phaàn body chính laø phaàn chính cuûa trang web ñoù, coøn 4 phaàn coøn laïi ñöôïc cheøn vaøo khi coù nhu caàu. Chaúng haïn, coù nhöõng trang web do thoâng tin trình baøy trong phaàn body nhieàu, neân caàn khoâng gia lôùn hôn, baïn coù theå khoâng caàn söû duïng hai phaàn left vaø right. Ñeå laøm ñieàu naøy, tröôùc tieân chuùng ta thieát keá trang sample.jsp coù 5 phaàn nhö hình 6-3. Hình 6-3: Trang sample.jsp ------------------------------------------------------------------------------------------- Löu yù: • Taïo moät table goàm 3 haøng 3 coät vaø khai baùo border=1 ñeå ñeã canh leà sau ñoù baïn coù theå khai baùo laïi thuoäc tính naøy baèng 0. • Phaàn top vaø bottom laø moät haøng vaø merge 3 coät thaønh 1. • Beân trong moãi phaàn coù theå coù moät hay nhieàu theû table khaùc. • Coù theå khoâng coù phaàn left vaø right nhöng baét buoäc phaàn top vaø bottom phaûi coù. • Baïn coù theå söû duïng chieàu roäng cuûa table theo kích thöôùc töông ñoái (%) hay soá chæ ñònh, ñoái vôùi maøn hình 600*800 thì chieàu roäng thöôøng söû duïng laø 780, khi ngöôøi söû duïng choïn ñoä phaân giaûi cuûa maøn hình lôùn hôn thì kích thöôùc cuûa table naøy khoâng thay ñoåi, trong khi ñoù noäi dung seõ phuû ñaày maøn hình khi baïn khai baùo kích thöôùc theo 100%. ------------------------------------------------------------------------------------------- Ñeå coù giao dieän nhö trang sample.jsp nhö treân, baïn coù theå khai baùo nhö ví duï 6-3. Ví duï 6-3: Noäi dung trang sample.jsp <html> <head> <title> Welcome to Including File </title> <LINK href="style.css" rel=stylesheet> <META http-equiv=Content-Type content="text/html; charset=utf-8">huukhang@yahoo.com 3-7
  49. 49. COMPUTER LEARNING CENTER WWW.HUUKHANG.COM </head> <body bottomMargin=0 leftMargin=0 topMargin=0 rightMargin=0> <TABLE cellSpacing=2 cellPadding=2 width="778" border=1 align=center> <TR HEIGHT="100"> <TD Align=center colspan=3> TOP </TD> </TR> <TR HEIGHT="280"> <TD vAlign=top width="20%"> LEFT </TD> <TD vAlign=top width="60%"> BODY </TD> <TD vAlign=top width="20%"> RIGHT </TD> </TR> <TR HEIGHT="50"> <TD colspan=3 align=center> BOTTOM </TD </TR> </TABLE> </body> </html> Trong tröôøng hôïp baïn muoán coù ñöôøng phaân caùch giöõa moãi phaàn baèng image, baïn coù theå khai baùo laïi trang sample.jsp coù 5 haøng vaø 5 coät nhö template.jsp nhö hình 6-4. Hình 2-4: Phaân caùch coù vieàng Ñeå trình baøy trang tempale.jsp nhö hình 6-4, baïn khai baùo noäi dung trang naøy nhö ví duï 6-4. Ví duï 6-4: Khai baùo template.jsphuukhang@yahoo.com 3-8
  50. 50. COMPUTER LEARNING CENTER WWW.HUUKHANG.COM <html> <head> <title> Welcome to Including File </title> <LINK href="style.css" rel=stylesheet> <META http-equiv=Content-Type content="text/html; charset=utf-8"> </head> <body bottomMargin=0 leftMargin=0 topMargin=0 rightMargin=0> <TABLE width="778" border=0 cellSpacing=0 cellPadding=0 align=center> <TR HEIGHT="100"> <TD Align=center colspan=5> TOP </TD> </TR> <!---Khai baùo ñöôøng phaân caùch---> <TR HEIGHT="1"> <TD colspan=5 bgcolor=gray></TD> </TR> <TR HEIGHT="280"> <TD vAlign=top width="150">LEFT</TD> <!---Khai baùo ñöôøng phaân caùch---> <TD bgcolor=gray width="1"></TD> <TD vAlign=top width="476">BODY</TD> <!---Khai baùo ñöôøng phaân caùch---> <TD bgcolor=gray width="1"></TD> <TD vAlign=top width="150">RIGHT</TD> </TR> <!---Khai baùo ñöôøng phaân caùch---> <TR HEIGHT="1"> <TD colspan=5 bgcolor=gray></TD> </TR> <TR HEIGHT="50"> <TD colspan=5 align=center> BOTTOM </TD </TR> </TABLE> </body> </html> Sau ñoù taùch trang template.jsp naøy thaønh 5 trang khaùc nhau ñöôïc ñaët teân töông öùng laø top.htm, left.htm, right.htm vaø bottom.htm, trong ñoù phaàn body töông öùng vôùi trang templates.jsp. Ñeå khai baùo cheøn taäp tin trong trang jsp, baïn söû duïng cuù phaùp nhö sau: <%@include file=”filename”%> Trong ñoù trang templates.jsp khai baùo cheøn top.htm, left.htm, right.htm vaø bottom.htm nhö ví duï 6-5. Ví duï 6-5: Khai baùo cheøn taäp tin trong templates.jsp <html> <head> <title> Welcome to HUUKHANG.COM </title>huukhang@yahoo.com 3-9
  51. 51. COMPUTER LEARNING CENTER WWW.HUUKHANG.COM <LINK href="style.css" rel=stylesheet> <META http-equiv=Content-Type content="text/html; charset=utf-8"> </head> <body bottomMargin=0 leftMargin=0 topMargin=0 rightMargin=0> <TABLE width="778" border=0 cellSpacing=0 cellPadding=0 align=center> <TR HEIGHT="100"> <TD Align=center colspan=5> <%@include file="top.htm"%> </TD> </TR> <!---Khai baùo ñöôøng phaân caùch---> <TR HEIGHT="1"> <TD colspan=5 bgcolor=gray></TD> </TR> <TR HEIGHT="280"> <TD vAlign=top width="150"> <%@include file="left.htm"%> </TD> <!---Khai baùo ñöôøng phaân caùch---> <TD bgcolor=gray width="1"></TD> <TD vAlign=top width="476">BODY</TD> <!---Khai baùo ñöôøng phaân caùch---> <TD bgcolor=gray width="1"></TD> <TD vAlign=top width="150"> <%@include file="right.htm"%> </TD> </TR> <!---Khai baùo ñöôøng phaân caùch---> <TR HEIGHT="1"> <TD colspan=5 bgcolor=gray></TD> </TR> <TR HEIGHT="50"> <TD colspan=5 align=center> <%@include file="bottom.htm"%> </TD </TR> </TABLE> </body> </html> Khi trieäu goïi trang templates.jsp, noäi dung cuûa 4 tang left.htm, right.htm, top.htm, bottom.htm cheøn vaøo trang templates.jsp nhö hình 6-5.huukhang@yahoo.com 3-10
  52. 52. COMPUTER LEARNING CENTER WWW.HUUKHANG.COM Hình 6-5: Trang templates.jsp sau khi cheøn Trong ñoù, noäi dung cuûa trang top.htm ñònh nghóa töông töï nhö ví duï 6-5-1. Ví duï 6-5-1: Noäi dung trang top.htm <TABLE width="100%" border=0 cellSpacing=0 cellPadding=0 HEIGHT="100%" align=center> <TR > <TD width="150" Align=center> LOGO </TD> <TD Align=center> BANNER </TD> </TR> <TR HEIGHT="1"> <TD colspan=2 bgcolor=gray></TD> </TR> <TR HEIGHT="20%" bgcolor=black class=menu> <TD width="150" > Welcome </TD> <TD> Home | Search | Contact | Help </TD> </TR> </TABLE>huukhang@yahoo.com 3-11
  53. 53. COMPUTER LEARNING CENTER WWW.HUUKHANG.COM Noäi dung cuûa taäp tin left.htm ñöôïc ñònh nghóa töông töï nhö ví duï 6-5-2. Ví duï 6-5-2: Noäi dung trang left.htm <TABLE width="100%" border=0 cellSpacing=0 cellPadding=0 HEIGHT="100%" align=center> <TR > <TD width="150" Align=center> LEFT </TD> </TR> </TABLE> Neáu coù söû duïng trang right.htm thì noäi dung cuûa taäp tin naøy ñöôïc ñònh nghóa töông töï nhö ví duï 6-5- 3. Ví duï 6-5-3: Noäi dung trang right.htm <TABLE width="100%" border=0 cellSpacing=0 cellPadding=0 HEIGHT="100%" align=center> <TR > <TD width="150" Align=center> FREE ADV </TD> </TR> </TABLE> Töông töï nhö vaäy, trang bottom.htm coù noäi dung nhö ví duï 6-5-4. Ví duï 6-5-4: Noäi dung trang bottom.htm <TABLE width="100%" border=0 cellSpacing=0 cellPadding=0 HEIGHT="100%" align=center> <TR class=text> <TD Align=center> HUUKHANG.COM<br> Copyright ©2000-2005. All Rights Reserved. </TD> </TR> </TABLE> Chuù yù raèng, trong moãi trang khai baùo cheøn khoâng coù caùc theû ñoùng vaø môû html, body bôûi khi cheøn thì noäi dung cuûa taäp tin ñöôïc cheøn seõ ñöôïc cheøn vaøo taäp tin bò cheøn vaø trong taäp tin bò cheøn ñaõ coù hai theû naøy. Kòch baûn trình chuû jsp hoã trôï caùc taäp tin ñöôïc cheøn vôùi caùc teân môû roäng nhö htm, jsp, inc, lib, html. Do thöïc chaát cuûa vieäc khai baùo cheøn laø cheøn ñoaïn maõ trong taäp tin cheøn vaøo taäp tin boï cheøn, trong tröôøng hôïp naøy trang cheøn htm hay jsp ñeàu gioáng nhau ñoù laø lyù do taïi sao caùc trang cheøn ôû treân ñeàu coù teân môû roäng laø htm. Tuy nhieân, khi baïn goïi trang cheøn naøy moät mình ví duï tom.htm, neáu beân trong coù maõ jsp thì maõ ñoù khoâng ñöôïc thoâng dòch. Neáu nhöõng trang cheøn naøy coù nhu caàu goïi moät mình thì baïn coù theå chuyeån chuùng thaønh trang jsp thay vì htm nhö ñaõ trình baøy. Sau khi coù ñöôïc trang templates.jsp, baïn coù theå söû duïng trang naøy laø maãu cho caùc trang khaùc baèng caùch save as thaønh caùc trang jsp khaùc khi laäp trình. Khi khai baùo cheøn taäp tin, baïn coù theå söû duïng ñöôøng daãn töông ñoái hoaëc tuyeät ñoái cuûa taäp tin cheøn so vôùi aäp tin bò cheøn.huukhang@yahoo.com 3-12
  54. 54. COMPUTER LEARNING CENTER WWW.HUUKHANG.COM3. KHAI BAÀ

×