Thư viện tri thức trực tuyến
Kho tài liệu với 50,000+ tài liệu học thuật
© 2023 Siêu thị PDF - Kho tài liệu học thuật hàng đầu Việt Nam

Xây dựng ứng dụng RSS Reader sử dụng công nghệ Web Service và AJAX
Nội dung xem thử
Mô tả chi tiết
Báo cáo tốt nghiệp RSS Reader với Webservice và AJAX
LỜI NÓI ĐẦU
Sự ra đời của Internet không những là bước ngoặt lớn trong công nghệ thông tin
mà còn ảnh hưởng mạnh mẽ, làm thay đổi cách tư duy và mở ra những cách tiếp cận và
phương pháp giải quyết vấn đề hoàn toàn mới mẻ và có hiệu quả cao trong mọi lĩnh vực
đời sống xã hội. Mạng Internet cho tới nay đã được sử dụng rộng rãi như một công cụ
hữu hiệu để khai thác và trao đổi thông tin cũng như các dịch vụ tiện ích khác đang
không ngừng được phát triển mạnh mẽ và đa dạng. Có thể nói Internet là nguồn khai thác
thông tin tiện lợi, vô cùng phong phú và sẽ ngày càng trở nên hiệu quả hơn với những
phần mềm hỗ trợ liên tục được ra đời và nâng cấp.
Trong thời gian thực tập tại công ty Netnam – Viện công nghệ thông tin, nhóm
sinh viên chúng em đã được chỉ dẫn và định hướng theo hướng nghiên cứu và phát triển
các ứng dụng trên Web sử dụng các công nghệ mới như SOA, WebService và AJAX.
Chúng em đã mạnh dạn nhận đề tài “Xây dựng ứng dụng RSS Reader sử dụng công
nghệ Web Service và AJAX” làm đồ án tốt nghiệp. Do hạn chế về thời gian và kiến thức
cũng như kinh nghiệm nên đồ án không tránh khỏi những thiếu sót. Chúng em mong
nhận được những ý kiến góp ý quý báu từ các thầy cô.
Chúng em xin chân thành cảm ơn cô giáo hướng dẫn, PGS.TS Nguyễn Việt
Hương đã nhiệt tình hướng dẫn, chỉ bảo, giúp đỡ chúng em trong thời gian thực hiện đồ
án và thực tập tốt nghiệp.
Chúng em xin chân thành cảm ơn các anh Lê Anh Tuấn, Nguyễn Kiên Trung,
Nguyễn Mạnh Toàn và các anh trong phòng Nghiên cứu và phát triển Công ty Netnam đã
hướng dẫn cụ thể, tận tình từng bước và trang bị cho chúng em những kiến thức cần thiết
về công nghệ làm cơ sở cho quá trình thực hiện đồ án.
Nhóm sinh viên
Nguyễn Mạnh Hùng – Nguyễn Việt Hưng
Nguyễn Mạnh Hùng, Nguyễn Việt Hưng - ĐT 12, K46 Trang 1
Báo cáo tốt nghiệp RSS Reader với Webservice và AJAX
Tóm tắt đồ án
Mục đích đồ án tốt nghiệp của nhóm sinh viên chúng em là nghiên cứu về Web
Service và AJAX là những công nghệ mới nhất về phát triển các ứng dụng trên Web hiện
nay. Sau khi đã nắm được cơ sở lý thuyết và nghiên cứu cách vận dụng các công nghệ
này vào thực tế, chúng em sẽ thực hiện xây dựng một ứng dụng có ý nghĩa thực tiễn trên
nền tảng những công nghệ mới này với mục đích chứng minh khả năng áp dụng vào thực
tế cũng như các tính năng ưu việt của các công nghệ mới so với các công nghệ truyền
thống.
Ứng dụng chúng em xây dựng là RSS Reader – một công cụ dùng để chia sẻ thông
tin trên internet hiện đang ngày càng được sử dụng rộng rãi. Những người cần cập nhật
thông tin từ nhiều trang Web khác nhau, khi sử dụng RSS Reader thay vì hàng ngày phải
truy cập vào nhiều trang Web để lấy tin, thì chỉ cần tạo một danh mục các nguồn tin, RSS
sẽ tự động cập nhật về trang chủ của ứng dụng. Người sử dụng sẽ tiện lợi hơn khi chỉ cần
truy cập vào một trang duy nhất là trang Web của ứng dụng RSS để xem các tin tức từ
nhiều trang Web khác.
Kiến trúc ứng dụng gồm 2 phần, phần xử lý chức năng của RSS Reader được gói
trong một Web Service nằm tại Web Service Server. Phần thứ 2 là phía Web Service
Client thực hiện nhận yêu cầu từ người sử dụng, gửi lên và nhận thông tin trả về từ Web
Service Server, sau đó dùng AJAX để hiển thị lên giao diện. Hướng phát triển của đồ án
trong tương lai là tiếp tục triển khai ứng dụng trở thành một portal để có thể tích hợp vào
các Website, sử dụng ứng dụng như một chức năng của Website đó. Các nội dung trên
được trình bày cụ thể trong đồ án.
Abstract
The purpose of this project is to research Web Service and AJAX, the 2 newest
technologies in developing the Web application nowadays. The theory foundation has
paved the way for us to investigate and apply the new technology to pratical, fully
exploiting the advantages of the new modern technology compared with the traditional
one
Our application built in this project is RSS Reader – a tool used to share
information over internet, which is becoming more and more popular. With RSS Reader,
it’s now unecessary to get access to many Web sites per day updating information, all
you need is creating a category of information sources, and RSS will automatically
update to the home page of your application. Users will find it as now they have to get
access to only one site to get information from many others.
The application architecture includes two parts: 1. The functions processing of
RSS Reader, is wrapped in a Web Service at Web Service Server. 2. The Web Service
Client, receives requests from users, sends and receives response from Web Service
Server, then uses AJAX to display. In future we want to continue developing our
application to become a portal that can intergrate to Web Sites, using as a function of that
Web site. All content will be presented in the project.
Nguyễn Mạnh Hùng, Nguyễn Việt Hưng - ĐT 12, K46 Trang 2
Báo cáo tốt nghiệp RSS Reader với Webservice và AJAX
MỤC LỤC
Xây dựng ứng dụng RSS Reader sử dụng công nghệ Web Service và AJAX
LỜI NÓI ĐẦU.......................................................................................................................1
MỤC LỤC.............................................................................................................................3
DANH MỤC HÌNH VẼ........................................................................................................5
DANH SÁCH CÁC TỪ VIẾT TẮT.....................................................................................7
TÓM TẮT NỘI DUNG CÁC CHƯƠNG.............................................................................8
CHƯƠNG 1: GIỚI THIỆU CHUNG....................................................................................9
1.1 GIỚI THIỆU ĐỀ TÀI................................................................................................9
1.1.1 Bùng nổ web site - enews.....................................................................................9
1.1.2 Chia sẻ thông tin RSS.........................................................................................10
1.1.3 SOA (kiến trúc phần mềm hướng dịch vụ)........................................................11
1.1.4 Xu hướng công nghệ Web Service và Asynchronous.......................................12
1.1.5 AJAX..................................................................................................................13
1.2 PHẠM VI ĐỀ TÀI...................................................................................................13
CHƯƠNG 2: CÁC CÔNG NGHỆ NỀN TẢNG................................................................14
2.1 RSS...........................................................................................................................14
2.1.1 Tổng quan...........................................................................................................14
2.1.2 Chức năng và ứng dụng.....................................................................................14
2.1.3 Lịch sử................................................................................................................15
2.1.4 Cách sử dụng......................................................................................................16
2.1.5 Mô tả chi tiết.......................................................................................................16
2.2 WEB SERVICE.......................................................................................................18
2.2.1 Tổng quan...........................................................................................................18
2.2.3 Ứng dụng của Web service................................................................................21
2.2.4 Hoạt động của Web Service...............................................................................22
2.2 XML.........................................................................................................................24
2.2.1 Tổng quan...........................................................................................................24
2.2.2 Cấu trúc của tài liệu XML..................................................................................25
2.2.3 Một vài ví dụ về XML:......................................................................................26
2.2.4 XSLT..................................................................................................................27
2.3 SOAP........................................................................................................................31
2.3.1 Tổng quan...........................................................................................................31
2.3.2 Cấu trúc SOAP ..................................................................................................32
2.3.3 SOAP over HTTP...............................................................................................35
2.4 WSDL.......................................................................................................................37
2.5 UDDI........................................................................................................................40
2.5.1 UDDI là gì..........................................................................................................40
2.5.2 Đăng ký một Web service với UDDI như thế nào............................................40
2.5.3 Tìm kiếm một web service trên UDDI như thế nào?........................................41
Nguyễn Mạnh Hùng, Nguyễn Việt Hưng - ĐT 12, K46 Trang 3
Báo cáo tốt nghiệp RSS Reader với Webservice và AJAX
2.6 AJAX........................................................................................................................42
2.6.1 Tổng quan...........................................................................................................42
2.6.2 AJAX là gì?........................................................................................................42
2.6.3 AJAX hoạt động như thế nào?...........................................................................43
2.6.4 Bốn định nghĩa chính của AJAX.......................................................................45
2.6.6 Các ứng dụng AJAX phổ biến...........................................................................48
2.7 CÀI ĐẶT APACHE TOMCAT, AXIS2 SERVER................................................49
2.7.1 Apache Tomcat...................................................................................................49
2.7.2 Apache Axis2.....................................................................................................50
CHƯƠNG 3: PHÂN TÍCH HỆ THỐNG............................................................................52
3.1 TỔNG QUAN..........................................................................................................52
3.1.1. Giới thiệu chung................................................................................................52
3.1.2 Yêu cầu đặt ra cho ứng dụng..............................................................................53
3.1.3 Mô hình ứng dụng..............................................................................................53
3.1.4 Kiến trúc ứng dụng.............................................................................................55
3.2 SƠ ĐỒ PHÂN CẤP CHỨC NĂNG........................................................................56
Sơ đồ phân cấp chức năng liệt kê đầy đủ các chức năng của hệ thống.........................56
3.3 SƠ ĐỒ MỨC NGỮ CẢNH.....................................................................................57
3.4 SƠ ĐỒ MỨC DƯỚI ĐỈNH.....................................................................................58
CHƯƠNG 4: THIẾT KẾ HỆ THỐNG...............................................................................64
4.1 THIẾT KẾ GÓI CHỨC NĂNG...............................................................................64
4.1.1 Thư viện RSS lib................................................................................................64
4.1.2 Thiết kế package phía web sericvce...................................................................64
4.1.3 Thiết kế package phía servlet.............................................................................65
4.1 THIẾT KẾ GIAO DIỆN NGƯỜI SỬ DỤNG.........................................................66
4.2 THIẾT KẾ ĐỊNH DẠNG DỮ LIỆU INPUT/OUTPUT.........................................69
4.3 THIẾT KẾ CƠ SỞ DỮ LIỆU..................................................................................76
4.3 THIẾT KẾ PHẦN MỀM.........................................................................................78
CHƯƠNG 5: ĐÁNH GIÁ KẾT QUẢ VÀ GIỚI THIỆU SẢN PHẨM.............................84
5.1 GIỚI THIỆU PHẦN MỀM VÀ HƯỚNG DẪN SỬ DỤNG..................................84
5.2 ĐÁNH GIÁ KẾT QUẢ............................................................................................87
5.3 HƯỚNG PHÁT TRIỂN..........................................................................................88
KẾT LUẬN.........................................................................................................................89
Tài liệu tham khảo...............................................................................................................90
Nguyễn Mạnh Hùng, Nguyễn Việt Hưng - ĐT 12, K46 Trang 4
Báo cáo tốt nghiệp RSS Reader với Webservice và AJAX
DANH MỤC HÌNH VẼ
Hình 2.1. Lịch sử phát triển của RSS..................................................................................15
Hình 2.2. Bảng so sánh giữa RSS2.0 và Atom 1.0.............................................................18
Hình 2.3. Mô hình kiến trúc dịch vụ...................................................................................19
Hình 2.4. Mô hình quan hệ của Web Service.....................................................................20
Hình 2.5. Các đặc điểm của Web service...........................................................................21
Hình 2.6. Mô hình hoạt động của Web service...................................................................22
Hình 2.7. Sự tương tác giữa Client và Web service...........................................................23
Hình 2.8. Cấu trúc một SOAP Message..............................................................................32
Hình 2.9. Cấu trúc SOAP Request và SOAP Response của 2 kiểu web service...............34
Hình 2.10. Mô hình hoạt động của SOAP..........................................................................37
Hình 2.11. Mô hình hoạt động của WSDL.........................................................................38
Hình 2.12. Cấu trúc hoạt động của WSDL.........................................................................39
Hình 2.13. Vai trò của UDDI..............................................................................................40
Hình 2.14. Cách đăng ký với UDDI....................................................................................41
Hình 2.15. Giao diện tìm web service của UDDI...............................................................41
Hình 2.16. Kết quả tìm web service....................................................................................42
Hình 2.17. Ứng dụng web truyền thống (trái) và ứng dụng AJAX....................................43
Hình 2.18. Tương tác đồng bộ trong ứng dụng web truyền thống (trên) và dị bộ trong ứng
dụng AJAX..........................................................................................................................44
Hình 2.19. Vòng đời của một ứng dụng web truyền thống. Tất cả trạng thái của user với
ứng dụng được lưu giữ trên server. User luôn nhìn thấy một trang hoàn chỉnh, nhưng sẽ
không thấy được sự thay đổi nếu như không lấy toàn bộ về từ server...............................45
Hình 2.20. Vòng đời của ứng dụng Ajax. Khi user vào hệ thống, một giao diện hoàn
chỉnh được tải về phía trình duyệt. Ứng dụng này phản ứng lại sự tương tác của user ngay
lập tức, hoặc “ngấm ngầm” request tới server ở phía sau, không làm gián đoạn tới quá
trình tương tác của user.......................................................................................................46
Hình 2.21. Từ trên xuống dưới của việc “đẩy” nội dung từ server: (A) là ứng dụng web
cổ điển, (B) là ứng dụng Ajax. Nếu như ứng dụng cứ tiếp tục, lưu lượng này sẽ bị dồn lên
rất cao(C).............................................................................................................................47
Hình 2.22. Minh họa cách tổ chức thư mục của Apache Tomcat......................................50
Hình 2.23. Minh họa cách tổ chức thư mục của apache web service.................................51
Hình 3.1 Các ứng dụng Rss Reader thông thường.............................................................52
Hình 3.2 Ứng dụng RSS Reader with Web service............................................................53
Hình 3.3 Mô hình luồng thông tin của ứng dụng................................................................54
Hình 3.4 Mô hình kiến trúc của ứng dụng..........................................................................55
Hình 3.5 Sơ đồ phân cấp chức năng (Function Diagram).................................................56
Hình 3.6 Sơ đồ luồng dữ liệu mức ngữ cảnh......................................................................57
(Context Diagram)...............................................................................................................57
Hình 3.7 Sơ đồ luồng dữ liệu mức 0..................................................................................58
(DFD level 0).......................................................................................................................58
Nguyễn Mạnh Hùng, Nguyễn Việt Hưng - ĐT 12, K46 Trang 5
Báo cáo tốt nghiệp RSS Reader với Webservice và AJAX
Hình 3.8 DFD Function 1...................................................................................................59
Hình 3.9 DFD (Function 2).................................................................................................60
Hình 4.1. Giao diện chính của ứng dụng............................................................................66
Bên trái của giao diện chính là Category – Danh mục các trang tin tức như hình 4.2......66
..............................................................................................................................................66
Hình 4.2. Category của RSS hiển thị dưới dạng TreeView................................................66
Hình 4.3. Giao diện hiển thị Feed.......................................................................................67
Khi ta chọn chức năng add feed/add category trên menu, giao diện thêm feed hoặc thêm
folder sẽ được mở ra, người sử dụng nhập nhưng thông tin cần thiết để thực hiện chức
năng(hình 4.4, hình 4.5)......................................................................................................68
Hình 4.4. Giao diện thực hiện thêm 1 feed mới..................................................................68
..............................................................................................................................................68
Hình 4.5 Giao diện thực hiện thêm 1 folder mới................................................................68
Hình 4.6. Bảng tbl_Category...............................................................................................76
Hình 4.7. Bảng tbl_Feed......................................................................................................76
Hình 4.8. Sơ đồ thực thể liên kết (ERD).............................................................................77
Hình 4.9. Lưu đồ thuật toán phần Web Service Client.......................................................79
Hình 4.10. Lưu đồ thuật toán phần Web Service Server....................................................80
Hình 5.1. Giao diện chương trình........................................................................................84
..............................................................................................................................................84
Hình 5.2. Category của RSS hiển thị dưới dạng TreeView................................................84
Hình 5.3. Giao diện hiển thị Feed.......................................................................................85
Hình 5.4. Giao diện xác nhật xóa 1 Feed............................................................................85
Hình 5.5. Giao diện xác nhật xóa 1 Folder.........................................................................86
Hình 5.6. Giao diện thêm 1 Feed mới.................................................................................86
Hình 5.7. Giao diện thêm 1 Folder mới.............................................................................87
Nguyễn Mạnh Hùng, Nguyễn Việt Hưng - ĐT 12, K46 Trang 6
Báo cáo tốt nghiệp RSS Reader với Webservice và AJAX
DANH SÁCH CÁC TỪ VIẾT TẮT
STT Từ viết tắt Tên đầy đủ Giải thích
1 SOA Service Oriented
Architecture
Kiến trúc phần mềm
hướng dịch vụ
2 AJAX Asynchronous
JavaScript + XML
Công nghệ mới sử dụng
lập trình phía Client
3 RSS Really Simple
Syndication
Ứng dụng dùng làm công
cụ chia sẻ thông tin trên
internet
4 XML Extensible Markup
Language
Ngôn ngữ định dạng mở
rộng
5 XSLT Extensible Stylesheet
Language Transform
Ngôn ngữ viết theo cú
pháp XML cho phép
chuyển dịch tài liệu XML
sang một khuôn dạng
khác.
6 SOAP Simple Object Access
Protocol
1 giao thức để truyền
thông tin giữa WebServer
và Client trong công nghệ
WebService
7 WSDL Web Services
Description Language
1 giao thức để truyền
thông tin giữa WebServer
và Client trong công nghệ
WebService
8 UDDI Universal Description,
Discovery and
Integration
1 giao thức để truyền
thông tin giữa WebServer
và Client trong công nghệ
WebService
Nguyễn Mạnh Hùng, Nguyễn Việt Hưng - ĐT 12, K46 Trang 7
Báo cáo tốt nghiệp RSS Reader với Webservice và AJAX
TÓM TẮT NỘI DUNG CÁC CHƯƠNG
Chương 1: Giới thiệu chung – Giới thiệu tổng quan về đồ án tốt nghiệp: khái niệm ứng
dụng RSS Reader, các công nghệ mới được sử dụng để xây dựng ứng dụng, phạm vi đề
tài.
Chương 2: Các công nghệ nền tảng - Giới thiệu chi tiết về cơ sở lý thuyết, các công
nghệ, các công cụ để xây dựng đồ án.
Chương 3: Phân tích hệ thống – Phân tích chi tiết các công việc để xây dựng ứng dụng,
đưa ra sơ đồ phân cấp chức năng, sơ đồ luồng dữ liệu và mô tả các chức năng của hệ
thống.
Chương 4: Thiết kế hệ thống - Thực hiện thiết kế giao diện tương tác với người sử
dụng, thiết kế cơ sở dữ liệu, dữ liệu đầu vào và đầu ra, thiết kế phần mềm.
Chương 5: Đánh giá kết quả và giới thiệu sản phẩm – Đánh giá kết quả đạt được của
đồ án, đánh giá hướng phát triển. Giới thiệu và hướng dẫn sử dụng phần mềm.
Nguyễn Mạnh Hùng, Nguyễn Việt Hưng - ĐT 12, K46 Trang 8
Báo cáo tốt nghiệp RSS Reader với Webservice và AJAX
CHƯƠNG 1: GIỚI THIỆU CHUNG
1.1 GIỚI THIỆU ĐỀ TÀI
1.1.1 Bùng nổ web site - enews
Chỉ với một động tác click chuột để biết tất cả các tin tức mỗi buổi sáng thay vì
mở radio, xem truyền hình hoặc mua một tờ báo. Thói quen này đã bắt đầu hình thành ở
Việt Nam, trước hết là giới trẻ tại các thành phố lớn. Và thói quen ấy bắt đầu cho sự phát
triển mạnh mẽ của một loại hình báo chí mới: Báo điện tử.
Chỉ sau vài năm xuất hiện, các báo điện tử đã khẳng định được thế mạnh không
thể phủ nhận của mình. Với ưu thế và sự trợ giúp của công nghệ thông tin, báo điện tử đã
cho phép chuyển tải những thông tin tới người đọc gần như tức thời bằng chữ viết, tin tức
và hình ảnh.
Đây là lợi ích hơn hẳn so với các loại hình báo chí khác, nhất là báo giấy khi phải
chờ đợi việc in ấn theo định kỳ xuất bản.
Ngoài ưu thế có thể chuyển tải thông tin một cách nhanh nhất tới bất kỳ nơi nào
trên thế giới, một trong những lợi thế hơn hẳn của báo điện tử là không phải mất chi phí
và thời gian cho công việc in ấn-vấn đề nan giải thường gặp phải đối với các tờ báo giấy.
Cùng với sự phát triển của Internet và máy tính, báo điện tử nói riêng và thông tin
từ internet nói chung ngày trở nên phổ biến và ngày càng phát huy mạnh mẽ những ưu
điểm của nó so với những cách tìm kiếm thông tin bình thường khác như tiết kiệm thời
gian, công sức, rẻ và thông tin được cập nhật liên tục. Khi ta muốn tìm kiếm thông tin về
một vấn đề bất kỳ, thay vì phải lục tìm trong thư viện nếu là thông tin về tri thức, hay
phải tới rạp chiếu phim hoặc gọi điện để hỏi lịch nếu chỉ đơn giản là thông tin về một bộ
phim sắp chiếu, ta chỉ cần ngồi trước màn hình 1 máy tính nối mạng internet sử dụng
Nguyễn Mạnh Hùng, Nguyễn Việt Hưng - ĐT 12, K46 Trang 9