Luận văn máy tính java mobile và xây dựng ứng dụng minh họa

234 500 0
Luận văn máy tính java mobile và xây dựng ứng dụng minh họa

Đ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

Luận văn máy tính java mobile và xây dựng ứng dụng minh họa

TRNG I HC KHOA HC T NHIÊN KHOA CÔNG NGH THÔNG TIN B MÔN MNG MÁY TÍNH – VIN THÔNG NG NGUYN KIM ANH – ÀO ANH TUN NGHIÊN CU JAVA MOBILE XÂY DNG NG DNG MINH HA KHÓA LUN C NHÂN TIN HC TP.HCM, 2005 TRNG I HC KHOA HC T NHIÊN KHOA CÔNG NGH THÔNG TIN B MÔN MNG MÁY TÍNH – VIN THÔNG NG NGUYN KIM ANH – 0112424 ÀO ANH TUN – 0112451 NGHIÊN CU JAVA MOBILE XÂY DNG NG DNG MINH HA KHÓA LUN C NHÂN TIN HC GIÁO VIÊN HNG DN Thy NGUYN MINH TUN NIÊN KHÓA 2001-2005 Li Cm n! Sau hn nm tháng tìm hiu thc hin, lun vn “Nghiên cu công ngh Java Mobile xây dng ng dng minh ho” đã c bn hoàn thành.  đt đc kt qu này, chúng tôi đã n lc ht sc đng thi cng nhn đc rt nhiu s quan tâm, giúp đ, ng h ca các thy cô, bn bè gia đình. Trc ht, chúng em xin gi li cm n chân thành đn B môn Mng máy tính Vin thông, Khoa Công ngh Thông tin, trng i hc Khoa hc T nhiên các thy cô đc bit là Thy Nguyn Minh Tun đã tn tình giúp đ, hng dn chúng em hoàn thành lun vn này. Chúng tôi rt cm n các bn bè trong khoa, các anh ch, các bn trong cng đng Java Vit Nam đã bên cnh ng h, đóng góp ý kin cho chúng tôi trong quá trình thc hin lun vn. chúng con cng xin chân thành cm n gia đình đã luôn đng viên, to điu kin tt nht cho chúng con hc tp hoàn tt lun vn. Lun vn đã hoàn thành vi mt s kt qu nht đnh, tuy nhiên vn không tránh khi sai sót. Kính mong s cm thông đóng góp ý kin t các thy cô các bn. Thành ph H Chí Minh, tháng 7 nm 2005 ng Nguyn Kim Anh - ào Anh Tun MC LC Li Nói u 1 Phn 1: Kin thc nn tng J2ME 5 Chng 1: Tng quan v J2ME 5 1.1 Gii thiu J2ME (Java 2 Micro Edition) 5 1.2 Lý do chúng ta cn J2ME 6 1.3 Các thành phn ca J2ME: 7 1.3.1 Configuration: 7 1.3.2 Profile: 9 1.3.3 Máy o Java 10 Chng 2: Gii thiu CLDC MIDP 13 2.1. CLDC 13 2.1.1. Yêu cu phn cng: 13 2.1.2. Yêu cu phn mm: 13 2.1.3. Máy o Java: 13 2.2. MIDP: 16 2.2.1. Yêu cu phn cng: 16 2.2.2. Yêu cu phn mm: 16 2.2.3. Cu trúc MID Profile: 16 2.2.4. MIDlet Suite: 18 2.2.5. Môi trng phát trin ng dng J2ME 22 Chng 3: Các vn đ c bn ca chng trình MIDlet 25 3.1. Cu trúc c bn: 25 3.2. Xây dng mt ng dng MIDlet: 25 3.3. Lp MIDlet: 26 3.4. Lp MIDletStateChangeException: 28 3.5. Display 28 3.6. Lp Displayable: 30 3.7. Qun lý các s kin (event) 32 3.7.1. Command & CommandListener 33 3.7.2. Item ItemStateListener 38 Chng 4: Giao din đ ha cp cao 40 4.1. Screen: 42 4.2. Form: 43 4.3. Item: 45 4.3.1. DateField: 46 4.3.2. Gauge: 48 4.3.3. String Item: 51 4.3.4. TextField: 53 4.3.5. ChoiceGroup: 57 4.3.6. Image ImageItem: 61 4.4. List: 64 4.5. TextBox: 69 4.6. Alert AlertType: 72 4.6.1. Alert: 72 4.6.2. AlertType: 74 4.7. Ticker: 77 Chng 5: Giao din đ ha cp thp 78 5.1. Canvas: 78 5.1.1. H to đ: 79 5.1.2. V trên đi tng Canvas: 79 5.1.3. Bt s kin trong các đi tng Canvas: 82 5.1.4. Game action: 85 5.1.5. S kin con tr: 87 5.2. Graphics: 89 5.2.1. Màu sc: 90 5.2.2. Nét v: 93 5.2.3. Font ch: 98 5.2.4. V các đi tng hình nh (image): 101 5.2.5. Các phng thc tnh tin đi tng: 103 5.2.6. Vùng xén (Clipping regions): 105 Chng 6: Lu tr thông tin vi RMS 106 6.1. Gii thiu RMS 106 6.2. Duyt danh sách Record vi RecordEnumeration 115 6.3. Sp xp bng RecordComparator 117 6.4. Lc record vi RecordFilter 119 6.5. Nhn thông đip khi Record Store thay đi 121 6.6. X lý li khi thao tác vi Record Store 122 Chng 7: Kt ni mng vi Generic Connection Framework (GCF) 124 7.1. Gii thiu GFC 124 7.2. Lc đ lp 124 7.3. Kt ni HTTP: 127 7.3.1. Khi to kt ni: 127 7.3.2. Các đc đim ca kt ni HTTP bng J2ME: 130 7.3.3. Thông s kt ni: 137 7.4. Kt ni socket Datagram (UDP) 138 7.5. Kt ni TCP socket 141 7.6. Gi nhn SMS 144 Phn 2 : Web Service ng dng "ng Ký Hc Phn" 149 Chng 8: Gii thiu Web Service 149 8.1. ng dng phân tán (Distributed Application) 149 8.1.1. Gii thiu 149 8.1.2. Các vn đ ny sinh trong h thng ng dng phân tán 150 8.1.3. Hn ch ca nhng mô hình ng dng phân tán trc đây 151 8.2. Web Service 152 8.2.1. nh ngha 152 8.2.2. Thành phn c bn ca Web service: 152 8.2.3. Hot đng ca Web service 152 8.2.4. u đim ca web service 155 8.3. Các thành phn chính ca Web Service 157 8.3.1. SOAP (Simple Object Access Protocol) 157 8.3.2. WSDL (Web Service Definition Language) 162 Chng 9: ng dng đng ký hc phn 172 9.1 c t chng trình: 172 9.1.1 Tng quan: 172 9.1.2 Các chc nng chính: 172 9.2 Kin trúc chng trình: 174 9.2.1 Mô hình kt ni: 174 9.2.2 Mô hình bo mt (mã hoá password): 176 9.3 Phân tích - thit k: 177 9.3.1 Mô hình use case: 177 9.3.2 c t mt s use case chính: 178 9.4 Thit k mô hình d liu: 183 9.4.1 Mô hình thc th kt hp: 183 9.4.2 Các bng d liu: 183 9.4.3 Chi tit các bng d liu: 184 9.4.4 Ràng buc d liu: 188 9.4.5 Mô hình d liu: 190 9.4.6 Các chc nng store procedures: 190 9.4.7 Thit k lp: 191 9.5 Cài đt - th nghim: 192 9.5.1 Yêu cu phn cng: 192 9.5.2 Yêu cu phn mm: 193 9.5.3 Giao din chng trình: 193 Chng 10: Tng kt 205 10.1 Kt lun: 205 10.2 Hng phát trin: 207 Tài liu tham kho 210 Ph Lc A: Hng dn s dng công c Sun Wireless ToolKit 2.3 211 Ph Lc B: Xây dng S dng Web Service 217 Ph Lc C: Gii thiu các th vin JSR 222 Danh Sách Các Hình Hình 1.1 Các thit b J2ME h tr 6 Hình 1.2 Các thành phn ca J2ME 7 Hình 1.3 Configurations các thit b 9 Hình 1.4 Cu trúc chng trình J2ME 11 Hình 1.5 Cu trúc chng trình MIDP 11 Hình 2.1 Cu trúc thit b MID 17 Hình 3.1 Command Exit 34 Hình 3.2 Command Label 36 Hình 3.3 Ánh x soft-button 36 Hình 4.1 S đ các lp giao din đ ho 40 Hình 4.2 Giao din đi tng DateField 46 Hình 4.3 Giao din đi tng Gauge ch đ tng tác 48 Hình 4.4 Giao din đi tng Gauge ch đ không tng tác 49 Hình 4.5 Giao din đi tng StringItem 52 Hình 4.6 Giao din đi tng TextField 56 Hình 4.7 Giao din đi tng ChoiceGroup ch đ mt la chn 59 Hình 4.8 Giao din đi tng ChoiceGroup ch đ nhiu la chn 60 Hình 4.9 Giao din đi tng List dng menu 67 Hình 4.10 Giao din đi tng List cho phép chn nhiu la chn 68 Hình 4.11 Giao din đi tng TextBox 71 Hình 4.12 Giao din đi tng Alert 76 Hình 4.13 Giao din Ticker 77 Hình 5.1 Các phng thc v đng cong 94 Hình 5.2 Các phng thc v hình ch nht 95 Hình 5.3 Các phng thc h tr v Text 97 Hình 5.4 Các đnh dng trong Text Graphic 97 Hình 5.5 Các phng thc to font 100 Hình 5.6 V bng đi tng Immutable Image 101 Hình 5.7 V bng đi tng Mutable Image 102 Hình 5.8 Các đnh dng v trí trong Graphics 103 Hình 7.1 Lc đ các lp trong th vin GCF 125 Hình 7.2 Kt ni UDP 138 Hình 7.3 Kt Ni TCP 141 Hình 7.4 Lc đ lp th vin WMA 145 Hình 8.1 Hot đng ca Web Service 152 Hình 8.2 Mt client truy xut đn nhiu web services cùng lúc 154 Hình 8.3 Mt web service có th triu tp đn các web services khác 155 Hình 8.4 Web Service Endpoint 162 Hình 9.1 Kin trúc chng trình ng dng 174 Hình 9.2 Mô hình mã hoá password 176 Hình 9.3 Lc đ use case 177 Hình 9.4 Mô hình thc th kt hp ER 183 Hình 9.5 Ràng buc chu trình 189 Hình 9.6 Mô hình c s d liu 190 Hình 9.7 Mô hình Lp 192 Hình 9.8 S đ các màn hình 194 Hình 9.9 Màn hình welcome 195 Hình 9.10 Màn hình đng nhp 196 Hình 9.11 Confirm 197 Hình 9.12 Menu chc nng 198 Hình 9.13 Màn hình đng ký hc phn lý thuyt 199 Hình 9.14 Màn hình đng ký hc phn thc hành 200 Hình 9.15 Màn hình xem thi khoá biu 201 Hình 9.16 Màn hình xem kt qu hc tp 202 Hình 9.17 Màn hình xem phiu đng ký 203 Hình 9.18 Màn hình xem thi khoá biu 204 Hình 10.1 Hng phát trin thc t 207 Hình A.1 Công c Sun WirelessToolkit 2.3 211 Hình A.2 Màn hình chính ca công c 212 Hình A.3 To project mi 212 Hình A.4 Các options cho project 213 Hình A.5 Chnh sa ni dung file Jad Jar 214 Hình A.6 Biên dich project 215 Hình A.7 óng gói ng dng 216 Hình B.1 To project Web Service 217 Hình B.2 Khai báo lp hàm 218 Hình B.3 Export nhiu hàm cùng lúc 219 Hình B.4 Màn hình thc thi Web Service ca IE 219 Hình B.5 File WSDL 220 Hình B.6 Công c Stub Generator 221 Hình B.7 Các options ca công c Stub Generator 221 Danh Sách Các Bng Bng 2.1 Cu trúc file manifest 19 Bng 2.2 Cu trúc file JAD 20 Bng 3.1 Lp MIDlet 27 Bng 3.2 Lp Display 29 Bng 3.3 Lp Displayable 32 Bng 3.4 Các Command Type 37 Bng 3.5 Command CommandListener 38 Bng 3.6 Item ItemStateListener 39 Bng 4.1 Lp Screen 42 Bng 4.2 Lp Form 44 Bng 4.3 Lp Item 45 Bng 4.4 Lp DateField 46 Bng 4.5 Lp Gauge 49 Bng 4.6 Lp StringItem 51 Bng 4.7 Các Ràng Buc ca TextField 53 Bng 4.8 Lp TextField 55 Bng 4.9 Lp ChoiceGroup 58 Bng 4.10 Lp Image 62 Bng 4.11 nh dng ImageItem 62 Bng 4.12 Lp ImageItem 63 Bng 4.13 So sánh List ChoiceGroup 65 Bng 4.14 Lp List 66 Bng 4.15 So sánh TextField TextBox 69 Bng 4.16 Lp TextBox 70 Bng 4.17 Lp Alert 73 Bng 4.18 AlertType 75 Bng 4.19 Lp Ticker 77 Bng 5.1 Truy vn kích thc Canvas 79 Bng 5.2 Lp Canvas 81 Bng 5.3 Giao tip vi Application Manager 81 Bng 5.4 Mã Phím 83 Bng 5.5 S kin keyPressed 84 Bng 5.6 S kin Game Action 85 Bng 5.7 Bt s kin trong Game Action 86 Bng 5.8 S kin con tr 87 Bng 5.9 Lp Graphics 90 Bng 5.10 Các phng thc v 93 Bng 5.11 X lý Text 96 Bng 5.12 Giá tr Anchor 96 Bng 5.13 X lý Font ch 98 Bng 5.14 Các giá tr Font 99 Bng 5.15 V hình nh 101 Bng 5.16 Giá tr Image Anchor 103 Bng 5.17 Các phng thc tnh tin 103 Bng 5.18 Vùng xén 105 Bng 6.1 Mô hình Record Store 107 Bng 6.2 Lp RecordStore 109 Bng 6.3 Lp RecordEnumeration 117 Bng 6.4 Các giá tr hng đ sp xp record 118 Bng 6.5 Lp RecordListener 121 Bng 7.1 Lp Connector 128 Bng 7.2 Mode Kt Ni 128 Bng 7.3 Các Request Method chính 130 Bng 7.4 Các phng thc set/get Request Method 131 Bng 7.5 Các phng thc truy vn HTTP Header 134 Bng 7.6 Ly thông s kt ni 137 Bng 7.7 Lp DatagramConnection 139 Bng 7.8 Lp Datagram 140 Bng 7.9 Thuc tính ca SocketConnection 142 Bng 7.10 Lp SocketConnection 143 Bng 7.11 Các interfaces chính ca WMA 144 Bng 9.1 Danh sách các Use Case 178 Bng 9.2 Table ChuyenNganh 184 Bng 9.3 Table SV 184 Bng 9.4 Table MonHoc 185 Bng 9.5 Table GV 185 Bng 9.6 Table Lop 185 Bng 9.7 Table Lop_MonLT 186 Bng 9.8 Table Lop_MonTH 187 Bng 9.9 Table PhanCongTH 187 Bng 9.10 Table DangKyLT 187 Bng 9.11 Table DangKyTH 187 Bng 9.12 Table ThongBao 188 [...]... d ch Java không biên d ch mã ngu n tr c ti p sang mã máy mà biên d ch sang m t d ng mã trung gian mà máy o Java hi u ng d ng, máy o Java s c (mã bytecode) Khi có nhu c u s d ng c mã trung gian này d ch ra mã máy th c thi; nh vào quá trình trung gian ó m t ng d ng Java có th ch y trên b t k môi tr nào có cài t máy o Java t c gi i thi u l n ã thay ng thích u vào n m 1995, ngày nay m c tiêu Java. .. MIDP các th vi n liên quan ph c v cho vi c vi t ng d ng trên i n tho i di ng 1.3.3 Máy o Java Nh chúng ta ã bi t, m t ch ng trình Java s c biên d ch thành mã trung gian sau ó chính máy o Java s biên d ch ph n mã này sang mã máy th c thi Máy o Java s ch u trách nhi m vi c cung c p tính n ng b o m t, c p phát thu h i b nh qu n lý vi c i u ph i các ti n trình Chúng ta có th nói chính máy o Java. .. lý các ng d ng Java, bao g m: Cho phép ch n kích ho t ng d ng Cho phép g b 2.1.3 ng d ng kh i thi t b Máy o Java: Do các thi t b di ng dùng CLDC th ng có tài nguyên h n ch nên Sun ã ra máy o Java KVM ph c v riêng cho các thi t b này Máy o KVM th c ch t là m t b ph n con c a các máy o trên môi tr h n ch khác bi t so v i hai phiên b n trên 13 ng J2SE J2EE nên c ng có nhi u Java Mobile M t s h... Ta s xây d ng m t ng d ng J2ME n gi n mô ph ng quá trình biên d ch th c thi, ng d ng có tên Welcome file source code có tên Welcome .java C:\Midlets\Welcome\Welcome .java Quá trình biên d ch Pre-verify: biên d ch ta chuy n n th m c ch a ng d ng (C:\Midlets\Welcome\) g i l nh: javac -bootclasspath c:\j2me\midp1.0.3fcs\classes Welcome .java ho c javac –bootclasspath %CLASSPATH% Welcome .java. .. server chu n trên Windows J2EE Java 2 Enterpise Edition, phiên b n Java cho nh ng d án l n J2ME Java 2 Micro Edition, phiên b n Java cho nh ng thi t b nh J2SE Java 2 Standard Edition, phiên b n Java ra PC thông th i u tiên, dành cho ng JCP T ch c Java Community Process JDK Java Development Kits JSR Java Specification Requests, nh ng yêu c u c n b sung cho các phiên b n Java JSR-172 Th vi n truy xu t... ki n óng góp s thông c m c a quý th y cô các b n! Xin chân thành c m n! Kim Anh – Anh Tu n 4 Java Mobile Ph n 1: Ki n th c n n t ng J2ME Ch 1.1 ng 1: T ng quan v J2ME Gi i thi u J2ME (Java 2 Micro Edition) J2ME là m t nhánh c a ngôn ng l p trình JAVA c phát tri n nh m h ng t i vi c l p trình cho các thi t b “nh ” (micro) có b nh , kh n ng hi n th x lý h n ch Ban bi t u Java c xây d ng ch g... J2ME nh sau: 10 ng Java Mobile Hình 1.4 C u trúc ch N u ch ng trình c biên d ch v i CDC, ch o “truy n th ng” mang các N u ch ng trình c tính nh ch ng trình s ch y v i máy o c tính riêng do CLDC òi h i ng trình xây d ng b i MIDP, chúng ta có c u trúc chuyên bi t sau: Hình 1.5 C u trúc ch T ng d ng trình s ch y trên các máy ng trình J2SE c biên d ch v i CLDC, ch chuyên bi t KVM nh ng V i ch ng... th , n ng l c x lý kh n ng k t n i m ng c a các thi t b Nh chúng ta ã bi t, các thi t b di ng r t khác nhau v ngu n tài nguyên, v kh n ng ph n c ng V i nh ng thi t b có n ng l c h n ch , n u ta 7 a Java Mobile quá nhi u th vi n h tr vào máy o trên thi t b ó s gây ch m h th ng d th a không c n thi t V i nh ng thi t b có kh n ng cao h n, chúng ta s a thêm nhi u th vi n h tr vào máy o giúp ích cho... ng trình MIDP i u hành có h tr máy o Java (KVM), bên trên là CLDC trên cùng là MID Profile Lúc này khái ni m “Vi t m t l n, ch y b t c 11 Java Mobile môi tr ng nào” c a Sun không còn úng hoàn toàn vì ã xu t hi n máy o chuyên bi t KVM M t s ch J2SE ng ng trình vi t b ng MIDP s không ch y trên môi tr c l i Tuy nhiên chúng ta ph i c m kích các n l c c a Sun ã giúp cho Java tr thành m t trong nh ng... 1995, ngày nay m c tiêu Java nh m i khá nhi u Java hi n nay không ch nh m thu n; hai n m sau ngày Enterprise Edition) ã u ng n h máy tính n c ng bàn n c ra m t, m t phiên b n Java m i là J2EE (Java 2 c gi i thi u nh m t i vi c phát tri n các ng d ng có qui mô l n h n Phiên b n m i nh t Edition) J2ME nh m h n ch nh c thêm vào dòng ngôn ng Java là J2ME (Java 2 Micro n vi c phát tri n ng d ng cho các . Windows J2EE Java 2 Enterpise Edition, phiên bn Java cho nhng d án ln. J2ME Java 2 Micro Edition, phiên bn Java cho nhng thit b nh. J2SE Java 2 Standard Edition, phiên bn Java ra đi. mà máy o Java hiu đc (mã bytecode). Khi có nhu cu s dng ng dng, máy o Java s đc mã trung gian này và dch ra mã máy và thc thi; nh vào quá trình trung gian đó mt ng dng Java. nào có cài đt máy o Java tng thích. c gii thiu ln đu vào nm 1995, ngày nay mc tiêu Java nhm đn cng đã thay đi khá nhiu. Java hin nay không ch nhm đn h máy tính đ bàn đn

Ngày đăng: 27/05/2014, 08:28

Từ khóa liên quan

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan