NGHIÊN cứu JAVA MOBILE và xây DỰNG ỨNG DỤNGMINH họa

234 276 0
NGHIÊN cứu JAVA MOBILE và xây DỰNG ỨNG DỤNGMINH 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, khóa luận, chuyên đề, tiểu luận, quản trị, khoa học, tự nhiên, kinh tế

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 . TÍNH – VIỄN THÔNG ĐẶNG NGUYỄN KIM ANH – ĐÀO ANH TUẤN NGHIÊN CỨU JAVA MOBILE VÀ 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. ĐẶNG NGUYỄN KIM ANH – 0112424 ĐÀO ANH TUẤN – 0112451 NGHIÊN CỨU JAVA MOBILE VÀ 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

Ngày đăng: 04/08/2013, 15:41

Từ khóa liên quan

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

Tài liệu liên quan