1. Trang chủ
  2. » Luận Văn - Báo Cáo

Nghiên cứu và ứng dụng công nghệ jsp trong xây dựng một hệ thống thông tin quản lý nhân lực cho một trường đại học

157 3 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Nghiên cứu và ứng dụng công nghệ JSP trong xây dựng một hệ thống thông tin quản lý nhân lực cho một trường đại học
Tác giả ThS Do Hoang Cai, Le Minh Luong
Trường học Trường Đại Học Dân Lập Ngoại Ngữ - Thành phố Hồ Chí Minh
Chuyên ngành Information Technology
Thể loại Nghiên cứu và ứng dụng công nghệ
Năm xuất bản 2001
Thành phố Thành phố Hồ Chí Minh
Định dạng
Số trang 157
Dung lượng 23,11 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Cong ngh~ JavaServer Pages Sl1 phat triSn ling dl;lng Web phuc tC;lPdoi hoi phili co nhung thayd6i, cai tie'n trong cong nght%,d~c bit%tla cong nght%phat triSn ling dl;lng.HTML chuffn ch

Trang 1

THANH PHQ HO CHi MINH - 7/2001

GVHDSVTHLopNien khoa

: ThS DO HOANG CIJ(1NG: LE MINH LU(1NG

: MV9701: 1997 - 2001

Trang 2

1.1.2.3 1.1.2.4 1.1.2.5 1.1.2.6 1.1.3 1.1.3.1 1.1.3.2 1.1.3.3

-. -.4

MlfC l~lC MlJC LlJC CHU<1NG 1: CONG NGHt JAVASERVER PAGES (JSP) - 1

1.1 T6ng quan v~ cong ngh~ JSP - 2

1.1.1 Cong ngh~ JSP - 3

Kh "o.", ;:: '" h" JSP 1.1.1.1 al lllym ve cong ng y - 3

1.1.2 Nhii'ng tinh nang n6i b~t cua cong ngh~ JSP - 4

1.1.2.1 Suc m~nh cua JavaServer side - 4

1.1.2.2 D€ dang nhanh chong trong vi~c phat tri~n, tri~n khai va blw trl - 4

T~p trung vao tinh tai sU'dlfng cac component - 5

NQi dung oQng -~ - 5

Tinh rna rQng va sl! ph6 bie'n - 5

DQc I~p voi cac the - 5

Cac mo hlnh ung dlfng cho cac trang JSP - 6

Mo hlnh ung dlfng odn gian - 6

Mo hlnh ung dlfng voi Java Servlet - 6

Mo hlnh ung dlfng voi cong ngh~ Enterprise JavaBeans - 7

1.2 Cli pha p JSP - 8

1.2.1 Cli pha p cd ban cua JSP - 8

1.2.1.1 Chen mQt JSP template text - 8

1.2.1.2 D~ t tag bfit o~u va tag ke't thlic - 8

1.2.1.3 D~t cac gia tri thuQc tinh -. - 8

1.2.1.4 Chen cac chli thich - 9

1.2.1.5 ChI ra mQt URL tu'dng o6i trong trang JSP - 9

1.2.2 Cac chI dftn - 10

1.2.2.1 ChI dftn bien dich trang - 11

1.2.2.2 ChI dftn nhling rna ngu6n - 13

1.2.2.3 ChI dftn taglib - 13

1.2.3 Cac Scripting element - 13

1.2.3.1 Ca c khai ba0 - 14

1.2.3.2 Ca c Scriplet - 14

1.2.3.3 Cac bi~u thuc -.: - 15

1.2.4 Cac hanh vi - 15

Trang 3

1.204.2

1.204.3

1.20404

1.204.5

jsp: usebean - 16

jsp:setProperty - 17

jsp :getProperty - 18

jsp :include - 19

jsp :forward - 19

'1 1.3 Cae d6i tuqng JSP - 20

1.3.1 Cae d6i tuqng JSP - 21

1.3.2 E>6ituqng application - 21

1.3.3 E>6ituqng config - 22

1.3 A E>6ituqng exception - 22

1.3.5 E>6ituqng out - 23

1.3.6 E>6ituqng pageContext - 23

1.3.7 E>6ituqng request - 24

1.3.8 E>6ituqng response - 25

1.3.9 E>6ituqng session - 26

104 JSP voi HTML Forms - 26

104.1 Gdi du li~u ttl form nhu the"nflO? - 27

104.2 T~o mQt Form nhu the"nflO ? - 27

104.3 Form Element - 32

10404 Password Fields - 33

104.5 Text Controls - 33

104.6 Push Buttons - 34

104.7 Check Boxes va Radio Buttons - 35

104.8 Combo Boxes va List Boxes - 36

104.9 Hidden Fields - 36

1.5 JSP voi cd sd du li~u - 36

1.5.1 Cd che' JDBC - 37

1.5.1.1 JDBC la gl ? - 37

1.5.1.2 Cd che"ho~ t dQng cua JDBC - 37

1.5.1.3 Cae trlnh di~u khi~n cua JDBC - 37

1.5.2 JSP truy xuftt CSDL dung trlnh di~u khi~n JDBC ki~u 1 va kh6i JAVA.SQL - 40

1.5.2.1 Kh6i Java.SQL - 40

.1

;.' U

Trang 4

1.5.2.3

1.5.2.4

1.5.2.5

1.5.2.6

1.5.2.7

1.5.2.8

1.5.2.9

T~o ke't n6i ODBC trong Window - 42

Ghi da li~u til trang JSP xu6ng CSDL - 45

DQc da li~u til CSDL len trang JSP - 47

D6 da li~u vao Combo box trong trang JSP - 50

Grid - 51

Update va Delete da li~u trong CSDL til trang JSP - 53

Store Procedure - 54

GQi store procedure trong ling dl;lng JSP - 58

1.6 Ke't 1u~n - 59

CHU<1NG 2 : CONG NGHt ENTERPRISE JAVA BEANS (EJB) - 60

2.1 EnterPrise JavaBeans (EJB) - 61

2.2 M6 hlnh thanh ph~n - 61

2.3 Enterprise Bean Component - 62

2.4 Lop va giao di~n - 63

2.4.1 Lop va giao di~n - 64

2.4.2 Giao di~n Home - 65

2.4.3 Lop Bean - 66

2.4.4 Primary key - 67

2.4.5 Session Bean - 68

2.5 Deployment Descriptor va t~p tin JAR - 68

2.6 XML Deployment Descriptor - 72

2.7 Kie'n truc Enterprise JavaBeans - 73

2.8 Sa dl;lng Enterprise JavaBeans - 74

2.8.1 La'y th6ng tin til m(>tEntity Bean - 74

2.8.2 M6 hlnh lu6ng c6ng vi~c (workflow) vdi Session Bean 76

2.8.3 Stateful va stateless session bean - 80

2.9 Net n6i b~t cua c6ng ngh~ Enterprise Java Beans - 81

2 10 V.. altro cua ngu'ol pat,? ,. h" tnen -.,:1 82

Trang 5

CHudNG 3 : Moi tnt<tng JAVA ™ 2 SDK, ENTERPRISE EDITION

(J2EE) - 83

3 1 J2EE la gi ? - 84

3.2 Uu di€m clla nhi1ng Middle-Tier Servers - 85

3.3 Kie'n truc clla J2EE - 86

3.3.1 J2EE Server - 87

3.3.2 EJB Container - 87

3.3.2.1 Transaction Management - 87

3.3.2.2 Security - 87

3.3.2.3 Remote Client Connectivity - 88

3.3.2.4 Life Cycle Management - 88

3.3.2.5 Database Connection Pooling - 88

3.3.3 Web container - 88

3.4 Enterprise Beans - 89

3.4.1 Session Beans - 89

3.4.2 Entity beans - 89

3.4.3 Nhi1ng gioi hC;lntn~n l~p trinh Enterprise Beans - 91

3.4.4 Truy c~p cd sd di1li<%u - 91

3.5 Ung dl;lng J2EE - 92

3.5.1 NQi dung clla mQt ling dl;lng J2EE - 92

3.5.2 Cac giai dOC;lnphat tri€n clla ling dl;lng J2EE - 94

3.5.2.1 3.5.2.2 3.5.2.3 3.5.2.4 Enterprise Bean Creation - 95

Web Component Creation - 96

J2EE Application Assemply - 96

J2EE Application Deployment - 96

3.6 Transaction - 97

3.6.1 Container - Managed Transaction - 97

3.6.1.1 ThuQc tinh transaction - 97

3.6.1.2 Roll back mQt Container - Managed Transaction - 100

J

Trang 6

-3.6.1.3 3.6.2 3.6.2.1 3.6.2.2 3.6.2.3 3.6.3 3.6.4 Cac ham khong dUQcphep slt dl;lng trong Container - Managed Transaction - 100

Bean - Managed Transaction - 101

JDBC Transactions - 101

JTA Transactions - 101

Cac ham khong dUQcphep slt dl;lng trong Bean - Managed Transaction - 101

Transaction Timeouts - 101

C~P nh~ t nhi~u cd sd dli 1i~u - 102

3.7 Security

-3.7.1 3.7.1.1 3.7.L2 3.7.1.3 3.7.2 3.7.2.1 3.7.2.2 3.7.2.3 Authen tica tion -

-J2EE Users, Realms va Groups

-Clien t Au thentica ti0n - - -

Qmln ly J2EE users va groups

-Auth0riza ti0n

Khai bao Roles

-Kh b"al ao PermlSSlon -

Anh X'.l Roles d€n J2EE Users va J2EE Groups

-102 104 104 105 106 106 107 107 107 3 8 M". ot so van. '" '" d~ k- h "e y t uat -.

3.8.1 Cac h~ di~u hanh dUQch6 trQ

-3.8.2 Cd sd dli li~u va JDBC™ Drivers dUQch6 trQ

-3 8 -3 . Ph~an mem~ d' k'1 em can p al co -~ h?' , 3.8.4 Gidi thi~u cac cong Cl;lcua J2EE SDK

-3.8.5 Qua trlnh tri€n khai ling

dl;lng 3.9 Cach t'.lOva tri€n khai m(>tling dl;lng J2EE

-3.9.1 Vdi cong ngh~ JavaServer Pages

-3.9.2 Vdi cong ngh~ Enterprise

JavaBeans -108 108 108 108 108 114 115 115 121 CHudNG 4: UNG DlJNG MINH HQA - 133

4.1 Khao sat hien trang - 134

4.1.1 Ml;lCdich - 134

Trang 7

-4.1.2 Mo ta cae cong vi~c - 135

4.1.3 Cae quy uoc v8 thong tin lu'u tru dil' li~u trong h~ th6ng quan ly truong dai hoc - 135

4.2 Phan tich - 136

4.2.1 Sod6 chile nang (FHD) - 137

4.2.2 Sod6 thl!c th~ (ERD) - 145

4.3 Thie't ke' - 146

4.3.1 Mo hlnh quan h~ dil' li~u mile v~t ly - 146

4.3.2 Giao di~n chuang trlnh - 147

4.4 Ke't lu~n - 155

,~ ? TAl LI~U THAM KHAO - 156

Trang 8

Hi<%nnay a nudc ta, va'n d~ ap dl;lng tin hQc dti xli' ly thong tin trongcong tac quan ly dff tra thanh nhu c~u buc thi€t, cac doanh nghi<%pcling nhucac truang £>(;lihQc dff tung budc Tin hQc hoa thong tin trong vi<%cquan lynhan ltfc clla mlnh.

Do do, trong khoa lu?n t6t nghi<%pnay, JSP duqc ung dl;lng dti xayd~tng nen mQt h<%th6ng thong tin quan ly nhan ltfc cho mQt truang £>(;lihQc.Chudng trlnh nay giup quan ly mQt cach d~y dll va co h~ th6ng nhung h6 sd

cd ban: v~ mQt nhan vien tu khi hQ d€n lam vi<%ct(;li truang; v~ mQt sinhvien, hQc vien cao hQc & nghien cuu sinh tu khi hQ d€n hQc t(;li truang,cGng nhu cung ca'p thong tin v~ tlnh hlnh nhan ltfc clla truang a mQi thaiditim dti dam bao cho qua trlnh hO(;ltdQng giang d(;ly, dao t(;lOcua truangduqc 6n dinh, trq giup cho nguai quan ly co thti xay dtfng nhung k€ hO(;lchphat tritin, dao t(;lO,rna rQng clla truang Ngoai ra, con co chuc nang tra cuunhanh h6 trq nguai quan ly d~ dang tim ki€m thong tin v~ mQt nhan vien,sinh vien, hQc vien cao hQc & nghien cuu sinh, cling nhu cho phep nguaiqmln ly th6ng ke, bao cao v~ so"luqng nhan vien, sinh vien, hQc vien caohQc & nghien cuu sinh,

Bao cao t6t nghi<%pduqc chia lam 4 chudng :

• CHUdNG 2: CONG NGHe ENTERPRISE JA VABEANS(EJB)

EDITION

• CHUdNG 4 : UNG D1JNG MINH HOA

Do kinh nghi<%mcon h(;ln ch€ nen chudng trlnh va cu6n bao cao naykhong tranh khoi nhi~u sai sot Em ra't mong co duqc nhung y ki€n donggop quy bau clla quy Th~y Co va cac b(;ln

Trang 9

LiJi mo dc1u

Cltong, nguoi da huang dfin, giilp do em rftt t~n tlnh d~ em co th~ hoanthanh dU9C cu6n khoa lu~n t6t nghi<%pnay Em cling xin gdi den gia dinhthffy Wi chilc suc khoe va Wi cam on chan thanh nhftt

Trang 10

Ch1L(Jf1g 1 C6ng ngh~ JavaServer Pages

CHUONG 1 CONG NGHt JA VASERVER PAGES (JSP)

Trang 1

."

t"

1.1 T6ng quan v~ cong ngh~ JSP 1.2 Cn pha p JSP

1.3 Tham chie'u dol biqng trong trang JSP 1.4 JSP v6'i HTML Forms

1.5 JSP v6'i Cd sd dilli~u

1.6 Ke't lu~n

Trang 11

ChLtdng 1 C6ng ngh~ JavaServer Pages

1.1 TONG QUAN VE CONG NGm: JSP

Trang 2

1.1.1 Cong ngh~ JavaServer Pages

Sl1 phat triSn ling dl;lng Web phuc tC;lPdoi hoi phili co nhung thayd6i, cai tie'n trong cong nght%,d~c bit%tla cong nght%phat triSn ling dl;lng.HTML chuffn chi co thS dung cho vit%c hiSn thi cac nQi dung tInh, dS tC;lora

sl1 tuang tac va hiSn thi cac nQi dung dQng c~n co nhung giai phap khac.

Giao dit%nCGI - bin la IDQtgiai phap xua't hit%ntuang d5i sam Nguai

phat triSn ( developer) vie"t nhung chuang trlnh theo cac giao dit%nCGInay, khi do cac ling dl;lng Web se gQi chung thong qua mQt Web Server

Ky thu~t nay co mQt khuye"t diSm dang chu y: m6i yeu c~u CGI mai tC;lonen mQt tie"n trinh ( process) tren Server Ne"u nhiSu ~ser truy c~p lingdl;lng d6ng thai, se xua't hit%nnhiSu tie'n trlnh va chung se tieu thl;l tainguyen cua Web Server, dftn de"n hit%usua't cua Web Server suy giam didang kS ne'u khong mu5n noi se co luc cC;lnkit%t

Nhung nha cung ca'p Web Server da: tIm cach don gian hoa sl1 phattriSn ung dl;lng Web biing cach cung ca'p nhung "plug - ins" va cac hamAPls cho server cua rieng hQ Giai phap nay cling chi co y nghla tren mQt

IOC;liWeb Server nha't dinh Ne'u xet tren mQt moi truang rQng IOn vai

nhiSu IOC;liserver phong phu han thl hoan toan pha san DiSn hinh la congnght%Active Server Pages (ASP) cua Microsoft, co hit%uqua t5t trong vit%ctC;lonQi dung dQng tren Web nhung chi lam vit%cdUQc vai Microsoft IIS hayPersonal Web Server

Cling co nhung giai phap khac, nhung hoan toan khong d~ triSnkhai Vi dl;l nhu cong nght%Java Servlet sa dl;lng ngon ngu l~p trlnh Java.Cong nght%nay ra't hit%uqua, d~ dang cho nguai phat triSn khi vie't chuang

(nguQc IC;livai applet chi chC;lytren client) Nguai phat triSn co thS vie'tServlet la'y nhung HTTP request til' Web Browser, phat sinh sl1 phan h6i

XML trd IC;liBrowser Vai phuong phap nay, toan bQ trang van ban HTMLphai dUQc sOC;lntrong Java Servlet Ne"u co nhu c~u mu5n thay d6i giaodit%n,b5 Cl;lCtrang Web thl phai hit%uchinh va bien dich IC;liServlet Do do

co thS noi vit%cphat sinh trang Web dQng biing Java Servlet vftn can doi

Lu(in van tdt nghi~p_

Trang 12

ChU(Jflg1Cong ngh~ JavaServer Pages Trang 3

• Tach bi~t nghi~p Vl;l,xu 19 cua ling dl;lng voi giao di~n cua trangWeb

• Qua trlnh pha t tri€n va thu nghi~m ling dl;lng c6 th€ du'Qc thl;l'chi~n nhanh ch6ng

• Ddn gian h6a vi~c phat tri€n ling dl;lng

Cang ngh~ JavaServer Pages (JSP) du'Qc thie't ke' d€ thoa man yeucgu tren Cang ngh~ nay la ke't qua cua sl;l'hQp tac rQng rai, quy rna giii'a

system va cang Cl;lphat tri€n, trong d6 Sun Microsystems d6ng vai tro quantrQng Gild phap nay chinh la mQt cach tie'p c~n moi d€ phat tri€n nhii'ngling dl;lng Web va con hlia hyn ra't nhi~u di~u trong tu'dng lai

1.1.1.1 Khai ni~m vi cong ngh~ JavaServerPages

trong mQt t~p tin HTML hay XML, sau d6 t~p tin nay se du'Qc chuy€nthanh Java Servlet d€ thl;l'Chi~n vi~c t~o trang Web dQng Java Servlets d~ttrQng tam tren chu'dng trlnh Java d€ t~o trang van ban HTML mong mu5n.Di~u naY' d~ gay te nh~t va bu6n chan VIkhi c6 ba't ky mQt sl;l'thay d6i nhonao tren trang van ban HTML phan h6i cling d~n de'n vi~c phai bien dich,ki€m tra unload servlet dang ch~y, reload servlet moi D6ng thai clingkhang th€ dung ba't ky mQt phgn m~m so~n thao HTML nao trong quatrlnh xay dl;l'ngling dl;lng khi su dl;lng JavaServlets

Y tu'dng cua cang ngh~ JSP da dao ngu'Qc tie'n trlnh thl;l'c hi~n cuaservlet, thay VIt~p trung van chu'dng trlnh Java r6i d~t HTML vao, gia daytrong tam l~i la HTML voi cac do~n chu'dng trlnh Java du'Qc them vao, giaday trQng tam l~i la HTML c6 th€ du'Qc phat tri€n bdi ngu'ai thiSt kS d6hQa, sau d6 ngu'ai phat tri€n chu'dng trlnh Java (Java Developer) se themnhung do~n chu'dng trlnh Java d€ biSn trang van ban HTML nay thanhtrang c6 khii nang thl;l'chi~n du'Qc nhii'ng nghi~p Vl;lmong mu5n Qua trlnhunload va reload servlet se du'Qc cac server hi€u JSP thl;l'chi~n mQt cach

Lug,n wIn t6t nghi~p_

Trang 13

Chuang 1 Cang nghf JavaServer Pages Trang 4

tlf dOng, bai cac server nay co kha nang nh~n bi€t dUQc thay d6i a trang

JSP, tit do phat sinh yeu cgu bien dich trang JSP thanh servlet va yeu cgu

unload, reload

Web dOng thu hut slf chu y dang k~ clla cac nha phat tri~n ung dl;1ngWeb

No cung dip mOt cach thuc don gian, nhanh chong d~ tC;lonhung trang WebdOng

Cong ngh~ nay xac dinh cach thuc tuong tac giua server.va cac trangJSP, cling nhu d?c ta va cu phap clla trang nay Cong ngh~ JSP la mOtthanh phgn trong hQ Java, sa dl;1ngngon ngu Java nhu la ngon ngu script

dl;1ngWeb

1.1.2 Nhung tinh nang n6i b~t eua eong ngh~ JSP

1.1.2 1 Suc m{lnh cua Java Server-side

Java Ia mOt n~n tang t6t cho vi~c vi€t nhung ung dl;1ngclla bC;lndlfa

mC;lngnhi~u suc m(;lnh d~ giai quy€t nhung yeu cgu tit phia thin client ho?c

tit mOt noi nao do Cac ung dl;1ngserver clla bC;lnse co lQi til' nhung tinh

nang phat tri~n nhanh clla Java nhu an toan v~ ki~u, ti€t ki~m bO nhd vah6 trQ da lu6ng Them vao do, n~n Java con co tinh rna rOng a trong xinghi~p C6ng ngh~ JSP la thanh phgn then ch6t clla Java 2 EnterpriseEdition (J2EE) Sa dl;1ngcong ngh~ JSP, cac t6 chuc co th~ thuc d~y slf t6ntC;liclla n~n tang Java da: co va tC;lOra nhung ling dl;1ngxi nghi~p vdi quy

mo rOng han

1.1.2.2 D~dang va nhanh chong trong vifC philt triin, thl/c thi va

baotn

tri~n cho cac l~p trlnh vien Thay VI vi€t mOt chuang trlnh Java, cac l~ptrlnh vien chi cgn vi€t cac trang HTML va them vao do cac the gi6ng vdiXML (XML -like tags) va n€u cgn thi€t thl co th~ them ca cac scriptlet d~thAt ch?t mQi thu vdi nhau Bang vi~c h6 trQ slf phat tri~n dlfa tren caccomponent va thu vi~n cac the tily bi€n, cac trangJSP khong chi don gian

Luq.n van tat nghifp_

Trang 14

Chuang 1Cong ngh~ JavaServer Pages Trang 5

trong vi~c t'.lO l~p rna con cung ca'p mQt n~n tang m'.lnh cho mQt lO'.lt caccong Cl;lt'.lOl~p trang

1.1.2.3 Tfjp trung vao tinh tai sit dlJ,ngcac compnent

H~u he't cac trang JSP d11atren tinh tai slt dl;lng, cac thanh ph~n da

phuc t'.lP hon theo yeu c~u cua cac ling dl;lng Nhung nha phat triSn co thSchi a se va trao d6i cac component th11chi~n nhung chlic nang chung ho~c

d11atren n~n tang cac component tang t6c toan bQ qua trlnh phat triSn vacho phep cac t6 chlic dfty m'.lnh va phat triSn cac h~ th6ng san co

1.1.2.4 Nl)i dung dl)ng

Slt dl;lng cong ngh~ JSP, cac nha phat triSn slt dl;lng nhung theHTML ho~c XML dS dinh d'.lng trang HQ cling slt dl;lng cac the JSP ho~cscriptlet dS sinh ra nQi dung dQng trong trang (nQi dung thay d6i theo yeu

c~u, ch~ng h'.ln yeu c~u thong tin v~ account hay yeu c~u v~ gia tri cua

mQt chai rUQu).Vi~c sinh ra nQi dung dUQc goi trong cac the va cacJavaBeans component va dUQCxie't ch~t voi nhau trong cac scriptlet, va tfft

ca d~u dUQcth11chi~n a phia Server

1.1.2 5 Tinh md rl)ng va slj phiJ bien

Cong ngh~ JSP dUQc phat triSn bai cQng d6ng nguai slt dl;lng Java

£)i~u nay bao dam ding cong ngh~ nay dUQc h6 trQ bai cac d'.li gia phftnm~m Slf ph6 bie'n da giup cho JSP dUQc h6 trQ rQng rai tren cac serverling dl;lng va Web Sun Microsystem cam ke't duy trl tinh rna rQng va gQncua JSP va ca s11phat triSn cua no sau nay

1.1.2 6 Dl)c lfjp vm cac the

JSP trang bi cho cac nguai l~p trlnh m'.lng cac thu vi~n the voi tinhnang tuy bie'n gi6ng nhu cac the cua XML Chinh VI v~y cac nha phat triSnthli 3 co thS t11t'.lOri~ng cho mlnh mQt bQ the dS phu hQp voi cong vi~ccua hQ Khong chI co v~y, cac the cua JSP con bao goi trong no nhi~u chlicnang khac dap ling yeu cftu t'.lOnQi dung dQng cho trang Web Cac the JSPchuftn co thS troy nh~p vao cac JavaBeans component, gQi cac ham, thie'tl~p thuQc Hnh, va do v~y tie't ki~m thai gian l~p trlnh va cling nhu lam

l/

Trang 15

ChLt(Jng1Cong ngh? JavaServer Pages Trang 6

1.1.3 Cac rno hlnh ung d\lng cho cac trang JSP (Application Models for

JSP pages)

MQt trang JSP dUQc thlfC hi~n bdi mQt JSP engine (t(;lm dich: congCl;lJSP) dUQc dli d~t trong mQt Web Sever hay mQt ling dl;lng Server co

kha nang JSP JSP engine nh~n request til mQt client gdi Wi trang JSP va

tra cac response til trang JSP v~ cho client Cac trang JSP khi dUQc gQi,chungse dUQcbien dich thann cac Java Servlet

Lfrn dfru tien khi mQt trang JSP dUQcgQi, ne'u trang nay khong co santhl no se dUQCbien dich thanh mQt Java Servlet class va dUQc lu'u trong bQnho cua Server E>i~unay cho phep tra loi nhanh cac request khi trang JSPnay dUQcgQi d lfrn sau

1.1.3.1 Mohinh ung dl;lng ddn gian

B~ng mQt thao tac ddn gian, trlnh duy~t yeu cfru trlfc tie'p mQt trangJSP Trang nay se tlf dQng thlfC hi~n nQi dung dUQc yeu cfru (vi dl;l yeu cfruJDBC lfty thong tin til trlfc tie'p til mQt Database).Trang JSP co th€ gQiJDBC hay cac JavaBlend™ d€ tra ke't qua v~ trlnh duy~t

Response

Kie'n truc nay lam vi~c t6t cho nhi~u ling dl;lng, nhung l(;likhong th€ling dl;lng cho mQt s6 IOn cac Web-based client cung truy xuftt de'n tainguyen (resource) d xa, VI m6i mQt client se phai thie't l~p hay chia se mQtke't n6i Wi tai nguyen d€ thoa man yeu cfru.Vi dl;l, ne'u mQt trang JSP troyxuftt de'n mQt Database thl no se yeu cfru rftt nhi~u ke't n6i de'n databaserna di6u nay thl co th€ anh hudng de'n thong suftt hO(;ltdQng cua Database

1.1.3.2 Mohinh ung dl;lng vfJi Java Servlets

Trong mQt cftu hlnh hQp ly, Web - based client co th€ thlfC hi~n mQtrequest trlfc tie'p toi mQt Java Servlet rna Java Servlet nay se sinh ra nQidung dQng, dong goi cac ke't qua thanh mQt result bean va gQi mQt trang

~~~~f,'\<l~ ••••

trlnh duy~t

Lui;in win tot nghi?p_

Trang 16

se giao tie'p voi back end resources thong qua mQt thanh phgn EJB.

~ Rinh 1.3:MfJ hinh ung dung JSP vm EJB

EJB component se quan ly vi~c truy xua"t Wi back end resources D6ivoi cac ling d\lng thu'dng m~i va cac ling d\lng khac, EJB cling quan ly cactransaction va va"nd6 bao m~t

1.2 CD pHAp JSP (JSP Syntax)

1.2.1 Co pha p cd ban ella JSP

1.2.1.1 Chen mf)t iSP template text

MQt trang JSP chlia dl!ng template text (t~m dich:van ban m~u ) vacac JSP element Ta"t ca cac JSP element d6u du'Qc thong dich bdi JRun

text

Trang 17

ChLldng i Cong ngh~ JavaServer Pages Trang 8

m9t JSP element va do d6 n6 khong dUQcthong dich bai JRun Ba't cu text

Vi dl;l, trong trang sau, mQi thu trong d~u dUQc coi la template text

ngo~i tru do~n rna Java nam trong tag <% va %>

</body>

<lhtml>

1.2.1.2 Bijt tag bitt dilu va tag ktt thuc

phai nam trong cling m9t file B~n khong th€ d~t m9t tag b~t dgu a file nay

va l~i d~t tag k€t thlic a file khac

Vi dl;lm9t JSP scriptlet c6 cli phap <% scriptlet %> Ca 2 tag nay rna

1.2.1.3 Bijt cae gia trj thuQc tinh

B~n phai d~t cac gia tri thu9c Hnh cho ta't ca cac JSP element, sa

dl;lng cac da'u ngo~c don va kep Vi dl;l, page element trong vi dl;l sau sa

dl;lng thu9C Hnh d€ thi€t l~p vi~c dinh d~ng dil' li~u xua't cua m9t trang JSP:

N€u gia tri thu9c Hnh tl! ban than n6 chua da'u ngo~c don hay kep thlb~n phai d~t truoc da'u ngo~c d6 m9t ky tl! thoat (escape character) la ( \)

Ky tl! thoat nay se lam cho b9 phan tkh cli phap bo qua ky tl! k€ ti€p C6 2d~ng d€ thoat khoi da'u ngo~c nhu sau

• 'as\'

• "as \ "

1.2.1.4 Chen cae chu thich

B~n c6 th€ sa dl;lng 2 chli thkh trong trang JSP: chli thkh cho banthan trang JSP rna chli thkh nay khong dUQc tra gai v~ cho client; chlithkh dUQcghi tra v~ cho client nhu la m9t phgn dil' li~u xua't cua trang JSP

1.2.1.4.1 Ghi cae chu thich cho trang JSP

Lu(jn van t6t nghi~p_

Trang 18

ChLtdng 1 Cong ngh~ JavaServer Pages Trang 9

2 <% /** Chu thfch Java **/ %>

Sa dlfng cli phap chli thich tren ( 2 ) tu'dng tt;l'voi JavaScript

1.2.1.4.2 Xuiit cae chu thich sang client

D~ sinh ra cac chli thich rna cac chli thich nay nhu' la dii' li~u tra v~cho client, b~n sa dlfng cli phap chu thich clla HTML Cli phap nay nhu'sau:

B~n co th~ t~o m(>tchu thich d(>ng bAng vi~c chen m(>tbi~u thli'c JSPvao trong do Vi dlf:

<% String pageName = "Example Comment Page" , %>

<! Chu thfch cho trang: <% =pageName %> >

1.2.1.5 Chi ra ml)t URL tlidng dOi trong ml)t trang JSP

Cac JSP elememt co th~ sa dlfng URL tu'dng do'i d~ tham chi€u toicac trang JSP, Java Servlet hay cac tht;l'cth~ khac No co th~ la tu'dng do'iho~c vdi li'ng dlfng chli'a dt;l'ngtham chi€u JSP ho~c vdi vi tri tham chi€uJSP tuy thu(>c vao vi~c b~n xac dinh URL trong tham chi€u do nhu' th€nao

Vi dlf:

Trong tru'ong h9P nay, JRun se tlm myErrorpge.jsp trong thu' mlfc cha

clla trang tham chi€u

Vdi ti~n to' "I "thi JRun se tlm myErrorpage.jsp tu'dng do'i vdi li'ngdlfng ehli'a tham chi€u JSP Ta't ca cac trang JSP d~u du'9C chli'a trongm(>tli'ng dlfng

1.2.2 Cac chi dfin (Directives)

Cac chi d~n thi€t l~p thu(>c Hnh cho trang JSP va cho Servlet k€tqua M(>t chi d~n du'9C sa dlfng nhi~u nha't la dung d~ thi€t l~p ngon ngii'

Trang 19

-ChLtdng 1 Cong ngh~ JavaServer Pages Trang 10

kich ban Tuy nhien, b~n co th~ sU'dl;1ngchi d~n sau d~ thie't l~p ngon nglikich ban la JavaScript

<% page language = ''javascript'' %>

MQt chi d~n la mQt phgn tU' dUQc xU' ly tn10c tien trong qua trinhphan tich cu phap clla mQt trang JSP B~n khong th~ sU' dl;1ng bi~u thuctrong cac chi d~n bdi VI bi~u thl1c dUQcHnh trong luc ch~y chuang trinh Do

do, vi<$csU'dl;1ngchi d~n trohg vi dl;1sau la sai VI bi~u thuc <% =

myVar-%> khong dUQcHnh toan luc dich chuang trinh

<% page import = "<% = myVar %>" %>

Them vao do, bdi VI cac chi d~n dUQc Hnh toan trong su6t qua trinhphan tich cu phap, nen chung khong sinh ra dli li<$uxua't Co nghia la, b~nkhong th~ sU'dl;1ngcac chi d~n d~ gdi thong tin cho client

CU pha p co ban clla cac nhu sau :

<% chi dan %>

JSP h6 trQ 3 lo~i chi d~n, dUQcli~t ke trong bang1.1 sau:

Chi d~n JSP

Page Xac dinh cac thuQc tinh <%@ page thuQc tinh ="gia tri"

cua trang

="tagPrefix" %>

~ Bang 1.1 1.2.2.l.Chi dan bien dich dan trang (The page directive)

Chi d~n page xac dinh mQt hay nhi€u thuQc Hnh cho trang JSP MQt

trang JSP co th~ chua nhi€u chi d~n page Tuy nhien tn)' thuQc Hnh import

ra thl cac thuQc Hnh khac chi co th~ dUQc tham chie'u chi mQt 19n Nghla la,ne'u b~n chi ra nhi€u chi d~n page voi nhi€u thuQc Hnh doi l~p nhau thlinstance dgu tien clla chi d~n page se dUQc cha'p nh~n va ba't cu 19n saunao thuQc Hnh nay dUQcgQi l~i thl no se bi bi) qua

B~n co th~ chi ra nhi€u chi d~n page chua thuQc Hnh import Ta't ca cac file dUQctham chie'u bdi thuQc tinh import thl se dUQcimport.

Trang 20

Chuang 1 Cong ngh~ JavaServer Pages Trang 11

Trong do:

autoFlush I isThreadSafe I info I errorPage I isErrorpage I extends

Vi du:

trang N€u b(;ln bo qua thuQc tinh nay thl ngon ngfi' kich ban m?cdinh la Java

da'u phffy.Vi dlJ:

ra bdi trang JSP M?c dinh MIME type la text / html

(phien)

du<jc khdi t(;lOtoi session hi~n t(;li cho trang JSP

session va d6i tu<jng session khong co san

klch thuoc cho buffer la 16 kbBytes

xua't cua trang du<jc ghi trtfc tie"p toi client

tran buffer

Klch thuoc m?c dinh cua buffer la 8 KiloBytes

Luljn van tfft nghi~p_

Trang 21

Chu(Jng 1 C6ng ngh~ JavaServer Pages Trang 12

".

bi xoa (gia tri la "true") khi buffer bi dgy hay mot exception duqcsinh ra (gia tri la "false") do tran buffer

Gia tri m~c dinh la "true" Chli y rang b~n khong th€ thie't l~p gia

tri la "false" cho autoFlush khi buffer bang "none".

tac bdi trang Co 2 gia tri la "true" va "false"

trang khac Co 2 gia tri la "true" va "false"

Gia tri la "true" chi ra d6i tuqng exception cua JSP dUQcdinh nghla.Gia tri la "false" chi ra d6i tUQng khong co

Gia tri m~c dinh la "true"

exception nao khong bi bc1tcling d~u dUQcgdi tai trang nay d€ xtr

ly 16i

Chi dfin include chen van ban van trong mot file JSP llic dich Cliphap cho chi dfin nay nhu sau

<% include file = "duiJng dan" %>

1.2.2.3 Chi dan taglib (The taglib directive)

Chi dfin taglib khai bao mot thu vi~n tag duqc include bdi trang JSP.Cac thu vi~n tag nay chua cac custom tag (tag thong dl;mg ) rna b~n co th€str d\lng trong trang JSP

Vi d\l sau chi ra mot thu vi~n tag co chua mot cool Tag Sau chi dfin

nay, b~n co th€ tham chie'u cac tag trong thu vi~n tag nay str d\lng ti~n to"

myTag.

<%@ taglib uri ="myApp/appTags" prefix ="myTags" % >

<myTags:coolTag>

</myTags:coolTag>

Cli phap cua taglib nhu sau:

<%@ taglib uri = "duiJng dan" prefix= "tagPrefix" %>

Luljn van t6t nghi~p_

Trang 22

ChucJng 1 Cang ngh~ JavaServer Pages Trang 13

tuong do'i hay kh6a tIm kie'rn trong t~p tin web.xrnl

• prefix :Dinh nghla chu6i ti~n to' rna chu6i nay phan bi~t rn(H

custom tag trong thu vi~n tag Cac ti~n to' jsp, jspx, java, javax,

khong hQp l~

1.2.3 Cac Scripting element (Scripting Elements)

Cac scripting element xac dinh rna hi~n hanh trong rnQt trang JSP

Ma nay c6 th~ dUQcvie't b~ng Java hay JavaScript

Cli phap chinh xac cua rna trong rnQt scripting element thl dUQcdinhnghla bdi ngon ngl1 kich ban rna b'.ln sl1 dl;lng trong trang JSP

C6 3 IO'.liscripting element dUQcli~t ke trong bang 1.2

sen tlet expression (bi~u thue)

M\Jc wch Tl;lOcae dinh nghla eho trang nhl1

la cae bie'n Chua dOl;lnrna eho tran

£)inh nghla cae ca u lt$nh dl1~e tinh toan tren server trl10e khi gdi dfi' lit$u xua't eua tran Wi client

~ Bang 1.2 1.2.3.1 Cae khai bao (Declarations)

MQt khai bao cho phep b'.ln khai bao cac dinh nghla rnd rQng trongrnQt trang JSP MQt khai bao dUQc sl1 dl;lng mQt cach tieu bi~u la d~ dinhnghla cac bie'n hay cac phuong thuc Cac khai bao khong ghi dl1 li~u xufttcho client

Cli phap cho mot khai bao nhu sau:

Khai bao sau dinh nghla rnQt bie'n va ham Java:

<%1 private String foo=null;

public String getFoo(){return this.foo;}

%>

".

Lugn van tat nghi~p_

Trang 23

ChUdng 1 Cong ngh~ JavaServer Pages Trang 14

-.

1.2.3.2 Cae Scriptlet

nAm trong form cua HTML text

1.2.3.3 Cae biiu thuc (Expressions)

Cac bi~u thuc la cac diu l~nh hay cac khai bao dUQc tinh toan trenServer truoc khi gdi ke't qua v~ client Ke't qua tra v~ cua mQt bi~u thuc cod(;lng dl1 li~u la chu6i

Cli phap cho mot bi€u thuc nhu sau:

1.2.4 Cac hanh vi (Actions)

JSP Cac hanh vi se dUQc li~t ke trong bang 1.3:

Action Elements

trong mot bean

LwJn van t6t nghi~p_

Trang 24

Chuang 1Cong ngh~ JavaServer Pages Trang 15

-

dich se tnl quy€n di€u khitin v€ cho trang du'Qc gQi

cua trang du'Qc gQi se bi ke't tht1c bdi chinh cuoc gQi do.

b<;tngdi request tu mot trang JSP nay tdi mot trang JSP khac

browser

~ Bang 1.3 1.2.4.1 jsp:useBean

Hanh vi jsp: useBean dinh nghla m(>t JavaBean trong m(>t trang JSP.Khi da du'Qc dinh nghla r6i, b(;lnco th~ tham chie"u Bean trong file JSP

com.myco.myapp Mybean

<jsp:useBean id= "myBean" class =" com.myco.myapp.Mybean"l>

Cli phap cd ban clla jsp:useBean nhu'sau:

Thu(>c Hnh beanName la ten clla bean, co d(;lng "a.b.c", rna ten nay

co th~ ho~c la ten clla m(>t lOp ho~c la ten clla m(>t tai nguyen, co d(;lng

Trang 25

Chtldng 1 Cong ngh~ JavaServer Pages Trang 16

-.

body

</jsp:useBean>

Than nay se du<jc g9i ne'u bean du<jc tC;lora Di~n hlnh la than se

chua ho~c cac scriptlet ho~c cac jsp:setProperty tag du<jc sa dl,lng d~ c~pnh~t rnQt bean vila du<jc tC;lorndi ; nhung nQi dung clla than khong bi gidihC;ln

<jsp:useBean> tag co nhung thuQc tinh sau:

- id: Chi ra ten du<jc sa dl,lng d~ xac dinh mQt bean trong scope vacling la d~ xac dinh ten bie'n kich ban cho bean

• page: Bean luon co trong trang hi~n hanh.

• request: Bean luon co trong d6i tu<jng request clla trang hi~n

hanh sa dl,lng phuong thuc getAttribute.

• session: Bean luon co tfong d6i tu<jng session clla trang hi~n

hanh sa dl,lng phuong thuc getValue.

• application: Bean luon co trong d6i tu<jng appliction clla trang

hi~n hanh sa dl,lng phuong thuc getAttibute.

dQng cua rnQt bean

thuc instantiate cua ldp java.beans.Bean.

ThuQc tinh nay cho phep dC;lngbie'n kich ban la khac bi~t vdidC;lngkhac Ne'u bC;lnbo qua tharn so' nay thl type se gi6ng vdi gia

tri clla thuQc tinh ldp

Vi dl,l sau thie't l~p rnQt thuQc Hnh sa dl,lng rnQt bi~u thuc

i+l%>"/>

LW7n van tot nghi~p_

Trang 26

ChucJng 1 Cong ngh~ JavaServer Pages

cac d?ng dfi' li~u khac nhti:

Chu @nd6i ki@u chu6i tron

)

~ Bang 1.4

Lugn Wln tot nghi~p_

Trang 27

Chuang 1 Cang nghf JavaServer Pages Trang 18

Vi dl) : <jsp :getProperty name ="user" property ="name" / >

Cli phap cua hanh vi hay nhu' sau:

sinh ra mQt exception ne'u bean khong du'Qc tIm tha'y

• property: La ten cua thuQc tinh, co gia tri rna b(;lnmu6n xua't ra 1.2.4.4 jsp :include

Chen cac tai nguyen dQng va tInh trong trang hi~n hanh

Vi dl).sau chen mQt trang HTML

Cli phap cua jsp :include nhu'sau:

ho~c

• page: Chi ra du'ong dftn cuafile du'Qc chen N€u du'ong dftn biit

d~u vdi "/" thl du'ong dftn do la tu'ang d6i d6i vdi ling dl).ng cuatrang JSP N€u du'ong dftn khong bftt d~u vdi "\" thl no la tuy~td6i d6i vdi trang JSP dang du'Qcdich.

DC;lngthli 2 cua jsp:include co them hanh vi jsp :param Hanh vi nay

cho phep bC;lnthem cac tham s6 cho HTTP request du'Qc nh~n bdi trang JSPdich

1.2.4.5 jsp :forward

Hanh vi jsp :forward gQi mQt trang hay mQt JavaServlet trong cling

mQt ling dl).ng nhu' la mQt trang hi~n hanh jsp forward se cha'm dlit slf

hOC;ltdQng cua trang JSP hi~n hanh

Trang 28

Chuang 1 Cong ngh~ JavaServer Pages Trang 19

-.

Ne'u du li~u xuftt nam trong buffer, rna buffer bi xoa thl co nghla lanQi dung cling bi xoa, ne'u b~n gQi hanh vi jsp forward hay gtYil~i mQt request stYd\lng phl1dng thuc redirect cua d6i tl1Qngresponse.

Vi d\l sau gQi mQt trang JSP til mQt trang khac:

<% String whereTo ="/templates/ "+someValue;%>

Cd phap cua jsp :forward nhl1 sau:

ho~c

<jsp :param name ="paramName" value ="paramValue" I>

</jsp forward >

1.2.4.6.jsp :param

pairs) cho mQt HTTP request khi b~n gdi mQt request til mQt trang JSP naytoi mQt trang JSP khac B~n chI co th~ stYd\lng hanh vi nay ke't hQp voi

cac hanh vi nhl1jsp :include, jsp forward, jsp :plugin.

1.3 CAC DOl TU(1NG JSP 1.3.1 Cae dol tli(jng JSP

Trong phgn nay se rna tel cac d6i tl1Qng rna b~n co th~ truy xuftt tilmQt trang JSP B~n co th~ stYd\lng cac d6i tl1Qng thtfc hi~n cac tac v\l cdban trong mQt trang JSP, bao g6m:

D6i tl1Qng request :HTTP request dl1Qc gdi til client toi trang JSP.

nam trong request header

JSP B~n co th~ stYd\lng d6i tl1Qngd~ tra du li~u v€ cho client, baog6m cac c~p name/value dl1Qcd~t trong response header

Trang 29

Chuong 1 Cong ngh~ JavaServer Pages Trang 20

Doi tu<;fngout: Dong du li~u xuit dU<;fCghi xuong client

Cac doi tU<;fngJSP hOi'lll toan dU<;fCthao tac nhu nhung doi tU<;fngtrong trong Java Servlet API JSP cung cip cho b~n illQtky thu~t truy xuitnhanh cac doi tU<;fngcua Java Servlet API

Trong bang 1.5 li~t ke cac doi tu<;fngJSP va dinh nghia d~ng doitu<;fngtuong ang trong Serv let API

D6i tu'qn JSP va d6i tu'qn tu'dn un ella Servlet

tUQng D<;tngd6i trong Java Servlet API D<;tidi~n cho C<iigl

-

D6iSPApplication

response session

ja vax.serv let Serv letContext

j avax serv let.http HttpSession

d6i

dUQc t<;to cho

~ Bang1.5

B~n co th€ sa dl;lng doi tu<;fngapplication d€ chi a se du li~u giua cacuser MQt ang dl;lng dl!a tren n~n tang JSP du<;fcdinh nghla nhu la tit cacac t~p tin .jsp trong thu illl;lC£10 va trong cac thu illl;lCcon cua no

Cll phap:

application Phuong thilc(bitn )

application

GetAttributeN arnesO

LWJ,nwin tot nghi~p_

Tnt v~ thuQc Hnh vdi ten Cl;l th€ Phuong thuc nay tnl v~ null ne'u rnQt thuQc Hnh co ten

khan t6n t<;ti Tra v~ ten cua rn6i thuQc tinh tron

Trang 30

Churmg 1 C6ng ngh? JavaServer Pages Trang 21

application

null ne'u tham so na y khang t6n t<;li

engine

~ Bang 1.6

1.3.1.2 DOl tzt(lng config (The config Object)

chuySn thong tin dlu hlnh cho servlet khi servlet nay dUQckhoi t~o Thong

etServ letN ameO

thue eua dol ttfc/o conti

1.3.1.3 DOl tzt(lng exception (The exception Object)

DO'itUQng exception d~i di~n cho ta't ca cac 16i va cac exception

LutJ-n van ttft nghi?p_

Trang 31

Chl1(Jng 1 Cong ngh~ JavaServer Pages Trang 22

exception

~ Bang 1.8

1.3.1.4 DOl tli(jng out (The out Object)

D6i tu<1ngout dinh nghia mot d6i tu<1ngdung d~ ghi xu6ng dong dil'li~u xua't cua trang JSP

1.3.1.5 Dol t1i(jngpage Context (The page Context Object)

D6i tu<1ngpageContext cung cffp mot co ch€ htu tril' thong tin ClJCbOxu6ng trang JSP M6i trang JSP d~u co d6i tu<1ng pageContext rieng rnad6i tu<1ng nay du<1cte;tOra khi trang bat d~u va bi pha huy khi trang k€tthlic Cac phuong thl1c cua d6i tl1<1ngpageContext cho phep be;tntroy xua'tthong tin v~ trang JSP va cho phep be;tnthtfc hi~n cac hanh vi

Lugn van tfft nghi~p_

Trang 32

Chu(Jng 1 C6ng ngh~ JavaServer Pages Trang 23

tha'y.

page scope Tnl v~ null ne'u d6i tUQng khang dUQc tim tha'y.

-attribute)

);> Bang 1.10

1.3.1.6 DOl t1i(lng request

D6i tUQngrequest nh~n cac gia tri rna client gdi tdi Web server trongsu6t mQt HTTP request

eli phap:

request.Phu(Jng thlic(bie'n )

Bang 1.11 li~t ke cac phuong thuc thong dl;lllg cua d6i tUQng request

thue ella d6i tu'i n re uest

Tnt v~ GET, POST, hay PUT cho phuong thuc HTTP du'QCsa dl,ln d€ t~o ra re uest

Tnt v~ gia tri clla mot tham so' trong request Tni v~ null ne'u tham so' khan t6n t~i

Tni v~ ten clla m6i tham so' tron re uest Tni v~ ta't ca cac gia tri clla tham so' Cl,lth€

Trang 33

ChU(Jflg 1 Cong ngh~ JavaServer Pages Trang 24

response Phu(Jflg thrlc(bie'n )

response

them vao cac gia tri header dff t6n tai. .contains Header (String name) Tra v€ "true" neu response header dUQc d?t ten

dff dUQc thiet l~p

thay the ~:datri hi~n hanh cua header

~ BangI.12

1.3.1.8 DOltllf/ng session (The session Object)

D6i tU(jng session htu tru thong tin cho ID9t user - session d~c bi~t.Cac bie'n dU(jc htu tru trong d6i tu(jng session se khong bi xoa khi nguoi sli'dl;lng chuy€n d6i giua cac trang trong ling dl;lng

Cli phap :

session Phu(Jflg thrlc(bie'n )

Bang 1.13 li~t ke cac phuong thlic thong dl;lng cua d6i tu(jng session

Tra v€ d6i tUQng voi ten C\l th€ Tra v€ null neu

Trang 34

ChLtdng 1 Cong ngh~ JavaServer Pages Trang 25

etIdO

getLastAccessedTimeO

getMaxlnacti velntervalO

dU<;5C tinh b~n mili ia

dU<;5c ke't h<;5 voi session na Tnl v~ so thai gian Ion nha't,du<;5Ctinh b~ng

MQt trong nhil'ng bQ ph~n quan trQng nha't cua ung dl;lng thuong m~i

di~n ti't la HTML Form rna Cido nguoi si't dl;lng nh~p thong tin vao Thong

tin Ciday co th~ la ten va dia chi cua mQt khach hang vv

1.4.1 Gdi diili~u tit form nhti the' nao?

Thong tin rna nguoi si't dl;lng nh~p vao trong form dUQc lu'u trong d6itUQngrequest D6i tUQng nay se dUQc gCiitu client de'n JSP engine Di~u gl

se xay ra tie'p theo ? Hlnh 1.5 se minh hQa dii' li~u dUQc chuy~n tu clientde'n server nhu the' nao

Lugn win tot nghi~p_

Trang 35

Churmg 1 Cong ngh? JavaServer Pages Trang 26

~ Hinh 1.5:Mo tildft lieu chuyin til client den Server

JSP engine gdi d6i tUQng request Wi bftt cu server-side component

chi dinh Component se xii'19 request, co th~ Ia Ifty dcr li~u tu mQt databaseho~c co th~ gdi tnt mQt d6i tUQng response v~ cho JSP engine JSP engine

se chuy~n d6i tUQngresponse Wi trang JSP, d do dcr li~u se dinh dC;lngtuytheo m~u HTML cua trang JSP engine va Web server sau do se gdi trangJSP da: dUQcthayd6i v~ cho client, d do nguoi sii' d\lng co th~ xem ke't quatrong Web browser Giao thuc dung d~ giao tie'p gicra client va server coth~ la HTTP hay mQt giao thuc nao khac

1.4.2 T~o mQt Form nhtl the' nao ?

Don gian la bC;lndinh nghla mQt HTML form trong t~p tin JSP ngu6n,sii' d\lng cac JSP tag d~ chuy~n dcr li~u gicra cac form va gicra cac d6i tUQngserver-side

MQt cach t6ng quat, bC;lnthuc hi~n cac bUDcsau:

bi B~t d~u vie't mQt t~p tin JSP n:gu6n, tC;lomQt HTML form va gancho m6i form element (ph~n tii' form) mQt cai ten

Lu()n van tot nghi?p_

Trang 36

Ch['(dng ] Cong ngh~ JavaServer Pages Trang 27

b2 Vie't Bean trong mQt t?P tin co du6i java, dinh nghla cac thuQctinh, cac phuong thuc GET va POST sao cho phil hQp vdi ten cua formelement

b3 Trd v~ t?P tin JSP ngu6n, them tag <jsp :useBean> dti t'.lo haydinh vi mQt instance cua Bean

b4 Them tag <jsp:setProperty> dti thie't l?p cac thuQc tinh trongBean til HTML form

bS.Them tag <jsp:getProperty> dti H1Y dil' lit%util Bean

b6.Ne'u b'.ln c~n thlfc hit%nthem c6ng vit%cxU'ly dil' lit%ungudi sU'dl;lng (user data) thl hay sU'dl;lng d6i tUQngrequest til trong mQt scriptlet

Vi dl;lHello va User sau se lam r6 them cac budc tren

1.4.2.1 Ung dlJ,ng Hello ddn gian :

1.4.2.1.1 NgliiJi sit dlJ,ng nhljp vao mf)t ten (hinh 1.6) va Duke noi

Trang 37

ChucJng 1 Cong ngh~ JavaServer Pages

<td width ="150"> &nbsp; <ltd>

<td align= "right" width= "250">

<img src= "duke waving.gij">

<ltd>

<Itr>

<Itable>

<br>

1.4.2.1.2.-2 The Main JSP File (hellouser jspl

Lu(jn wIn tot nghi~p_

Trang 28

My name is Duke What's yours?

Trang 38

ChUdng 1 Cong nghf JavaServer Pages

<%@ page import= "hello.NameHandler" %>

class= "hello.NameHandler" I>

<jsp:setProperty name= "mybean" property="*" I>

<html>

Trang 29

~ HZllh 1.9

<head> <title>Hello, User<ltitle></head>

<body bgcolor= "#FFFFFF" background= "background.gif">

<%@ include file ="dukebanner.html" %>

<table border= "0" width= "700">

<form method= "get">

<input type="text" name= "username" size= "25">

<br>

<input type="submit" value= "Submit">

<input type="reset" value= "Reset">

Trang 39

Chu(Jng ] Cang ngh~ JavaServer Pages

<lhtml>

1.4.2.1.2.3 The Respollse File (respollsejsp)

<table border= "0" width='700">

private String username;

Trang 40

Chu(Jng 1 Cong ngh~ JavaServer Pages Trang 31

1.4.3 Form Element

Html : < form action ="url" > <!form>

Target, Onsubmit, Onreset, Accept, va Accept-Charset.

1.4.3.1.Actioll

Tl].uQctinh Action chi ra URL clla servlet hay IIlQt chuong trlnh CGl xU'

ly FORM data (dii' li<%utrong FORM) hay mQt dia chi email rna d do FORMdata dUQcgdi di

1.4.3.2 Method

ThuQc tlnh Method chi ra dii' li<%use dUQc truy8n Wi HTTP server nhuthe nao Khi phuong thuc GET dUQcsU'd\lng, dii' li<%udUQc xuftt toi diSm cuO'iclla URL dUQc chi dinh sau mQt dftu chftm hoi Phuong thuc GET la phuongthuc m~c dinh va dUQc sU' dl;lng khi mQt bowser yeu cgu mQt URL Khiphuong thuc POST dUQcsU'dl;lng, dii' li<%udUQcgdi tren mQt day rieng bi<%t

fch lQi clla vi<%csU'dl;lng phuong thuc GET la: phuong thuc don gian; vavoi servlet rna sU'dl;lng GET, nguoi sU'd\lng co thS truy xuftt nhii'ng servlet do

dS kiSm tra va debug (go 16i )ma khong cgn phai t'.lOmQt form, rna don gianchi la nh~p vao URL voi dii' li<%udung da dUQc gdi M~t khac, do kich thuocclla URL bi giOi h'.ln tren mQt vai browser, nen GET yeu cgu sO'1uQng dii' li<%ugdi quaphai gioi h'.ln, trong khi do thl POST thl khong MQt IQi ich cua GET

la hgu he"t cac browser d8u hiSn thi URL trong mQt truong dia chi d dinh cuabrowser

1.4.3.3 Ellctype

ThuQc tlnh nay chi ra cach dii' li<%udUQc rna hoa truoc khi dUQc truy8n

di Trong do:

+ Cac ky tv d~c bi<%tdUQcrna hoa duoi d'.lng: %xx (xx: la cac sO'hexatuong ung voi ky tv trong ba ng rna ASCII)

tich bdi dftu (&)

LwJ,n van tot nghi~p_

Ngày đăng: 01/09/2023, 22:14

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w