Tài liệu Chuyên đề Xây dựng portal chứng khoán: TRƯỜNG ĐẠI HỌC THĂNG LONG
KHOA CÔNG NGHỆ THÔNG TIN
CHUYÊN ĐỀ TỐT NGHIỆP
CÔNG NGHỆ .NET
Đề Tài: Xây Dựng Portal Chứng Khoán
Sinh viên thực hiện:
Bùi Mạnh Hưng – A07757
Giáo viên hướng dẫn:
Đoàn Quang Minh
Hà Nội 30/05/2008
------------------------------------------------------------------------------------------------------------------------------------
May30,2008,Bùi Mạnh Hưng_A07757,BaoCaoChuyenDeTotNghiep.Net
1
Mục lục
1 Lời mở đầu...................................................................................................................... 4
2 Khái niệm cổng thông tin (Portal) ................................................................................ 5
2.1 Khái niệm cổng thông tin tích hợp ............................................................................ 5
2.2 Phân loại cổng thông tin ............................................................................................ 5
2.3 Các tính năng cơ bản của portal................................
68 trang |
Chia sẻ: hunglv | Lượt xem: 1656 | Lượt tải: 0
Bạn đang xem trước 20 trang mẫu tài liệu Chuyên đề Xây dựng portal chứng khoán, để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên
TRƯỜNG ĐẠI HỌC THĂNG LONG
KHOA CÔNG NGHỆ THÔNG TIN
CHUYÊN ĐỀ TỐT NGHIỆP
CÔNG NGHỆ .NET
Đề Tài: Xây Dựng Portal Chứng Khoán
Sinh viên thực hiện:
Bùi Mạnh Hưng – A07757
Giáo viên hướng dẫn:
Đoàn Quang Minh
Hà Nội 30/05/2008
------------------------------------------------------------------------------------------------------------------------------------
May30,2008,Bùi Mạnh Hưng_A07757,BaoCaoChuyenDeTotNghiep.Net
1
Mục lục
1 Lời mở đầu...................................................................................................................... 4
2 Khái niệm cổng thông tin (Portal) ................................................................................ 5
2.1 Khái niệm cổng thông tin tích hợp ............................................................................ 5
2.2 Phân loại cổng thông tin ............................................................................................ 5
2.3 Các tính năng cơ bản của portal................................................................................. 5
3 Cổng thông tin chứng khoán......................................................................................... 7
3.1 Giới thiệu ................................................................................................................... 7
3.2 Mục tiêu ..................................................................................................................... 7
3.3 Nguyên tắc xây dựng ................................................................................................. 8
3.4 Tính năng nổi bật ....................................................................................................... 8
3.5 Lợi ích sản phẩm........................................................................................................ 9
3.6 Giao diện mỹ thuật................................................................................................... 10
4 Tìm hiểu khái niệm ...................................................................................................... 17
4.1 Giới thiệu DotNetNuke............................................................................................ 17
4.1.1 DotNetNuke là gì? ............................................................................................. 17
4.1.2 Nguồn gốc DotNetNuke..................................................................................... 18
4.1.3 Khả năng mở rộng............................................................................................. 18
4.1.4 Xây dựng skin mới gắn vào DotNetNuke .......................................................... 19
4.1.5 Xây dựng container mới gắn vào DotNetNuke ................................................. 20
4.1.6 Xây dựng module mới thêm vào DotNetNuke ................................................... 21
4.2 Giới thiệu XML & XSL........................................................................................... 23
4.2.1 XML là gì? ......................................................................................................... 23
4.2.2 Lịch sử XML ...................................................................................................... 24
4.2.3 SGML, HTML, và XML ..................................................................................... 25
4.2.4 Ứng dụng XML .................................................................................................. 26
4.2.5 XSL thêm dáng điệu cho XML........................................................................... 27
4.3 Giới thiệu Webservice ............................................................................................. 29
4.3.1 Khái niệm webservice........................................................................................ 29
Đặc điểm ................................................................................................................. 30
Ưu điểm................................................................................................................... 31
Nhược điểm............................................................................................................. 31
4.3.2 Kiến trúc webservice ......................................................................................... 31
4.3.4 Ứng dụng webservice ........................................................................................ 33
4.4 Giới thiệu Ajax ........................................................................................................ 33
4.4.1 Khái niệm Ajax .................................................................................................. 33
------------------------------------------------------------------------------------------------------------------------------------
May30,2008,Bùi Mạnh Hưng_A07757,BaoCaoChuyenDeTotNghiep.Net
2
Lịch sử Ajax............................................................................................................ 33
Khái niệm Ajax ....................................................................................................... 33
Ajax hoạt động như thế nào? .................................................................................. 34
4.4.2 Các ứng dụng Ajax phổ biến ............................................................................. 38
4.4.3 Hàm javascript dùng cho kỹ thuật ajax............................................................. 38
4.4.4 Giới thiệu Asp.net Ajax...................................................................................... 39
Kiến trúc của asp.net ajax ....................................................................................... 39
Asp.net ajax control toolkit ..................................................................................... 40
Tính năng Asp.net ajax community-supported ....................................................... 40
4.4.5 Ứng dụng kỹ thuật AJAX ................................................................................... 40
5 Mô tả hệ thống .............................................................................................................. 41
5.1 Kiến trúc tổng thể .................................................................................................... 41
5.1.1Tổng quan hệ thống............................................................................................ 44
5.1.2 Kiến trúc đa tầng ............................................................................................... 44
5.1.3 Sơ đồ triển khai hệ thống................................................................................... 44
5.2 Giải pháp XML&XSL ............................................................................................. 42
5.2.1 Sơ đồ giải pháp XML&XSL............................................................................... 44
5.2.2 Mô tả hoạt động giải pháp XML&XSL ............................................................. 44
5.2.3 Sơ đồ tổng quan các chức năng giải pháp XML&XSL ..................................... 45
Các tác nhân tham gia hệ thống .............................................................................. 46
Các tác chức năng chính của hệ thống.................................................................... 47
5.2.4 Chi tiết đặc tả chức năng................................................................................... 47
5.3 Giải pháp Webservice .............................................................................................. 64
5.3.1 Sơ đồ giải pháp Webservice .............................................................................. 64
5.3.2 Mô tả hoạt động giải pháp Webservice............................................................. 65
5.4 Giải pháp Webspider ............................................................................................... 65
5.4.1 Sơ đồ giải pháp Webspider................................................................................ 65
5.4.2 Mô tả hoạt động giải pháp Webspider .............................................................. 66
6 Tổng kết......................................................................................................................... 66
6.1 Kết quả về mặt lý thuyết .......................................................................................... 66
6.2 Kết quả về mặt thực tế ............................................................................................. 66
6.3 Phương hướng phát triển ......................................................................................... 66
7 Tài liệu tham khảo........................................................................................................ 67
7.1 Tài liệu tham khảo tiếng anh.................................................................................... 67
7.2 Tài liệu tham khảo tiếng việt ................................................................................... 67
------------------------------------------------------------------------------------------------------------------------------------
May30,2008,Bùi Mạnh Hưng_A07757,BaoCaoChuyenDeTotNghiep.Net
3
------------------------------------------------------------------------------------------------------------------------------------
May30,2008,Bùi Mạnh Hưng_A07757,BaoCaoChuyenDeTotNghiep.Net
4
1 Lời mở đầu
Hiện nay, nhân loại đang đứng trên kỷ nguyên của công nghệ thông tin. Sự phát triển
hết sức mạnh mẽ của công nghệ thông tin đã đem đến cho con người những thành tựu
đáng kinh ngạc đặc biệt là internet. Với sự phát triển Internet toàn cầu trên nền tảng
băng thông rộng, Internet đã trở thành một phần không thể thiếu trong lĩnh vực truyền
thông toàn cầu với sự phát triển mạnh mẽ với ứng dụng công nghệ thông tin, truyền
thông nền tảng Internet dần thay thế các công cụ truyền thông truyền thống, giúp mọi
người tiến đến gần nhau hơn trên toàn thế giới.
Trong những năm gần đây, các ứng dụng trên Internet phát triển nhanh, ảnh hưởng
của nó là đã làm thay đổi nhiều đến đời sống kinh tế, văn hoá, xã hội của tất cả các
nước trên thế giới. Trong sự phát triển mạnh mẽ của Internet, thì các cổng thông tin
(portal) giữ một vai trò đặc biệt quan trọng. Công nghệ này đã và đang trở thành xu thế
chung trong quá trình phát triển trên Internet, có thể coi đó là cổng vào một kho thông
tin lớn, đa dạng. Qua Portal, những đối tượng người dùng khác nhau có thể truy cập
đến nhiều loại thông tin khác nhau nhưng theo một cách thức thống nhất.
Việc xây dựng một portal về chứng khoán không dễ dàng và khá tốn kém. Để portal
đó hoạt động hiệu quả và đem lại các lợi ích thiết thực cho công ty chứng khoán cần có
một giải pháp xây dựng portal hợp lý. Trong chuyên đề tốt nghiệp .Net này tôi xin giới
thiệu giải pháp "Xây dựng website chứng khoán trên công nghệ portal". Giải pháp này
sẽ giúp bạn xây dựng được một website chứng khoán hoạt động hiệu quả, chuyên
nghiệp, với nhiều thông tin chi tiết, dịch vụ khiến khách hàng hài lòng. Xây dựng trên
nền công nghệ mới “Portal”, website chứng khoán có thiết kế đẹp mắt, dễ sử dụng, dễ
quản lý và có chi phí tối thiểu.
Báo cáo bao gồm những phần sau:
Phần 1: Khái niệm cổng thông tin (portal), phân loại, các tính năng cơ bản trong một
portal.
Phần 2: Giới thiệu cổng thông tin chứng khoán (mục tiêu, lợi ích sản phẩm mang lại
cho khách hàng, các tính năng nổi bật trong portal này)
Phần 3: Tìm hiểu các khái niệm mới liên quan tới giải pháp sẽ mô tả trong phần 4.
Phần 4: Mô tả hệ thống, mô tả công nghệ sử dụng cho việc xây dựng, triển khai portal.
Portal được xây dựng trên nền tảng DotNetNuke và dựa vào 3 giải pháp chính:
XML&XSL, Webservice, Webspider.
Phần 5: Tổng kết các kết quả đã đạt được.
------------------------------------------------------------------------------------------------------------------------------------
May30,2008,Bùi Mạnh Hưng_A07757,BaoCaoChuyenDeTotNghiep.Net
5
2 Khái niệm cổng thông tin (Portal)
2.1 Khái niệm cổng thông tin tích hợp
Cổng thông tin điện tử tích hợp là điểm truy cập tập trung và duy nhất, tích hợp các
kênh thông tin, các dịch vụ và ứng dụng, phân phối tới người sử dụng thông qua một
phương thức thống nhất và đơn giản trên nền tảng Web.
2.2 Phân loại cổng thông tin
Cổng thông tin điện tử cung cấp cho người dùng cuối nhiều loại dịch vụ khác nhau
với nhiều nhu cầu khác nhau, có thể phân loại các portal như sau:
* Cổng thông tin công cộng (Public portals): ví dụ như Yahoo, loại cổng thông tin
này thường được sử dụng để ghép nối các thông tin lại với nhau từ nhiều nguồn, nhiều
ứng dụng và từ nhiều người, cho phép cá nhân hoá (personalization) các Web site theo
tuỳ từng đối tượng sử dụng.
* Cổng thông tin doanh nghiệp (“Enterprise portals” hoặc “Corporate Desktops”):
được xây dựng để cho phép các thành viên của doanh nghiệp sử dụng và tương tác trên
các thông tin và ứng dụng nghiệp vụ tác nghiệp của doanh nghiệp.
* Cổng giao dịch điện tử (Marketplace portals): ví dụ như eBay và ChemWeb, cổng
thông tin này là nơi liên kết giữa người bán và người mua.
* Cổng thông tin ứng dụng chuyên biệt (Specialized portals): ví dụ như SAP portal,
cổng thông tin loại này cung cấp các ứng dụng chuyên biệt khác nhau.
2.3 Các tính năng cơ bản của portal
Tuy có nhiều loại cổng thông tin tích hợp, cung cấp nhiều loại dịch vụ và ứng dụng
khác nhau, nhưng tất cả các loại cổng thông tin tích hợp đều có chung một số tính
năng. Các tính năng này là được sử dụng như một tiêu chuẩn để phân biệt giữa cổng
thông tin điện tử tích hợp với một Web site hoặc một ứng dụng chạy trên nền tảng
Web. Các tính năng đó bao gồm:
* Khả năng cá nhân hoá (Customization hay Personalization): cho phép thiết đặt
các thông tin khác nhau cho các loại đối tượng sử dụng khác nhau theo yêu cầu. Tính
năng này dựa trên hoạt động thu thập thông tin về người dùng và cộng đồng người
dùng, từ đó cung cấp các thông tin chính xác tại thời điểm được yêu cầu.
* Tích hợp và liên kết nhiều loại thông tin (Content aggregation): cho phép xây
dựng nội dung thông tin từ nhiều nguồn khác nhau cho nhiều đối tượng sử dụng. Sự
khác biệt giữa các nội dung thông tin sẽ được xác định qua các ngữ cảnh hoạt động của
người dùng (user- specific context), ví dụ như đối với từng đối tượng sử dụng sau khi
------------------------------------------------------------------------------------------------------------------------------------
May30,2008,Bùi Mạnh Hưng_A07757,BaoCaoChuyenDeTotNghiep.Net
6
thông qua quá trình xác thực thì sẽ được cung cấp các thông tin khác nhau, hoặc nội
dung thông tin sẽ được cung cấp khác nhau trong quá trình cá nhân hoá thông tin.
* Xuất bản thông tin (Content syndication): thu thập thông tin từ nhiều nguồn khác
nhau, cung cấp cho người dùng thông qua các phương pháp hoặc giao thức (protocol)
một cách thích hợp. Một hệ thống xuất bản thông tin chuyên nghiệp phải có khả năng
xuất bản thông tin với các định dạng đã được quy chuẩn, ví dụ như RDF (Resource
Description Format), RSS (Rich Site Summary), NITF (News Industry Text Format) và
NewsXML. Ngoài ra, các tiêu chuẩn dựa trên XML cũng phải được áp dụng để quản trị
và hiển thị nội dung một cách thống nhất, xuyên suốt trong quá trình xuất bản thông
tin. Các tiêu chuẩn dựa trên XML này cho phép đưa ra giải pháp nhanh nhất để khai
thác và sử dụng thông tin trên các Web site khác nhau thông qua quá trình thu thập và
bóc tách thông tin với các định dạng đã được quy chuẩn.
* Hỗ trợ nhiều môi trường hiển thị thông tin (Multidevice support): cho phép hiển
thị cùng một nội dung thông tin trên nhiều loại thiết bị khác nhau như: màn hình máy
tính (PC), thiết bị di động (Mobile phone, Wireless phone, PDA).
* Khả năng đăng nhập một lần (Single Sign On): cho phép dịch vụ xuất bản thông
tin hoặc các dịch vụ khác của portal lấy thông tin về người dùng khi hoạt động mà
không phải yêu cầu người dùng phải đăng nhập lại mỗi khi có yêu cầu. Đây là một tính
năng rất quan trọng vì các ứng dụng và dịch vụ trong portal sẽ phát triển một cách
nhanh chóng khi xuất hiện nhu cầu, mà các ứng dụng và dịch vụ này tất yếu sẽ có các
nhu cầu về xác thực hoặc truy xuất thông tin người dùng.
* Quản trị portal (Portal administration): xác định cách thức hiển thị thông tin cho
người dùng cuối. Tính năng này không chỉ đơn giản là thiết lập các giao diện người
dùng với các chi tiết đồ hoạ (look- and-feel), với tính năng này, người quản trị phải
định nghĩa được các thành phần thông tin, các kênh tương tác với người sử dụng cuối,
định nghĩa nhóm người dùng cùng với các quyền truy cập và sử dụng thông tin khác
nhau.
* Quản trị người dùng (Portal user management): cung cấp các khả năng quản trị
người dùng cuối, tuỳ thuộc vào đối tượng sử dụng của portal. Tại đây, người sử dụng
có thể tự đăng ký trở thành thành viên tại một công thông tin công cộng (như Yahoo,
MSN…) hoặc được người quản trị tạo lập và gán quyền sử dụng tương ứng đối với các
công thông tin doanh nghiệp. Mặt khác, tuỳ vào từng kiểu portal mà số lượng thành
viên có thể từ vài nghìn tới hàng triệu. Hiện tại phương pháp phân quyền sử dụng dựa
trên vai trò (Role-based security) được sử dụng như một tiêu chuẩn trong các hoạt động
xác định quyền truy cập và cung cấp thông tin cho các đối tượng khác nhau trong các
portal cũng như các ứng dụng Web.
------------------------------------------------------------------------------------------------------------------------------------
May30,2008,Bùi Mạnh Hưng_A07757,BaoCaoChuyenDeTotNghiep.Net
7
3 Cổng thông tin chứng khoán
3.1 Giới thiệu
Việc xây dựng một portal chứng khoán không dễ dàng và khá tốn kém. Để portal đó
hoạt động hiệu quả và đem lại các lợi ích thiết thực cho công ty chứng khoán bạn cần
một giải pháp xây dựng portal hợp lý. Trong chuyên đề tốt nghiệp .Net này tôi xin giới
thiệu giải pháp xây dựng portal chứng khoán trên nền tảng dotnetnuke và dựa trên 3
công nghệ chính: XML&XSL, webservice, webspider.
Giải pháp này sẽ giúp bạn xây dựng được một website chứng khoán hoạt động hiệu
quả, chuyên nghiệp, với nhiều thông tin chi tiết, dịch vụ khiến khách hàng hài lòng.
Xây dựng trên nền công nghệ mới, portal chứng khoán có thiết kế đẹp mắt, dễ sử dụng,
dễ quản lý và có chi phí tối thiểu.
3.2 Mục tiêu
- Xây dựng một website đẹp, hiện đại, thể hiện đầy đủ hình ảnh của công ty chứng
khoán trên Internet.
- Website cần phải là một công cụ marketing và chăm sóc khách hàng hiệu quả.
- Website cần phải có chi phí xây dựng và vận hành hợp lý, do đặc thù mới thành lập
của công ty.
- Website cần phải có tính mở cao để dễ dàng nâng cấp sau này.
------------------------------------------------------------------------------------------------------------------------------------
May30,2008,Bùi Mạnh Hưng_A07757,BaoCaoChuyenDeTotNghiep.Net
8
- Đáp ứng các yêu cầu của các công ty, tập đoàn chứng khoán, tập thể cá nhân có nhu
cầu về chứng khoán.
3.3 Nguyên tắc xây dựng
Tôi tuân theo các triết lý sau khi thiết kế & xây dựng các hệ thống website cho khách
hàng của mình:
- Cảm nhận của website: Chuyên nghiệp và Thống nhất.
- Tương tác cao và năng động:
o Dễ dàng cập nhật cũng như loại bỏ thông tin cũ khi có nhu cầu mà không cần hiểu
biết về kỹ thuật.
o Có sẵn cơ chế phân quyền để cho phép đồng thời cập nhật nội dung và thông tin ở
nhiều vùng khác nhau.
o Dễ dàng thay đổi cấu trúc của toàn bộ website.
o Dễ dàng thay đổi từng phần hoặc toàn phần giao diện website với chi phí thấp nhất
mà không ảnh hưởng đến nội dung
- Cấu trúc khoa học, chặt chẽ, rõ ràng, dễ dàng điều hướng và khai thác.
- Thiết kế sáng tạo, độc đáo, hiện đại và ấn tượng.
- Thân thiện với người sử dụng, tương thích với các trình duyệt web khác nhau, nội
dung được tối ưu, tốc độ tải/nạp trang web nhanh.
3.4 Tính năng nổi bật
- Giao diện quản trị trực quan được gắn ngay trên đỉnh website
- Giao diện của hệ thống có thể tùy biến dễ dàng, người dùng muốn thay đổi giao diện
chỉ cần lựa chọn skin, contaner.
- Các container rất uyển chuyển: tự động co giãn theo nội dung, cũng có thể chọn icon
giúp tăng thêm màu sắc riêng của mỗi container.
- Không cần nhiều kiến thức về CNNT: công cụ soạn thảo FCK Editor được đặt ngay
trên nền web giúp người nhập tin có thể xử lý những yêu cầu cao đối với nội dung
thông tin mà không cần phải hiểu biết nhiều về kỹ thuật. Có thể cập nhật và quản lý nội
dung thông tin của website bởi những nhân viên nhập liệu bình thường, không cần phải
nhờ tới những chuyên gia hiểu biết về công nghệ thông tin.
- Mỗi người sử dụng được quy định phạm vi hoạt động riêng, vì vậy họ chỉ có thể cập
nhật thông tin vào những vùng được phép: Chỉ những người có quyền editor trở lên
mới được đăng bài, sau khi editor đăng bài thì những người có quyền aprover trở lên
------------------------------------------------------------------------------------------------------------------------------------
May30,2008,Bùi Mạnh Hưng_A07757,BaoCaoChuyenDeTotNghiep.Net
9
mới được sửa, xóa và đăng bài viết đó. Chỉ admin trở lên mới được xem xml, xsl hay
tùy chọn skin, container cho module.
- Nội dung bài viết, top cổ phiếu, thống kê giá chứng khoán... được export ra dữ liệu
dạng XML và có thể được hiển thị bằng nhiều cách khác nhau nhờ XSL.
- Hệ thống có khả năng cung cấp thông tin cho các website khác hoặc lấy thông tin từ
website khác nhờ các module sử dụng webservice.
- Có khả năng tự động cực cao trong việc kết nối thông tin với website khác nhờ các
module webspider.
- Có khả năng lấy thông tin của các công ty lên sàn rồi đưa vào cơ sở dữ liệu.
- Thông tin được truyền tải về phía người dùng ít nhất nhờ các câu store procedure xử
lý dữ liệu và kỹ thuật ajax.
- Và rất nhiều tính năng nổi bật khác ...
3.5 Lợi ích sản phẩm
Sản phẩm này mang lại rất nhiều lợi ích cho doanh nghiệp:
- Giúp doanh nghiệp có được hình ảnh một công ty chứng khoán chuyên nghiệp:
Nguồn tin tức chuyên ngành phong phú, các thông tin chứng khoán đầy đủ, chi tiết và
được cập nhật nhanh chóng như bảng giá trực tuyến, kết quả giao dịch...
- Tạo nên niềm tin vào việc tổ chức của bạn có khả năng ứng dụng các kỹ thuật mới
nhất của công nghệ thông tin để đạt đến mục đích của mình.
- Là một kênh marketing hiệu quả: Các sản phẩm dịch vụ của công ty được giới thiệu
trên website một cách rộng rãi. Với sự chuyên nghiệp trong giao diện, chuyên nghiệp
trong cách xử lý dữ liệu portal sẽ là 1 kênh marketing hiệu quả cho công ty.
- Là một công cụ chăm sóc khách hàng hiệu quả: Website cung cấp nhiều chức năng hỗ
trợ khách hàng trực tuyến và nhanh chóng.
- Góp phần xây dựng thương hiệu công ty: Hiện nay, website đang trở thành điều
khách hàng nghĩ tới đầu tiên khi tìm hiểu về sản phẩm dịch vụ của một công ty. Vì vậy,
website sẽ giúp công ty tăng mức nhận biết thương hiệu một cách hiệu quả.
- Xây dựng một hệ thống điều hành, xử lý thông tin thống nhất, hiệu quả trong toàn tổ
chức đồng thời kết nối không hạn chế với các hệ thống khác trong tương lai.
Tôi luôn chờ đón mọi sự phản hồi từ phía khách hàng để ngày càng hoàn thiện sản
phẩm. Hãy gửi yêu cầu/phản hồi của bạn cho chúng tôi nếu bạn có những sáng kiến
hoặc yêu cầu mới để bổ sung nâng cao tính năng của hệ thống. Có thể bạn sẽ thấy
những sáng kiến của mình được áp dụng trong một phiên bản mới trong tương lai.
------------------------------------------------------------------------------------------------------------------------------------
May30,2008,Bùi Mạnh Hưng_A07757,BaoCaoChuyenDeTotNghiep.Net
10
3.6 Giao diện mỹ thuật
Giao diện trang chủ
------------------------------------------------------------------------------------------------------------------------------------
May30,2008,Bùi Mạnh Hưng_A07757,BaoCaoChuyenDeTotNghiep.Net
11
Giao diện trang tin tức
------------------------------------------------------------------------------------------------------------------------------------
May30,2008,Bùi Mạnh Hưng_A07757,BaoCaoChuyenDeTotNghiep.Net
12
Giao diện trang dịch vụ
------------------------------------------------------------------------------------------------------------------------------------
May30,2008,Bùi Mạnh Hưng_A07757,BaoCaoChuyenDeTotNghiep.Net
13
Giao diện trang diễn đàn
------------------------------------------------------------------------------------------------------------------------------------
May30,2008,Bùi Mạnh Hưng_A07757,BaoCaoChuyenDeTotNghiep.Net
14
Giao diện trang dữ liệu doanh nghiệp
------------------------------------------------------------------------------------------------------------------------------------
May30,2008,Bùi Mạnh Hưng_A07757,BaoCaoChuyenDeTotNghiep.Net
15
Giao diện trang biểu đồ phân tích tài chính
------------------------------------------------------------------------------------------------------------------------------------
May30,2008,Bùi Mạnh Hưng_A07757,BaoCaoChuyenDeTotNghiep.Net
16
Giao diện bảng giá trực tuyến sàn Hồ Chí Minh
Giao diện bảng giá trực tuyến sàn Hà Nội
------------------------------------------------------------------------------------------------------------------------------------
May30,2008,Bùi Mạnh Hưng_A07757,BaoCaoChuyenDeTotNghiep.Net
17
4 Tìm hiểu khái niệm
4.1 Giới thiệu DotNetNuke
4.1.1 DotNetNuke là gì?
a. Khái niệm
DotNetNuke® là hệ thống quản lý nội dung mã nguồn mở viết bằng ngôn ngữ lập
trình VB.NET trên nền tảng ASP.NET. Đây là một hệ thống mở, tùy biến dựa trên skin
và module. DotNetNuke có thể được sử dụng để tạo các trang web cộng đồng một cách
dễ dàng và nhanh chóng.
Phát triển: Perpetual Motion Interactive Systems Inc.
Phiên bản mới nhất: 4.8.2 (Cập nhật thông tin ngày 24/05/2008)
Hệ điều hành: ASP.NET / Microsoft Windows
Phân loại: Hệ thống quản lý nội dung
Giấy phép: Dựa trên BSD
Trang chủ:
b. Web Application Framework
DotNetNuke là một bộ khung trong ứng dụng web (Web Application Framework) mã
nguồn mở với tư tưởng là tạo và phát triển dự án về web, mạng lưới thông tin nội bộ,
mạng nội bộ mở rộng, cổng thông tin tích hợp trên mạng, và tùy chỉnh ứng dụng.
DotNetNuke được cung cấp như một phần mềm mã nguồn mở. Nó cũng cho phép làm
bất cứ gì họ muốn với framework cả về mặt thương mại và phi thương mại, với yêu cầu
đơn giản là đưa uy tín trở lại cộng đồng dự án DotNetNuke.
DotNetNuke được xây dựng trên một nền tảng (platform) Microsoft ASP.NET
(VB.NET), nó dễ dàng được cài đặt trên máy chủ. Với sự phát triển của cộng đồng đã
có 440,000 người sử dụng, và là một cở sở tốt của việc lập trình chuyên nghiệp.
c. Giới thiệu DotNetNuke®
DotNetNuke là một framework ứng dụng web với tư tưởng là tạo, phát triển và quản
lý web. Với một cộng đồng phát triển nhanh chóng: hơn 300,000 người đăng kí làm
thành viên, một số lượng lớn những người phát triển web chuyên nghiệp.
DotNetNuke® tiếp tục tạo nền móng vững chắc cho một ứng dụng web chuyên nghiệp.
------------------------------------------------------------------------------------------------------------------------------------
May30,2008,Bùi Mạnh Hưng_A07757,BaoCaoChuyenDeTotNghiep.Net
18
d. Giới thiệu Open Source
Ý tưởng cơ bảng đằng sau Open Source rất đơn giản: Khi đó một người lập trình có
thể đọc, phân phối lại, và định nghĩa mã nguồn mở cho một bộ phận của phần mềm,
phần mềm được phát triển thêm. Mọi người sử dụng, cải tiến nó, fix lỗi giúp cho mã
nguồn ngày càng trở nên hoàn thiện hơn.
4.1.2 Nguồn gốc DotNetNuke
DotNetNuke được phát triển dựa trên cổng điện tử IBuySpy được Microsoft giới
thiệu như là một ứng dụng mẫu dựa trên nền tảng .NET Framework. DotNetNuke đã
được phát triển qua nhiều phiên bản và hiện nay đang ở phiên bản 4.8.2 Phiên bản hiện
tại đòi hỏi .NET Framework 3.5 trong khi các phiên bản trước đó chạy trên nền .NET
Framework 1.1 hoặc 2.0
Một cài đặt DotNetNuke có thể phục vụ nhiều trang web, mỗi trang có thể có giao diện
và cộng đồng người sử dụng riêng biệt. Phiên bản hiện tại cũng cho phép chức năng đa
ngôn ngữ.
Cái tên DotNetNuke đã được đặt để phản ánh nền tảng .NET mà nó sử dụng đồng thời
theo trào lưu của một số cổng điện tử khá thành công trước đó như PHP-Nuke và
PostNuke. Tên này cũng đã được công ty Perpetual Motion Interactive Systems Inc.
đăng ký bảo hộ vào ngày 15 tháng 11 năm 2004 (TMA 625.364). Shaun Walker, chủ
tịch của công ty này, chính là người tạo ra và duy trì DotNetNuke.
4.1.3 Khả năng mở rộng
DotNetNuke có một nhân cơ bản có thể mở rộng với các module để bổ sung các tính
năng mới; giao diện của hệ thống có thể tùy biến nhờ vào kỹ thuật skin.
a) Module
Khoảng hơn 10 module cơ bản được cung cấp cùng với bản DotNetNuke. Các
module khác có thể được download từ trang web của DotNetNuke trong đó có các
module như: thương mại điện tử, album ảnh, blog, forum, wiki, mailling list... Các
module bổ sung khác cũng được các cộng đồng nguồn mở và các công ty phần mềm
thương mại cung cấp.
Các module này có thể được cài đặt bổ sung dễ dàng bằng cách upload chúng thông
qua giao diện của trang quản trị. Một địa chỉ tốt để mua các module thương mại ( nâng
cao tính chuyên nghiệp của sản phẩm) là trang Một vấn
đề khác các nhà phát triển cho Dotnetnuke hay vấp phải là hệ thống menu của DNN
khó chỉnh sửa và hơi đơn điệu, tuy nhiên, gần đây đã có sản phẩm Navigation Suite và
TransArt do công ty phát triển khá tốt và có thể thay thế cho
Solpart Menu. Nếu bạn muốn tìm một số module thương mại về Image Gallery, Đăng
------------------------------------------------------------------------------------------------------------------------------------
May30,2008,Bùi Mạnh Hưng_A07757,BaoCaoChuyenDeTotNghiep.Net
19
tin tức theo chuyên mục(article)(khoảng 7 module) với giá cả rất thấp 25$ cho cả gói
tại
b) Skin
Giao diện của DotNetNuke được thiết kế với kiến trúc sử dụng skin cho phép tách
biệt nội dung và giao diện của hệ thống. Kiến trúc này cho phép người thiết kế giao
diện có khả năng làm việc độc lập với quá trình phát triển trong ASP.NET và chỉ đòi
hỏi kiến thức về HTML cùng với cách thức thiết kế skin của DotNetNuke. Skin bao
gồm một số file HTML cơ bản, trong đó có các vị trí để đặt nội dung, menu và các tính
năng khác cùng với các file ảnh, file định dạng (stylesheets), Javascript; tất cả thường
được đóng gói trong một file Zip. Giống như module, skin có thể được upload và cài
đặt tự động thông qua trang quản trị.
4.1.4 Xây dựng skin mới gắn vào DotNetNuke
Bước 1: Tạo thư mục mới trong thư mục skins của portal
Ví dụ: C:\MyPortals\MySecurities\Portals\_default\Skins\MySecurities
Bước 2: Tạo file TenFile.ascx, skin.css trong thư mục vừa tạo
Bước 3: Viết code cho file TenFile.ascx, skin.css vừa tạo
- Kế thừa lớp skin DotNetNuke.UI.Skins.Skin
- Tạo bộ khung cho giao diện bằng cách chia thành các pane
- Viết HTML cho skin
- Các pane được phân định bằng cách đặt id trong thẻ TD
- Ít nhất cần phải có 1 pane là ContentPane
- Có thể dễ dàng gắn bảng điều khiển khi đăng nhập sẽ hiện lên bằng cách đặt
id="ControlPanel" trong thẻ ID
Bước 4: Đăng nhập vào portal bằng quyền admin hoặc quyền host sau đó chọn thiết
lập
Bước 5: Sau khi chọn thiết lập ==> chọn thiết lập nâng cao ==> Chọn giao diện ==>
Chọn skin vừa tạo ra.
------------------------------------------------------------------------------------------------------------------------------------
May30,2008,Bùi Mạnh Hưng_A07757,BaoCaoChuyenDeTotNghiep.Net
20
4.1.5 Xây dựng container mới gắn vào DotNetNuke
Bước 1: Tạo thư mục mới trong thư mục skins của portal
C:\MyPortals\MySecurities\Portals\_default\Containers\MySecurities
Bước 2: Tạo file TenFile.ascx, container.css
Bước 3: Viết code cho file TenFile.ascx, container.css vừa tạo
Kế thừa lớp container Inherits="DotNetNuke.UI.Containers.Container"
Khai báo sử dụng Title, Icon, Actions, Visibility
<%@ Register TagPrefix="dnn" TagName="ACTIONS"
Src="~/Admin/Containers/SolPartActions.ascx" %>
<%@ Register TagPrefix="dnn" TagName="ICON"
Src="~/Admin/Containers/Icon.ascx" %>
<%@ Register TagPrefix="dnn" TagName="TITLE"
Src="~/Admin/Containers/Title.ascx" %>
<%@ Register TagPrefix="dnn" TagName="VISIBILITY"
Src="~/Admin/Containers/Visibility.ascx" %>
Sử dụng trong HTML bằng cách
<dnn:TITLE runat="server" id="dnnTITLE"
cssclass="Default_TitleContainer"/>
Viết HTML cho container
Bước 4: Đăng nhập vào quyền admin hoặc host, chọn thiết lập
------------------------------------------------------------------------------------------------------------------------------------
May30,2008,Bùi Mạnh Hưng_A07757,BaoCaoChuyenDeTotNghiep.Net
21
Bước 5: Sau khi chọn thiết lập ==> Chọn thiết lập trang ==> chọn thiết lập cơ bản ==>
Chọn container vừa tạo ra
4.1.6 Xây dựng module mới thêm vào DotNetNuke
Bước 1: Khởi động Visual studio dotnet mở project của dotnetnuke ra
Bước 2: Tạo thư mục mới trong DesktopModules ví dụ HungBM.HelloWorld
Bước 3: Add thêm web user control ví dụ ViewHelloWorld.ascx
Bước 4: Sử dụng thư viện Dotnetnuke.Entities
using DotNetNuke.Entities.Modules;
Bước 5: Viết class ViewHelloWorld kế thừa từ lớp PortalModuleBase
Bước 6: Thêm 1 label mới trong file ViewHelloWorld.ascx
Bước 7: Viết code
namespace HungBM.HelloWorld
{
public partial class ViewHelloWorld : PortalModuleBase
{
protected void Page_Load(object sender, EventArgs e)
{
lblHelloWorld.Text = "HelloWorld";
}
}
}
Bước 8: Đăng nhập vào quyền host, chọn định nghĩa module
Bước 9: Thêm khai báo module mới
------------------------------------------------------------------------------------------------------------------------------------
May30,2008,Bùi Mạnh Hưng_A07757,BaoCaoChuyenDeTotNghiep.Net
22
Bước 10: Đặt tên module sau đó ấn nút tạo
Bước 11: Thêm khai báo module mới
Bước 12: Thêm control
Bước 13: Thêm module mới mang tên HungBM.HelloWorld và chạy thử.
------------------------------------------------------------------------------------------------------------------------------------
May30,2008,Bùi Mạnh Hưng_A07757,BaoCaoChuyenDeTotNghiep.Net
23
4.2 Giới thiệu XML & XSL
Sự Bùng Nổ XML!!! Hiện nay XML chiếm vị trí số một và có vai trò rất quan trọng
trong việc truyền tải và trao đổi dữ liệu liên lạc giữa các ứng dụng và các hệ điều hành
khác nhau,... Nếu phải tiên đoán kỹ thuật tin học nào chắc chắn sẽ thịnh hành trong
tương lai, ta không cần phải học chiêm tinh cũng có thể đoán nay là XML. Ngay cả
Microsoft, Sun, IBM, Oracles,... đều hỗ trợ XML và dùng nó trong rất nhiều ứng dụng.
Theo như sự đánh giá của những nhà khởi xướng XML cho rằng nó có thể đẩy lùi sự
bất ổn từ HTML đồng thời tạo nên cuộc cách mạng trong truyền tải và trao đổi dữ
liệu,...
4.2.1 XML là gì?
XML viết tắt của chữ eXtensible Markup Language (ngôn ngữ nâng cấp có thể mở
rộng) là một bộ qui luật về cách chia một tài liệu ra làm nhiều phần, rồi đánh dấu và
ráp các phần khác nhau lại để dễ nhận diện chúng. Được chỉ đạo bởi Tổ hợp Web toàn
cầu (W3C), XML trở thành một đặc điểm kỹ thuật chính thức.
Tổ hợp Web toàn cầu W3C gọi XML là "một cú pháp thông dụng cho việc biểu thị
cấu trúc trong dữ liệu". Dữ liệu có cấu trúc tham chiếu đến dữ liệu được gán nhãn cho
nội dung, ý nghĩa, hoặc công dụng.
Ví dụ : Trong HTML ta dùng những Tag Pairs (cặp nhãn hiệu mở đóng) để đánh dấu
như và . Hãy quan sát một trang Web dưới đây:
Welcome To HungBM’s Website
------------------------------------------------------------------------------------------------------------------------------------
May30,2008,Bùi Mạnh Hưng_A07757,BaoCaoChuyenDeTotNghiep.Net
24
Định Nghĩa
A: "Anh tên là gì?"
B: "Tôi tên là HungBM".
A: "Anh học trường nào?"
B: "Tôi học trường Thăng Long
Trong HTML Web page các Tag Pair đều được định nghĩa trước và không chứa đựng
ý nghĩa gì về dữ kiện mà chúng kẹp bên trong, trừ trường hợp TITLE. Thí dụ H1 có
nghĩa display hàng chữ bên trong (Định Nghĩa) theo cỡ lớn nhất, nhưng hàng chữ ấy có
thể là bất cứ thứ gì, không nhất thiết phải là từ (Định Nghĩa) ở đây. Còn XML thì cho
phép ta tự do đặt tên các Tag Pair để dùng khi cần. Nếu tính ra, Dynamic HTML có
đến khoảng 400 Tags mà nếu muốn dùng ta phải nhớ hết. Trong khi đó, XML không có
giới hạn về con số Tags và ta không cần phải nhớ Tag nào cả. Ý nghĩa của các Tag rất
linh động và ta có thể sắp xếp các tags của XML theo loại cho hợp lý. Thí dụ muốn làm
một trang XML về môn Văn học ta cần những Tag diễn tả nhân vật, ngày sinh, ngày
tử,...
4.2.2 Lịch sử XML
XML được triển khai nhờ sự đóng góp của rất nhiều người trong mười năm qua.
Ngôn ngữ đánh dấu tiêu chuẩn tổng quát (SGML - Standard Generalized Markup
Language), một ngôn ngữ biểu thị dữ liệu trong những ứng dụng xử lý văn bản đa dạng
và có cấu trúc tinh vi. Nhược điểm của nó là rất rắc rối, khó học, khó sử dụng,...
Chính vì lẽ đó vào năm 1990 Tim Berners- Lee ở CERN, đã tạo ra HTML (là một
ứng dụng của SGML), một phần nhỏ của SGML, nhưng mọi người lại rất dễ dùng.
Không ngờ sự thành công của HTML vượt quá sức tưởng tượng của chính tác giả.
Nhưng rồi đến một ngày vào năm 1995 người ta bắt đầu thấy sự giới hạn của HTML,
mặc dù nó được Netscape, Microsoft cố gắng thêm thắt, bởi sự thịnh hành của Web.
Do đó, nhiều người có ý định quay trở lại SGML, nhưng lại ái ngại.
Đúng lúc đó vào 1996, Jon Bosak ở Sun Microsystem khởi đầu nhóm cộng tác
(working group) W3C SGML, bấy giờ được gọi là nhóm XML. Mục đích là đơn giản
hoá SGML để nó dễ dùng như HTML mà đồng thời mạnh mẽ, dễ dùng,...
Tim Bray và C.M. Sperberg-McQueen viết hầu hết Specification (bản điều kiện kỹ
thuật) nguyên thủy của XML. Trươc đó, Bray đã có kinh nghiệm nhiều năm quản lý dự
án "New Oxford English Dictionary". Ông muốn XML hội các điều kiện sau:
------------------------------------------------------------------------------------------------------------------------------------
May30,2008,Bùi Mạnh Hưng_A07757,BaoCaoChuyenDeTotNghiep.Net
25
- Đơn giản đủ cho lập trình viên áp dụng
- Dễ cho Search Engine (như AltaVista, Yahoo, Infoseek,...) phân loại
- Không giới hạn trong tiếng Anh của nước Mỹ
Chính vì lẽ đó, bản Specification đầu tiên của XML được ra đời vào tháng 11 năm
1996. Tháng 7 năm 1997 Microsoft áp dụng đầu tiên của XML, Channel Definition
Format (CDF). Họ dùng CDF để xuất bản các trang Web đến những khách đã đóng
tiền tháng (subscribers). CDF là một phần của Internet Explorer 4.0. Tháng 5 nãm 1997
Microsoft và Inso Corporation xuất bản XSL (eXtensible Style Language) để làm Style
Sheet diễn tả cách trình bày một trang XML.
Đến tháng 1 năm 1998 Microsoft cho ra một chương trình miễn phí tên MSXSL để
generate một trang HTML từ một cặp trang XML và XSL. Sau này thì Internet
Explorer 5.0 có thể hiển thị trực tiếp một trang XML (bên trong có ghi phải tìm trang
XSL ở đâu), không cần cho thấy kết quả trang HTML.
Vào tháng 2 năm 1998 Tổ hợp Web toàn cầu W3C phê chuẩn cho chính thức thi
hành Version 1.0 của XML Specification.
4.2.3 SGML, HTML, và XML
Ngôn ngữ đánh dấu tiêu chuẩn tổng quát (SGML - Standard Generalized Markup
Language) là một phương pháp biểu thị dữ liệu trong những ứng dụng xử lý văn bản.
Nó đã tồn tại hõn một thập kỷ nay; cả XML lẫn HTML đều là những định dạng tài liệu
có nguồn gốc từ SGML. Vì vậy, tất cả chúng đều cùng chia sẻ một số đặc tính chẳng
hạn như một cú pháp tương tự và cách dùng các nhãn trong dấu ngoặc nhọn. Nhưng
HTML là một ứng dụng của SGML, trong khi XML là một bộ trình con của SGML.
Sự phân biệt là rất quan trọng. Cơ bản, HTML không thể dùng để định nghĩa nên các
ứng dụng mới trong khi XML có thể thực hiện được việc này. Ví dụ, cả RDF lẫn CDF
đều là những ứng dụng được định nghĩa bằng XML. XML và HTML thực sự giống
như hai anh em họ hơn là hai anh em ruột. Tổ hợp Web toàn cầu W3C đã phát triển
một biểu đồ lớn để làm sáng tỏ mối quan hệ này.
XML thực sự tương thích với SGML - bất cứ một công cụ tạo hoặc duyệt SGML nào
cũng có thể đọc được những tài liệu XML. Tuy nhiên, XML đỡ phức tạp hơn SGML,
và nó được thiết kế để chạy trên một mạng băng tầng hữu hạn ví dụ như Internet. Theo
Tim Bray - đồng biên tập viên XML - thì ý tưởng đằng sau XML là tận dụng lợi ích
của SGML, loại bỏ những phần phức tạp, duy trì tính nhẹ nhàng, và làm cho nó hoạt
động được trên Web.
------------------------------------------------------------------------------------------------------------------------------------
May30,2008,Bùi Mạnh Hưng_A07757,BaoCaoChuyenDeTotNghiep.Net
26
HTML, SGML, và XML sẽ tiếp tục được sử dụng ở những vị trí thích hợp; sẽ không
có ngôn ngữ nào trong số chúng thể hiện bất cứ tính chất lỗi thời nào khác. HTML vẫn
duy trì cách thức đõn giản nhất để phát hành dữ liệu nhanh chóng trên Web, thường là
những dữ kiện ngắn hạn ví dụ như các chương trình nghị sự hoặc các tờ quảng cáo.
Nếu dữ kiện có một công dụng dài hạn hơn và cần một cấu trúc chặt chẽ hơn, thì các
nhà xây dựng Web sẽ chuyển sang XML. Không giống như HTML và XML, SGML có
thể sẽ chẳng bao giờ có được sự chấp nhận phổ biến trên Internet, đơn giản bởi vì nó
chưa bao giờ được thiết kế hoặc được tối ưu cho các nhu cầu của một giao thức mạng.
Mức tối đa, với những ứng dụng phát hành có cấu trúc chặt chẽ ở mức độ cao, SGML
sẽ tiếp tục phù hợp với mọi yêu cầu.
4.2.4 Ứng dụng XML
Tôi sử dụng XML trong module tin tức chứng khoán và module top cổ phiếu. Khi
trình bày dữ liệu ở dạng XML tôi có thể thay đổi giao diện bằng XSL một cách dễ dàng
mà ko phải chỉnh sửa code trong các file .cs, đồng thời XML giúp tôi có khả năng chỉ
định cấu trúc của tài liệu. Vì XML là một chuẩn công cộng, không thuộc về một công
ty nào, nên không bị phụ thuộc vào định dạng của 1 công ty nào (ví dụ dùng word thì
cần có bộ office của Microsoft) và nhiều lợi điểm khác. Sau đây là ví dụ 1 trang XML
được module tin tức của tôi tự động sinh ra:
(c) bmhung
22
0
546
Bùi Mạnh Hưng
-1
130
Tổng hợp KQGD tuần từ 24-28/3 sàn HASTC
This is description of artilce
------------------------------------------------------------------------------------------------------------------------------------
May30,2008,Bùi Mạnh Hưng_A07757,BaoCaoChuyenDeTotNghiep.Net
27
This is content of article
22
False
1
3/30/2008 5:47:58 PM
3/30/2008 5:47:58 PM
3/30/2008 5:47:58 PM
4.2.5 XSL thêm dáng điệu cho XML
Thoạt đầu người ta dùng CSS (Cascading Style Sheet), rất thông dụng cho các trang
Web, để làm phương tiện diễn tả cách trình bày một trang XML. Nhưng sau đó XSL đã
mang lại một ngôn ngữ về sự trình bày rất mạnh mẽ và uyển chuyển. Thật ra chính
XSL cũng là một ngôn ngữ lập trình nên chẳng những nó biến đổi Style của trang XML
mà còn quyết định thứ nào được display và display theo thứ tự nào nữa.
Những trang XSL định nghĩa những style sheets (trang dáng điệu) để ta có thể áp
dụng vào những tài liệu XML. Một style sheet chứa những chỉ dẫn (instructions) để
bảo một XML làm cách nào phát sinh (generate) ra một tài liệu trình duyệt kết quả cho
những dữ liệu trong một tài liệu XML.
Ví dụ 1 file xsl được tôi sử dụng để trình bày tin tức cho xml trên:
<xsl:stylesheet xmlns:xsl=""
version="1.0">
------------------------------------------------------------------------------------------------------------------------------------
May30,2008,Bùi Mạnh Hưng_A07757,BaoCaoChuyenDeTotNghiep.Net
28
<xsl:value- of=""
select='ArticleID'/>&ModuleID=<xsl:value- of
select='ModuleID'/>
/mysecurities/Portals/0/ArticleImages/NoPhotoAdded.jpg
<xsl:value-of select='Description' disable-output-=''
escaping='yes'/>
------------------------------------------------------------------------------------------------------------------------------------
May30,2008,Bùi Mạnh Hưng_A07757,BaoCaoChuyenDeTotNghiep.Net
29
4.3 Giới thiệu Webservice
Với Web Service, công nghệ chủ yếu dựa vào XML\SOAP, các hệ thống các ứng
dụng có thể liên tác nhau một cách dễ dàng. Chúng ta có thể hình dung có một nhà sản
xuất phần mềm xây dựng một dịch vụ web như dịch Anh Việt chẳng hạn và công bố
lên một nơi cho đăng ký dịch vụ (giống như một chợ bán dịch vụ). Sau đó chúng ta tìm
đến "chợ" đó, hỏi mua và nhận được một bản mô tả về dịch vụ cho biết cách sử dụng
dịch vụ như thế nào. Cuối cùng là viết chương trình để sử dụng nó.
Dịch vụ Web (Web Service) được coi là một công nghệ mang đến cuộc cách mạng
trong cách thức hoạt động của các dịch vụ B2B (Business to Business) và B2C
(Business to Customer). Giá trị cơ bản của dịch vụ Web dựa trên việc cung cấp các
phương thức theo chuẩn trong việc truy nhập đối với hệ thống đóng gói và hệ thống kế
thừa. Các phần mềm được viết bởi những ngôn ngữ lập trình khác nhau và chạy trên
những nền tảng khác nhau có thể sử dụng dịch vụ Web để chuyển đổi dữ liệu thông
qua mạng Internet theo cách giao tiếp tương tự bên trong một máy tính. Tuy nhiên,
công nghệ xây dựng dịch vụ Web không nhất thiết phải là các công nghệ mới, nó có
thể kết hợp với các công nghệ đã có như XML, SOAP, WSDL, UDDI… Với sự phát
triển và lớn mạnh của Internet, dịch vụ Web thật sự là một công nghệ đáng được quan
tâm để giảm chi phí và độ phức tạp trong tích hợp và phát triển hệ thống. Chúng ta sẽ
xem xét các dịch vụ Web từ mức khái niệm đến cách thức xây dựng.
4.3.1 Khái niệm webservice
Dịch vụ web (tiếng Anh: Web service) là sự kết hợp các máy tính cá nhân với các
thiết bị khác, các cơ sở dữ liệu và các mạng máy tính khác để tạo thành một cơ cấu tính
toán ảo mà người sử dụng có thể làm việc thông qua các trình duyệt mạng.
Bản thân các dịch vụ này sẽ chạy trên các máy phục vụ trên nền Internet chứ không
phải là các máy tính cá nhân, do vậy có thể chuyển các chức nǎng từ máy tính cá nhân
lên Internet. Người sử dụng có thể làm việc với các dịch vụ thông qua bất kỳ loại máy
nào có hỗ trợ Web Service và có truy cập Internet, kể cả các thiết bị cầm tay. Do đó các
Web Service sẽ làm Internet biến đổi thành một nơi làm việc chứ không phải là một
phương tiện để xem và tải nội dung.
Điều này cũng sẽ đưa các dữ liệu và các ứng dụng từ máy tính cá nhân tới các máy
phục vụ của một nhà cung cấp dịch vụ Web. Các máy phục vụ này cũng cần trở thành
nguồn cung cấp cho người sử dụng cả về độ an toàn, độ riêng tư và khả nǎng truy nhập.
------------------------------------------------------------------------------------------------------------------------------------
May30,2008,Bùi Mạnh Hưng_A07757,BaoCaoChuyenDeTotNghiep.Net
30
Các máy phục vụ ứng dụng sẽ là một phần quan trọng của các Web Service bởi vì
thường thì các máy phục vụ này thực hiện các hoạt động ứng dụng phức tạp dựa trên sự
chuyển giao giữa người sử dụng và các chương trình kinh doanh hay các cơ sở dữ liệu
của một tổ chức nào đó.
Một số nhà quan sát ngành công nghiệp này cho rằng Web Service không thực sự là
một khái niệm mới và phản ánh một phần không nhỏ khái niệm mạng máy tính vốn đã
trở nên quen thuộc trong nhiều nǎm qua. Web Service chủ yếu dựa trên một lời gọi thủ
tục từ xa không chặt chẽ mà có thể thay thế các lời gọi thủ tục từ xa chặt chẽ, đòi hỏi
các kết nối API phù hợp đang phổ biến hiện nay. Dịch vụ Web sử dụng XML chứ
không phải C hay C++, để gọi các quy trình.
Tuy nhiên các chuyên gia khác lại cho rằng Web Service là một dạng API dựa trên
phần mềm trung gian, có sử dụng XML để tạo phần giao diện trên nền Java 2 (J2EE)
hay các server ứng dụng .NET. Giống như các phần mềm trung gian, Web Service sẽ
kết nối server ứng dụng với các chương trình khách hàng.
a) Đặc điểm
Dịch vụ Web cho phép client và server tương tác được với nhau ngay cả trong những
môi trường khác nhau. Ví dụ, đặt Web server cho ứng dụng trên một máy chủ chạy hệ
điều hành Linux trong khi người dùng sử dụng máy tính chạy hệ điều hành Windows,
ứng dụng vẫn có thể chạy và xử lý bình thường mà không cần thêm yêu cầu đặc biệt để
tương thích giữa hai hệ điều hành này.
Phần lớn kĩ thuật của Dịch vụ Web được xây dựng dựa trên mã nguồn mở và được
phát triển từ các chuẩn đã được công nhận, ví dụ như XML.
Một Dịch vụ Web bao gồm có nhiều mô-đun và có thể công bố lên mạng Internet. Là
sự kết hợp của việc phát triển theo hướng từng thành phần với những lĩnh vực cụ thể và
cơ sở hạ tầng Web, đưa ra những lợi ích cho cả doanh nghiệp, khách hàng, những nhà
cung cấp khác và cả những cá nhân thông qua mạng Internet.
Một ứng dụng khi được triển khai sẽ hoạt động theo mô hình client- server. Nó có thể
được triển khai bởi một phần mềm ứng dụng phía server ví dụ như PHP, Oracle
Application server hay Microsoft.Net…
Ngày nay dịch vụ Web đang rất phát triển, những lĩnh vực trong cuộc sống có thể áp
dụng và tích hợp dịch vụ Web là khá rộng lớn như dịch vụ chọn lọc và phân loại tin tức
(hệ thống thư viện có kết nối đến web portal để tìm kiếm các thông tin cần thiết); ứng
dụng cho các dịch vụ du lịch (cung cấp giá vé, thông tin về địa điểm…), các đại lý bán
hàng qua mạng, thông tin thương mại như giá cả, tỷ giá hối đoái, đấu giá qua
------------------------------------------------------------------------------------------------------------------------------------
May30,2008,Bùi Mạnh Hưng_A07757,BaoCaoChuyenDeTotNghiep.Net
31
mạng…hay dịch vụ giao dịch trực tuyến (cho cả B2B và B2C) như đặt vé máy bay,
thông tin thuê xe…
Các ứng dụng có tích hợp dịch vụ Web đã không còn là xa lạ, đặc biệt trong điều
kiện thương mại điện tử đang bùng nổ và phát triển không ngừng cùng với sự lớn mạnh
của Internet. Bất kì một lĩnh vực nào trong cuộc sống cũng có thể tích hợp với dịch vụ
Web, đây là cách thức kinh doanh và làm việc có hiệu quả bởi thời đại ngày nay là thời
đại của truyền thông và trao đổi thông tin qua mạng. Do vậy, việc phát triển và tích hợp
các ứng dụng với dịch vụ Web đang được quan tâm phát triển là điều hoàn toàn dễ hiểu
b) Ưu điểm
+ Dịch vụ Web cung cấp khả năng hoạt động rộng lớn với các ứng dụng phần mềm
khác nhau chạy trên những nền tảng khác nhau.
+ Sử dụng các giao thức và chuẩn mở. Giao thức và định dạng dữ liệu dựa trên văn bản
(text), giúp các lập trình viên dễ dàng hiểu được.
+ Nâng cao khả năng tái sử dụng.
+ Thúc đẩy đầu tư các hệ thống phần mềm đã tồn tại bằng cách cho phép các tiến
trình/chức năng nghiệp vụ đóng gói trong giao diện dịch vụ Web.
+ Tạo mối quan hệ tương tác lẫn nhau và mềm dẻo giữa các thành phần trong hệ thống,
dễ dàng cho việc phát triển các ứng dụng phân tán.
+ Thúc đẩy hệ thống tích hợp, giảm sự phức tạp của hệ thống, hạ giá thành hoạt động,
phát triển hệ thống nhanh và tương tác hiệu quả với hệ thống của các doanh nghiệp
khác.
c) Nhược điểm
+ Những thiệt hại lớn sẽ xảy ra vào khoảng thời gian chết của Dịch vụ Web, giao diện
không thay đổi, có thể lỗi nếu một máy khách không được nâng cấp, thiếu các giao
thức cho việc vận hành.
+ Có quá nhiều chuẩn cho dịch vụ Web khiến người dùng khó nắm bắt.
+ Phải quan tâm nhiều hơn đến vấn đề an toàn và bảo mật.
4.3.2 Kiến trúc webservice
Dịch vụ Web gồm có 3 chuẩn chính: SOAP (Simple Object Access Protocol), WSDL
(Web Service Description Language) và UDDI (Universal Description, Discovery, and
Integration). Hình 1 mô tả chồng giao thức của dịch vụ Web, trong đó UDDI được sử
dụng để đăng ký và khám phá dịch vụ Web đã được miêu tả cụ thể trong WSDL. Giao
tác UDDI sử dụng SOAP để nói chuyện với UDDI server, sau đó các ứng dụng SOAP
------------------------------------------------------------------------------------------------------------------------------------
May30,2008,Bùi Mạnh Hưng_A07757,BaoCaoChuyenDeTotNghiep.Net
32
yêu cầu một dịch vụ Web. Các thông điệp SOAP được gửi đi chính xác bởi HTTP và
TCP/IP.
Chồng giao thức dịch vụ Web là tập hợp các giao thức mạng máy tính được sử dụng
để định nghĩa, xác định vị trí, thi hành và tạo nên dịch vụ Web tương tác với những
ứng dụng hay dịch vụ khác. Chồng giao thức này có 4 thành phần chính:
- Dịch vụ vận chuyển (Service Transport): có nhiệm vụ truyền thông điệp giữa các ứng
dụng mạng, bao gồm những giao thức như HTTP, SMTP, FTP, JSM và gần đây nhất là
giao thức thay đổi khổi mở rộng (Blocks Extensible Exchange Protocol- BEEP).
- Thông điệp XML: có nhiệm vụ giải mã các thông điệp theo định dạng XML để có thể
hiểu được ở mức ứng dụng tương tác với người dùng. Hiện tại, những giao thức thực
hiện nhiệm vụ này là XML- RPC, SOAP và REST.
- Mô tả dịch vụ: được sử dụng để miêu tả các giao diện chung cho một dịch vụ Web cụ
thể. WSDL thường được sử dụng cho mục đích này, nó là một ngôn ngữ mô tả giao
tiếp và thực thi dựa trên XML. Dịch vụ Web sẽ sử dụng ngôn ngữ này để truyền tham
số và các loại dữ liệu cho các thao tác và chức năng mà dịch vụ Web cung cấp.
------------------------------------------------------------------------------------------------------------------------------------
May30,2008,Bùi Mạnh Hưng_A07757,BaoCaoChuyenDeTotNghiep.Net
33
- Khám phá dịch vụ: tập trung dịch vụ vào trong một nơi được đăng ký, từ đó giúp một
dịch vụ Web có thể dễ dàng khám phá ra những dịch vụ nào đã có trên mạng, tốt hơn
trong việc tìm kiếm những dịch vụ khác để tương tác. Một dịch vụ Web cũng phải tiến
hành đăng ký để các dịch vụ khác có thể truy cập và giao tiếp. Hiện tại, UDDI API
thường được sử dụng để thực hiện công việc này.
Trong đó, tầng giao thức tương tác dịch vụ (Service Communication Protocol) với
công nghệ chuẩn là SOAP. SOAP là giao thức nằm giữa tầng vận chuyển và tầng mô tả
thông tin về dịch vụ, cho phép người dùng triệu gọi một dịch vụ từ xa thông qua một
thông điệp XML. Ngoài ra, để các dịch vụ có tính an toàn, toàn vẹn và bảo mật thông
tin, trong kiến trúc dịch vụ Web, chúng ta có thêm các tầng Policy, Security,
Transaction, Management.
4.3.3 Ứng dụng webservice
Tôi sử dụng webservice cho module vẽ biểu đồ chứng khoán và module cung cấp kết
quả giao dịch chứng khoán, thống kê top các cổ phiếu tăng giá nhiều nhất, top các cổ
phiếu giảm giá nhiều nhất trên 2 sàn HOSTC và HASTC. Việc sử dụng webservice sẽ
giúp tôi đạt được 1 số lợi ích chính sau:
- Giảm khối lượng xử lý trong 1 máy (một máy A từ xa xử lý sau đó trả về dữ liệu để
máy B sử dụng sau đó hiển thị kết quả)
- Triển khai hệ thống tới một công ty chứng khoán mới mà công ty chứng khoán đó
chưa có dữ liệu thì có thể sử dụng webservice để hiển thị dữ liệu mà vẫn đảm bảo đầy
đủ dữ liệu.
- Khi sử dụng webservice thì 2 phần mềm viết bằng 2 ngôn ngữ khác nhau vẫn có thể
giao tiếp với nhau, hoặc 2 nền tảng khác nhau cũng vẫn có thể giao tiếp với nhau (Ví
dụ Java với .Net), thậm chí 2 phần mềm viết trên 2 hệ điều hành khác nhau vẫn có thể
giao tiếp với nhau (Ví dụ Window với Linux)
4.4 Giới thiệu Ajax
4.4.1 Khái niệm Ajax
a) Lịch sử Ajax
Công nghệ Ajax gốc được Microsoft phát minh từ thập niên 90 trên nền ngôn ngữ
JavaScript và nhiều chuẩn web khác.
b) Khái niệm Ajax
Ajax là từ viết tắt của Asynchronous JavaScript and XML. Ajax không phải là một
công nghệ đơn nhất mà nó là tập hợp của các công nghệ tạo nên một cách tiếp cận mới
trong viêc thiết kế web. Ý nghĩa của ajax là tạo một trang web có sử phản ứng nhanh
------------------------------------------------------------------------------------------------------------------------------------
May30,2008,Bùi Mạnh Hưng_A07757,BaoCaoChuyenDeTotNghiep.Net
34
hơn khi có sư thay đổi dữ liệu. Công nghệ ajax sẽ giúp cho toàn bộ trang web không bị
reload lại khi có sự thay đổi.
Ajax bao gồm các công nghệ như:
- HTML / XHTML : được sử dụng để xây dựng giao diện của trang web.
- CSS : Cung cấp định dạng cho XHTML
- DOM : Chức năng của việc load trang web
- XML : Định dạng của việc trao đổi dữ liệu
- XSTL : XML thành XHTML
- XMLHttp : môi trường truyền thông tin chính
- JavaScript : Ngôn ngữ kịch bản thường được dung cho công cụ Ajax.
Trên thực tế, tất cả các công nghệ này đều được sử dụng trong ajax nhưng có 3 công
nghệ chính bắt buộc phải sử dụng: HTML/XHTML, DOM, XML và JavaScript.
HTML/XHTML là sự cần thiết để hiện thị thông tin, trong khi DOM là sư cần thiết để
thay đổi của một trang XHTML không có reload nó. Phần cuối cùng, JavaScript, cần
thiết để bắt đầu sự truyền thong giữa client và server và vân dụng DOM để cập nhật
trang web. Các công nghệ khác được sử dụng để hỗ trợ cho Ajax solutions, nhưng
không cần thiết.
c) Ajax hoạt động như thế nào?
Điểm khác biệt cơ bản nhất của công nghệ này là việc xử lý thông tin được thực hiện
trên máy thân chủ (Client) thay vì máy phục vụ (Server) như cách truyền thống. Máy
chủ chỉ làm một việc đơn giản là nhận thông tin từ máy khách và trả các dữ liệu về cho
máy khách. Máy khách xử lý sơ bộ thông tin của người dùng nhập vào, sau đó chuyển
về máy chủ rồi nhận dữ liệu từ máy chủ và xử lý để hiển thị cho người dùng.
Từ lâu, mọi người vẫn tưởng tượng ứng dụng máy tính rồi sẽ được lưu và chạy hoàn
toàn trên web thay vì nằm bó buộc trong ổ cứng máy tính. Dù vậy, điều đó vẫn chưa
xảy ra vì ứng dụng web bị hạn chế bởi nguyên lý rằng tất cả các thao tác phải được
thực hiện thông qua HTTP (HyperText Transfer Protocol – Giao thức truyền tải qua
siêu liên kết). Những hoạt động của người sử dụng trên trang web sẽ tạo ra một yêu cầu
HTTP tới server. Máy chủ sẽ thực hiện một số khâu sử lý như lấy lại tài liệu, tính toán,
kiểm tra sự hợp lệ của thông tin, sửa đổi bộ nhớ, sau đó gửi lại một trang HTML hoàn
chỉnh tới máy khách. Về mặt kỹ thuật, phương pháp này nghe có vẻ hợp lý nhưng cũng
khá bất tiện và tốn thời gian, bởi khi server đang thực hiện vai trò của nó thì người
dung phải chờ đợi server thực hiện xong.
------------------------------------------------------------------------------------------------------------------------------------
May30,2008,Bùi Mạnh Hưng_A07757,BaoCaoChuyenDeTotNghiep.Net
35
Để khắc phục hạn chế trên, các chuyên gia phát triển giới thiệu hình thức trung gian –
cơ chế sử lý Ajax giữa máy khách và máy chủ. Điều này giống như việc tăng thêm một
lớp giữa cho ứng dụng để giảm bớt quá trình “đi lại” của thông tin và giảm thời gian
phản ứng. Thay vì phải tải lại (refresh) toàn bộ môt trang, nó chỉ nạp những thông tin
được thay đổi, còn giữ nguyên các phần khác. Vì thế, khi duyệt một trang hỗ trợ
Ajax,người sử dụng sẽ không bao giờ thấy một trang web trống và biểu tượng đồng hồ
cát - dấu hiệu cho thấy máy chủ đang thực hiện nhiệm vụ.
Khi một ứng dụng có hỗ trợ Ajax và người dùng thao tác trên nó thì nó sẽ hoạt động
như sau:
- Ajax thực hiện tương tác với máy chủ bằng cách sử dụng đối tượng
XMLHttpRequest, nhận kết quả về dưới dạng XML và phân tích kết quả bằng công
nghệ DOM.
-Tương tác giữa Ajax và giao diện người dùng được thực hiện thông qua các mã
Javascript và XHTML + CSS.
Dưới đây là mô hình thể hiện cơ chế làm viêc của Ajax:
------------------------------------------------------------------------------------------------------------------------------------
May30,2008,Bùi Mạnh Hưng_A07757,BaoCaoChuyenDeTotNghiep.Net
36
Một trong những điểm mấu chốt của công nghệ Ajax là bạn không tương tác trực tiếp
với máy chủ như cách truyền thống mà là qua một lớp trung gian của Ajax. Vậy khi
thao tác qua một lớp trung gian thì sẽ làm cho cơ chế hoạt động chậm hơn nữa quá
trình tương tác? Thắc mắc trên là hoàn toàn có lý, tuy nhiên, thực tế lại ngược lại: sử
dụng Gmail bạn có cảm giác mọi thứ nhanh hơn. Lý do là:
1) Không phải lúc nào bạn cũng cần phải tương tác với máy chủ. Như trong trường hợp
của Gmail, một khi giao diện của Gmail đã được tải về xong (để ý khoảng thời gian
ngắn từ khi bạn đăng nhập cho đến khi giao diện của Gmail xuất hiện) thì những tác vụ
như chuyển từ thư mục này sang xem thư mục khác không nhất thiết phải hỏi lại máy
chủ (tất nhiên với điều kiện dữ liệu đã có sẵn).
2) Bằng cách chỉ nhận những thông tin cần thiết (ở dạng XML), dung lượng truyền tải
giữa máy tính của bạn và máy chủ sẽ giảm đi rất nhiều. Sau khi bạn giao diện đã được
tải về 1 lần, Ajax sẽ không cần phải tải lại toàn bộ giao diện đó mỗi khi tương tác với
------------------------------------------------------------------------------------------------------------------------------------
May30,2008,Bùi Mạnh Hưng_A07757,BaoCaoChuyenDeTotNghiep.Net
37
máy chủ. Thay vào đó, Ajax sẽ gởi yêu cầu đến máy chủ và nhận kết quả từ máy chủ
về những gì đã thay đổi sau khi máy chủ thực hiện yêu cầu đó. Ajax sau đó sẽ thông
báo cho phần giao diện (thông qua các lời gọi Javascript) thực hiện các thay đổi tương
ứng trên giao diện.
3) Tương tác giữa phần giao diện và Ajax là tương tác nội bộ bên trong trình duyệt,
giúp cho các thay đổi sẽ được thể hiện gần như tức thì. Mô hình sau thể hiện những gì
diễn ra giữa Giao diện ứng dụng web - Ajax - và máy chủ:
Mọi thao tác của người sử dụng sẽ gửi lệnh JavaScript tới bộ sử lý Ajax thay vì tạo
một yêu cầu HTTP( HTTP Request) và truy vấn tới máy chủ. Sau đó, Ajax sẽ truyền
yêu cầu tới máy chủ một cách không đồng bộ, thông thường sử dụng XML, mà không
làm gián đoạn sự tương tác của người dùng và ứng dụng web.
------------------------------------------------------------------------------------------------------------------------------------
May30,2008,Bùi Mạnh Hưng_A07757,BaoCaoChuyenDeTotNghiep.Net
38
4.4.2 Các ứng dụng Ajax phổ biến
Google Suggest hiển thị các thuật ngữ gợi ý gần như ngay lập tứng khi người dung
chưa gõ xong bộ khoá. Còn với Googe Maps, mọi người có thể theo dõi những thay
đổi, xê dịch, kéo thả bản đồ như trên môi trường desktop. Google Suggest và Googe
Maps là 2 ví dụ nổi bật về phương pháp ứng dụng web thế hệ mới. Ngoài ra còn có các
trang web ứng dụng Ajax như: như trang chia sẻ hình ảnh Flickr hay công cụ tìm kiếm
A9.com (của Amazon). Ngoài ra, một số công ty trên thế giới cũng đang triển khai các
ứng dụng có hỗ trợ Ajax.
4.4.3 Hàm javascript dùng cho kỹ thuật ajax
function retrieveURL_POST(url,data)
{
if (window.XMLHttpRequest) // Xét trường hợp trình duyệt ko phải là IE
{
req = new XMLHttpRequest();
req.onreadystatechange = processReqChange;
req.open('POST', url, true);
req.setRequestHeader('Content-Type', 'application/x-www- form-
urlencoded');
req.send(data);
}
else if (window.ActiveXObject) // Xét trưÝng hợp trình duyệt là IE
{
req = new ActiveXObject('Microsoft.XMLHTTP')
if (req)
{
req.onreadystatechange = processReqChange;
req.open('POST', url, true);
req.setRequestHeader('Content-Type', 'application/x-www-
form-urlencoded');
req.send(data);
}
}
}
function processReqChange() {
if (req.readyState == 4) // Trả lời khi dữ liệu đã load xong
------------------------------------------------------------------------------------------------------------------------------------
May30,2008,Bùi Mạnh Hưng_A07757,BaoCaoChuyenDeTotNghiep.Net
39
{
if (req.status == 200) // Kiểm tra trạng thái có ok không (200
trong bảng trạng thái của XMLHttpRequest là ok)
{
// Đưa dữ liệu vào main_display (id của thẻ div)
document.getElementById("main_display").innerHTML =
req.responseText;
} else {
alert('There was a problem retrieving the XML data: ' +
req.responseText);
}
}
}
4.4.4 Giới thiệu Asp.net Ajax
a) Kiến trúc của asp.net ajax
Asp.Net ajax bao gồm Microsoft Ajax Library dung cho phía Client và ASP.NET
Ajax Extensions dùng phía server. Thêm vào đó chúng ta có thể sử dụng ASP.NET
AJAX Control Toolkit và ASP.NET AJAX Futures. Đây là mô hình kiến trúc:
------------------------------------------------------------------------------------------------------------------------------------
May30,2008,Bùi Mạnh Hưng_A07757,BaoCaoChuyenDeTotNghiep.Net
40
Mô hình trên cho thấy trong thư viện Microsoft Ajax hỗ trợ việc tạo các component
phía client, hỗ trợ các trình duyệt, networking và Core Services. Mô hình trên cũng cho
ta thâý các chức năng của ASP.NET Ajax Extensions hỗ trợ Script Support, Web
Services, Application Services, Server Controls.
b) Asp.net ajax control toolkit
ASP.NET AJAX Control Toolkit là tập hợp các mẫu ví dụ mà chỉ ra một vài kinh
nghiệm mà bạn có thể tạo các điều khiển và sự mở rộng của ajax. Có thể download bộ
AJAX Control Toolkit ở website
c) Tính năng Asp.net ajax community-supported
ASP.NET AJAX Community-supported Futures cung cấp các nét đặc trưng trong
phần lõi của ASP.NET AJAX. Và nó không có trong bộ Microsoft ASP.NET AJAX
release. Nó cũng bao gồm các điều khiển mở rộng hỗ trợ cho việc định nghĩa cú pháp
phía client (xml- script) và hơn thế nữa. Có thể down load bộ ASP.NET AJAX
Community-supported Futures Releases ở website
4.4.5 Ứng dụng kỹ thuật AJAX
Kỹ thuật Ajax mà tôi trình bày phía trên sẽ được demo trong bảng giá trực tuyến (một
thành phần trong hệ thống portal chứng khoán ở chuyên đề này) và ở một số module
khác. Kỹ thuật này sẽ giúp tôi giải quyết được vấn đề lớn về tốc độ tải web:
- Giúp bảng giá chỉ tải lên và hiển thị những mã chứng khoán được chọn
- Thay đổi giá trị của các ô có thay đổi mà ko phải tải lại toàn bộ trang.
- Cập nhật bảng giá trực tuyến một cách nhanh chóng, liên tục.
- Giảm bớt quá trình “đi lại” của thông tin và giảm thời gian phản ứng. Thay vì phải tải
lại (refresh) toàn bộ môt trang, nó chỉ nạp những thông tin được thay đổi, còn giữ
nguyên các phần khác.
------------------------------------------------------------------------------------------------------------------------------------
May30,2008,Bùi Mạnh Hưng_A07757,BaoCaoChuyenDeTotNghiep.Net
41
5 Mô tả hệ thống
5.1 Kiến trúc tổng thể
5.1.1 Tổng quan hệ thống
Hệ thống được xây dựng trên nền tảng dotnetnuke và 3 giải pháp chính: giải pháp
XML&XSL, giải pháp webservice, giải pháp webspider.
- Nền tảng dotnetnuke giúp hệ thống được xây dựng nhanh hơn, tận dụng được những
thành phần cơ bản trong việc quản trị hệ thống và một số module có sẵn.
- Giải pháp XML&XSL giúp cho chúng ta có được một hệ thống website cực kì uyển
chuyển về giao diện.
- Giải pháp webservice, ajax giúp đưa ra những dịch vụ tiện ích của hệ thống, sử dụng
dịch vụ từ website khác và tối ưu tốc độ hiển thị.
- Giải pháp webspider giúp cho hệ thống có khả năng tự động hóa cao, tự động đưa các
thông tin từ các website khác về xử lý sau đó hiển thị phía người dùng.
------------------------------------------------------------------------------------------------------------------------------------
May30,2008,Bùi Mạnh Hưng_A07757,BaoCaoChuyenDeTotNghiep.Net
42
5.1.2 Kiến trúc đa tầng
· Tầng trình bày (presentation): chứa các cấu phần xử lý giao diện người dùng và tương
tác với người dùng.
· Tầng logic nghiệp vụ (bussiness logic): chứa các cấu phần phối hợp với nhau đê giải
quyết các vấn đề nghiệp vụ.
· Tầng dữ liệu (data): được sử dụng để truy xuất cơ sở dữ liệu
Ưu điểm của việc chia tách ứng dụng thành các tầng logic khác nhau là tách biệt mỗi
phần với những phần khác. Sự tách biệt này giúp nhà phát triển có thể có nhiều sự thay
đổi ở một tầng mà hạn chế được tối đa việc ảnh hưởng tới các tầng khác.
------------------------------------------------------------------------------------------------------------------------------------
May30,2008,Bùi Mạnh Hưng_A07757,BaoCaoChuyenDeTotNghiep.Net
43
5.1.3 Sơ đồ triển khai hệ thống
------------------------------------------------------------------------------------------------------------------------------------
May30,2008,Bùi Mạnh Hưng_A07757,BaoCaoChuyenDeTotNghiep.Net
44
5.2 Giải pháp XML&XSL
5.2.1 Sơ đồ giải pháp XML&XSL
5.2.2 Mô tả hoạt động giải pháp XML&XSL
- Người dùng yêu cầu xem thông tin
- Luồng đi của yêu cầu sẽ đi theo đường màu tím trên hình vẽ
+ Module HungBM.Articles sẽ gửi yêu cầu lấy thông tin tới bộ xử lý ArticleXML
+ Bộ xử lý ArticleXML gửi yêu cầu lấy dữ liệu tới lớp DBArticle
+ Lớp DBArticle sẽ gọi câu StoreProcedure tương ứng với yêu cầu
+ StoreProcedure thực hiện lệnh lấy dữ liệu từ database
- Hệ thống sẽ trả lại thông tin theo yêu cầu của người dùng
- Luồng đi của dữ liệu trả lại sẽ đi theo đường màu xanh
+ Dữ liệu được StoreProcedure lấy ra từ Database.
+ Dữ liệu trả về từ câu StoreProcedure sẽ được lớp DBArticle đưa tới bộ xử lý
ArticleXML.
+ Bộ xử lý ArticleXML đưa dữ liệu ra XML
------------------------------------------------------------------------------------------------------------------------------------
May30,2008,Bùi Mạnh Hưng_A07757,BaoCaoChuyenDeTotNghiep.Net
45
- Module HungBM.Article sẽ kết hợp file XML và XSL đưa dữ liệu ra HTML và hiển
thị lên màn hình
- Mã lệnh giúp lấy dữ liệu từ XML và trình bày bằng XSL
// Gửi yêu cầu lấy dữ liệu XML
request = WebRequest.Create(m_strUrlWeb + "/ArticlesXML.aspx?ModuleID=" + strModuleID +
"&NumberOfArticle=" + m_strNumberOfArticle + "&ctl=GetArticles");
// Lấy dữ liệu trả về
WebResponse response = request.GetResponse();
Stream responseStream = response.GetResponseStream();
// Đọc luồng Response sử dụng XmlTextReader
XmlTextReader reader = new XmlTextReader(responseStream);
// Khai báo đường dẫn tới XML cho đối tượng xmlArticle
XPathDocument xml_doc = new XPathDocument(reader);
xmlArticle.XPathNavigator = xml_doc.CreateNavigator();
// Đặt đường dẫn tới file XSL
string strPath = DotNetNuke.Common.Globals.ApplicationMapPath;
FileInfo fileXSL = new FileInfo(strPath+"/Portals/_default/XSL/"+m_strFileXSL);
if(fileXSL.Exists)
xmlArticle.TransformSource = "~/Portals/_default/XSL/"+m_strFileXSL;
else
xmlArticle.TransformSource = "~/DesktopModules/HungBM.Articles/ArticleLargeList.xsl";
5.2.3 Sơ đồ tổng quan các chức năng giải pháp XML&XSL
Mô hình tổng thế chức năng của hệ thống được mô tả như sơ đồ dưới đây. Chi tiết
từng chức năng cũng như các tác nhân tham gia vào chức năng đó sẽ được mô tả chi
tiết ở phần sau.
------------------------------------------------------------------------------------------------------------------------------------
May30,2008,Bùi Mạnh Hưng_A07757,BaoCaoChuyenDeTotNghiep.Net
46
a) Các tác nhân tham gia hệ thống
- Người sử dụng internet: Là những người có quyền hạn thấp nhất trong mô hình hệ
thống này. Người sử dụng chỉ có quyền xem thông tin.
- Biên tập viên: Là người có quyền đăng thông tin.
- Người phê duyệt: Là người có quyền cho phép đăng thông tin, sửa thông tin, xóa
thông tin, duyệt thông tin để đưa ra hiển thị cho người dùng.
- Quản trị hệ thống: Ngoài các quyền như của người phê duyệt thì quản trị hệ thống
còn có quyền xem các định dạng xml&xsl, cấu hình module.
- Quyền quản trị host: Ngoài các quyền như quản trị hệ thống thì quản trị host có thể
thêm, xóa, sửa định dạng file xsl.
Nguoi dung
internet
Bien tap vien
Nguoi phe
duyet
Quan tri he
thong
Xem thong tin
Them thong tin
Sua thong tin
Xoa thong tin
Duyet thong tin
Xem dang XML
Xem XSL
Cau hinh XSL
Quan tri host
Cau hinh module
------------------------------------------------------------------------------------------------------------------------------------
May30,2008,Bùi Mạnh Hưng_A07757,BaoCaoChuyenDeTotNghiep.Net
47
b) Các tác chức năng chính của hệ thống
- Chức năng thêm thông tin: cho phép người có quyền này thêm thông tin mới vào cơ
sở dữ liệu.
- Chức năng sửa thông tin: cho phép người có quyền này sửa thông tin đã đưa lên.
- Chức năng xóa thông tin: cho phép người có quyền phê duyệt xóa thông tin khỏi cơ
sở dữ liệu
- Chức năng duyệt thông tin: cho phép người có quyền này duyệt thông tin hiển thị
chính thức tại phía người dùng.
- Xem thông tin: cho phép người dùng xem thông tin tùy theo quyền của hệ thống.
- Xem thông tin dạng xml: cho phép quản trị viên xem thông tin dưới dạng xml trên
trình duyệt web.
- Xem xsl: cho phép quản trị viên xem thông tin dưới dạng xsl trên trình duyệt web.
- Cấu hình file xsl: cho phép quản trị host thêm, sửa, xóa file xsl.
- Cấu hình module: cho phép quản trị hệ thống cấu hình các chức năng của module
như: container, icon, cho phép hiển thị, lựa chọn file xsl hiển thị, lựa chọn số lượng
thông tin hiển thị, có thể chọn thông tin từ nguồn khác để hiển thị.
5.2.4 Chi tiết đặc tả chức năng
UC #0001 > Độ phức tạp:
Trung bình
Mô tả Chức năng này dùng để thêm thông tin mới vào hệ thống
Tác
nhân
Chính Biên tập viên
Phụ Người phê duyệt, quản trị hệ thống, quản trị host.
Tiền điều kiện
Nếu muốn sử dụng chức năng này thì cần phải đăng nhập vào hệ
thống và có quyền thêm thông tin.
Hậu
điều
kiện
Thành
công
Nếu thành công thì thêm mới thông tin vào hệ thống.
Lỗi Hệ thống không được thêm thông tin mới.
ĐẶC TẢ CHỨC NĂNG
Luồng sự kiện chính/Kịch bản chính
- Biên tập viên chọn chức năng thêm thông tin
------------------------------------------------------------------------------------------------------------------------------------
May30,2008,Bùi Mạnh Hưng_A07757,BaoCaoChuyenDeTotNghiep.Net
48
- Hệ thống hiển thị form thêm thông tin và chờ người dùng nhập
- Biên tập viên nhập thông tin vào form của hệ thống
- Biên tập viên click vào nút thêm thông tin.
- Hệ thống kiểm tra tính hợp lệ của dữ liệu nhập vào
+ Nếu dữ liệu không hợp lệ thì hệ thống hiển thị thông báo lỗi cho người dùng và
chờ người dùng nhập lại thông tin (chưa chuyển sang bước tiếp theo)
+ Nếu dữ liệu hợp lệ thì hệ thống chuyển sang bước tiếp theo
- Hệ thống thêm thông tin vào cơ sở dữ liệu
- Hệ thống quay trở lại trang trước khi nhập thông tin.
Sơ đồ hành động (Activity diagram)
Bat Dau
Chon chuc nang
xem thong tin
Nhap thong tin
vao form
Ket Thuc
Them thong
tin vao CSDL
Xu ly loi
Thanh cong Phat hien loi
Vao giao dien
cua chuc nang
Quay lai
Khong quay lai
------------------------------------------------------------------------------------------------------------------------------------
May30,2008,Bùi Mạnh Hưng_A07757,BaoCaoChuyenDeTotNghiep.Net
49
Giao diện minh họa
------------------------------------------------------------------------------------------------------------------------------------
May30,2008,Bùi Mạnh Hưng_A07757,BaoCaoChuyenDeTotNghiep.Net
50
UC #0002 > Độ phức tạp:
Trung bình
Mô tả Chức năng này dùng để sửa thông tin đã có trong hệ thống
Tác
nhân
Chính Người phê duyệt
Phụ Quản trị hệ thống, quản trị host.
Tiền điều kiện
Nếu muốn sử dụng chức năng này thì cần phải đăng nhập vào hệ
thống và có quyền sửa thông tin.
Hậu
điều
kiện
Thành
công
Nếu thành công thì cập nhật lại thông tin vào hệ thống.
Lỗi Hệ thống không cập nhật được thông tin.
ĐẶC TẢ CHỨC NĂNG
Luồng sự kiện chính/Kịch bản chính
- Người phê duyệt chọn chức năng sửa thông tin
- Hệ thống hiển thị form chứa thông tin cũ và chờ người phê duyệt sửa thông tin
- Người phê duyệt sửa thông tin trong form của hệ thống
- Người phê duyệt click vào nút sửa thông tin.
- Hệ thống kiểm tra tính hợp lệ của thông tin mới sửa
+ Nếu dữ liệu không hợp lệ thì hệ thống hiển thị thông báo lỗi cho người dùng và
chờ người dùng nhập lại thông tin (chưa chuyển sang bước tiếp theo)
+ Nếu dữ liệu hợp lệ thì hệ thống chuyển sang bước tiếp theo
- Hệ thống cập nhật thông tin vào cơ sở dữ liệu
- Hệ thống quay trở lại trang trước khi sửa thông tin.
Sơ đồ hành động (Activity diagram)
------------------------------------------------------------------------------------------------------------------------------------
May30,2008,Bùi Mạnh Hưng_A07757,BaoCaoChuyenDeTotNghiep.Net
51
Bat Da u
C hon chuc nang
sua thong tin
S ua thong tin
trong form
Ket T huc
C ap nha t thong
tin vao C S D L
X u ly lo i
Thanh cong P ha t hien lo i
V ao g iao d ien
cua chuc nang
Quay la i
K hong quay la i
------------------------------------------------------------------------------------------------------------------------------------
May30,2008,Bùi Mạnh Hưng_A07757,BaoCaoChuyenDeTotNghiep.Net
52
Giao diện minh họa
------------------------------------------------------------------------------------------------------------------------------------
May30,2008,Bùi Mạnh Hưng_A07757,BaoCaoChuyenDeTotNghiep.Net
53
UC #0003 > Độ phức tạp:
Thấp
Mô tả Chức năng này dùng để xóa thông tin đã có trong hệ thống
Tác
nhân
Chính Người phê duyệt
Phụ Quản trị hệ thống, quản trị host.
Tiền điều kiện
Nếu muốn sử dụng chức năng này thì cần phải đăng nhập vào hệ
thống và có quyền xóa thông tin.
Hậu
điều
kiện
Thành
công
Nếu thành công thì xóa thông tin khỏi hệ thống.
Lỗi Hệ thống không xóa được thông tin.
ĐẶC TẢ CHỨC NĂNG
Luồng sự kiện chính/Kịch bản chính
- Người phê duyệt chọn chức năng xóa thông tin
- Hệ thống xác nhận người dùng có thực sự muốn xóa thông tin không.
+ Nếu người dùng xác nhận là có xóa thì hệ thống chuyển sang bước tiếp theo
+ Nếu người dùng xác nhận là không xóa thì hệ thống ko xóa thông tin.
- Hệ thống xóa thông tin khỏi cơ sở dữ liệu
- Hệ thống thông báo cho người dùng biết việc xóa thông tin đã thực hiện thành công.
Sơ đồ hành động (Activity diagram)
------------------------------------------------------------------------------------------------------------------------------------
May30,2008,Bùi Mạnh Hưng_A07757,BaoCaoChuyenDeTotNghiep.Net
54
Giao diện minh họa
Bat Dau
Chon chuc nang
xoa thong tin
Xac nhan co thuc su
muon xoa khong
Ket Thuc
Xoa thong tin
khoi CSDL
Khong xoa
thong tin
Thanh cong That bai
------------------------------------------------------------------------------------------------------------------------------------
May30,2008,Bùi Mạnh Hưng_A07757,BaoCaoChuyenDeTotNghiep.Net
55
UC #0004 > Độ phức tạp:
Thấp
Mô tả
Chức năng này dùng để duyệt thông tin đang chờ duyệt hoặc bỏ
duyệt thông tin đã đăng.
Tác
nhân
Chính Người phê duyệt
Phụ Quản trị hệ thống, quản trị host.
Tiền điều kiện
Nếu muốn sử dụng chức năng này thì cần phải đăng nhập vào hệ
thống và có quyền duyệt thông tin.
------------------------------------------------------------------------------------------------------------------------------------
May30,2008,Bùi Mạnh Hưng_A07757,BaoCaoChuyenDeTotNghiep.Net
56
Hậu
điều
kiện
Thành
công
Nếu thành công thì thông tin sẽ được duyệt nếu đang ở trạng thái
chờ duyệt và bỏ duyệt khi đang ở trạng thái đã duyệt.
Lỗi Hệ thống không thay đổi trạng thái.
ĐẶC TẢ CHỨC NĂNG
Luồng sự kiện chính/Kịch bản chính
- Người phê duyệt chọn chức năng duyệt thông tin
- Hệ thống đổi trạng thái duyệt tin (nếu đã duyệt thì chuyển thành chưa duyệt, nếu
chưa duyệt thì chuyển thành đã duyệt).
- Hệ thống thông báo cho người dùng biết việc duyệt thông tin đã thực hiện thành
công.
Sơ đồ hành động (Activity diagram)
Bat Dau
Chon chuc nang
duyet thong tin
Ket Thuc
Thay doi trang
thai duyet
Khong thay doi
trang thai duyet
Thanh cong That bai
------------------------------------------------------------------------------------------------------------------------------------
May30,2008,Bùi Mạnh Hưng_A07757,BaoCaoChuyenDeTotNghiep.Net
57
Giao diện minh họa
UC #0005 > Độ phức tạp:
Trung bình
Mô tả
Chức năng này dùng để xem thông tin dưới dạng xml trên trình
duyệt web.
Tác Chính Quản trị hệ thống
------------------------------------------------------------------------------------------------------------------------------------
May30,2008,Bùi Mạnh Hưng_A07757,BaoCaoChuyenDeTotNghiep.Net
58
nhân Phụ Quản trị host.
Tiền điều kiện
Nếu muốn sử dụng chức năng này thì cần phải đăng nhập vào hệ
thống và có quyền quản trị hệ thống.
Hậu
điều
kiện
Thành
công
Nếu thành công thì thông tin sẽ hiển thị dạng xml trên trình duyệt
web.
Lỗi Hệ thống không hiển thị được thông tin mà đưa ra thông báo lỗi.
ĐẶC TẢ CHỨC NĂNG
Luồng sự kiện chính/Kịch bản chính
- Người phê duyệt chọn chức năng xem dạng xml
- Hệ thống hiển thị xử lý thông tin lấy từ cơ sở dữ liệu sau đó hiển thị xml phía client
Sơ đồ hành động (Activity diagram)
Bat Dau
Chon chuc nang
xem dang xml
Ket Thuc
Hien thi du lieu dang
xml tren trinh duyet
Thong bao loi la
khong hien thi duoc
Thanh cong That bai
------------------------------------------------------------------------------------------------------------------------------------
May30,2008,Bùi Mạnh Hưng_A07757,BaoCaoChuyenDeTotNghiep.Net
59
Giao diện minh họa
UC #0006 > Độ phức tạp:
Trung bình
Mô tả Chức năng này dùng để xem xsl trên trình duyệt web.
------------------------------------------------------------------------------------------------------------------------------------
May30,2008,Bùi Mạnh Hưng_A07757,BaoCaoChuyenDeTotNghiep.Net
60
Tác
nhân
Chính Quản trị hệ thống.
Phụ Quản trị host.
Tiền điều kiện
Nếu muốn sử dụng chức năng này thì cần phải đăng nhập vào hệ
thống và có quyền quản trị hệ thống.
Hậu
điều
kiện
Thành
công
Nếu thành công thì thông tin sẽ hiển thị dạng xsl trên trình duyệt
web.
Lỗi Hệ thống không hiển thị được thông tin mà đưa ra thông báo lỗi.
ĐẶC TẢ CHỨC NĂNG
Luồng sự kiện chính/Kịch bản chính
- Người phê duyệt chọn chức năng xem xsl
- Hệ thống hiển thị file xsl trên trình duyệt web.
Sơ đồ hành động (Activity diagram)
Bat Dau
Chon chuc nang
xem file xsl
Ket Thuc
Hien thi noi dung file
xsl tren trinh duyet
Thong bao loi la
khong hien thi duoc
Thanh cong That bai
------------------------------------------------------------------------------------------------------------------------------------
May30,2008,Bùi Mạnh Hưng_A07757,BaoCaoChuyenDeTotNghiep.Net
61
Giao diện minh họa
UC #0007 > Độ phức tạp:
Trung bình
Mô tả
Cho phép quản trị hệ thống cấu hình các chức năng của module
như: container, icon, cho phép hiển thị, lựa chọn file xsl hiển thị,
lựa chọn số lượng thông tin hiển thị, có thể chọn thông tin từ
nguồn khác để hiển thị.
Tác
nhân
Chính Quản trị hệ thống
Phụ Quản trị host
Tiền điều kiện
Nếu muốn sử dụng chức năng này thì cần phải đăng nhập vào hệ
thống và có quyền quản trị hệ thống.
Hậu
điều
Thành
công
Nếu thành công thì hệ thống sẽ được cấu hình module.
------------------------------------------------------------------------------------------------------------------------------------
May30,2008,Bùi Mạnh Hưng_A07757,BaoCaoChuyenDeTotNghiep.Net
62
kiện
Lỗi
Hệ thống không thay đổi trạng thái cấu hình module và thông báo
lỗi.
ĐẶC TẢ CHỨC NĂNG
Luồng sự kiện chính/Kịch bản chính
- Quản trị hệ thống chọn chức năng cấu hình module
- Hệ thống hiển thị form cấu hình và chờ quản trị chọn cấu hình
- Người quản trị cấu hình hệ thống sau đó bấm vào nút cập nhật.
- Hệ thống kiểm tra tính hợp lệ của thông tin cấu hình
+ Nếu thông tin cấu hình hợp lệ thì hệ thống sẽ cập nhật vào cơ sở dữ liệu rồi
chuyển sang bước tiếp theo.
+ Nếu thông tin cấu hình không hợp lệ thì hệ thống sẽ không cập nhật thông tin,
hiển thị thông báo lỗi và không chuyển sang bước tiếp theo.
- Hệ thống quay về trang trước khi cấu hình.
Sơ đồ hành động (Activity diagram)
------------------------------------------------------------------------------------------------------------------------------------
May30,2008,Bùi Mạnh Hưng_A07757,BaoCaoChuyenDeTotNghiep.Net
63
Giao diện minh họa
Bat Dau
Chon chuc nang
cau hinh module
Ket Thuc
Cap nhat cau hinh
vao CSDL
Thong bao loi
Thanh cong That bai
Nguoi quan tri
cau hinh module
------------------------------------------------------------------------------------------------------------------------------------
May30,2008,Bùi Mạnh Hưng_A07757,BaoCaoChuyenDeTotNghiep.Net
64
5.3 Giải pháp Webservice
5.3.1 Sơ đồ giải pháp Webservice
------------------------------------------------------------------------------------------------------------------------------------
May30,2008,Bùi Mạnh Hưng_A07757,BaoCaoChuyenDeTotNghiep.Net
65
5.3.2 Mô tả hoạt động giải pháp Webservice
- Người dùng yêu cầu xem thông tin
- Máy B sẽ gửi yêu cầu lấy thông tin tới máy A
Ví dụ:
HungBM.FAChartWS.FAChartWS objFAChartWS = new HungBM.FAChartWS.FAChartWS();
objFAChartWS.Url = m_strUrlWeb+"
/desktopmodules/HungBM.FAChartWS/HungBM.FAChartWS.asmx";
byte[] arrData = objFAChartWS.GetImageChart(strMapType, strTimeRange, intMapWidth,
intMapHeight, mainType, strIndicator1, strIndicator2, strIndicator3, strIndicator4, strBandType,
strAvgType1, strAvgType2, strMovAvg1, strMovAvg2);
- Máy A làm việc với Database rồi trả kết quả về cho máy B
- Máy B nhận dữ liệu từ máy A rồi hiển thị ra màn hình.
string strPath = string.Format("{0}/DesktopModules/HungBM.FAChartWS/Chart.png",
DotNetNuke.Common.Globals.ApplicationPath);
DotNetNuke.Common.Utilities.FileSystemUtils.SaveFile(Server.MapPath(strPath), arrData);
imgFinanceAnalysisChart.ImageUrl = strPath;
5.4 Giải pháp Webspider
5.4.1 Sơ đồ giải pháp Webspider
------------------------------------------------------------------------------------------------------------------------------------
May30,2008,Bùi Mạnh Hưng_A07757,BaoCaoChuyenDeTotNghiep.Net
66
5.4.2 Mô tả hoạt động giải pháp Webspider
- Người dùng yêu cầu xem thông tin
- Hệ thống download mã HTML từ website khác về
WebClient client = new WebClient();
string s = client.DownloadString("");
- Hệ thống xử lý xâu vừa download sau đó hiển thị lên màn hình.
6 Tổng kết
Trong quá trình thực hiện chuyên đề tôi đã thu được nhiều kiến thức, tuy tôi vẫn chưa
tìm hiểu được sâu về Dotnetnuke nhưng cũng đã biết làm gói giao diện skin, container,
biết cách viết thêm các gói module mới và sử dụng để triển khai thành sản phẩm thực
tế. Đồng thời tôi cũng đã ứng dụng một số giải pháp công nghệ mới trong việc xây
dựng sản phẩm của mình.
6.1 Kết quả về mặt lý thuyết
- Tìm hiểu các khái niệm về portal, xml, xsl, webservice, ajax
- Tìm hiểu cách quản trị hệ thống dotnetnuke ở mức cơ bản
- Tìm hiểu cách xây dựng skin, container trong dotnetnuke
- Tìm hiểu cách cài đặt, sử dụng menu, gói ngôn ngữ cho portal
- Tìm hiểu cách xây dựng module mới trong dotnetnuke
6.2 Kết quả về mặt thực tế
- Tự thiết kế ra một giao diện cho portal chứng khoán
- Xây dựng bộ skin, container cho giao diện đã thiết kế và triển khai sử dụng
- Xây dựng các module ứng dụng giải pháp XML&XSL
- Xây dựng các module ứng dụng webservice
- Xây dựng các module ứng dụng kỹ thuật webspider
- Xây dựng bảng giá trực tuyến trên kỹ thuật ajax.
- Tham gia triển khai ứng dụng cho một số công ty chứng khoán.
6.3 Kết quả về mặt thực tế
- Tìm hiểu sâu hơn về Dotnetnuke
- Test lại và hoàn thiện thêm các module
- Lập ra quy trình xây dựng hệ thống theo chuẩn.
------------------------------------------------------------------------------------------------------------------------------------
May30,2008,Bùi Mạnh Hưng_A07757,BaoCaoChuyenDeTotNghiep.Net
67
7 Tài liệu tham khảo
7.1 Tài liệu tham khảo tiếng anh
- Trang chủ Dotnetnuke:
- Bách khoa toàn thư mở:
- Website về ajax của Microsoft: www.asp.net/ajax
- Tổ chức đi đầu trong tiến trình chuẩn hoá XML
- Web site XML của Microsoft: .com/xml
- Trang về webservice:
7.2 Tài liệu tham khảo tiếng việt
- Trang về công nghệ thông tin
- Diễn đàn tin học www.diendantinhoc.com
- Cộng đồng .Net Việt Nam:
- Trang giới thiệu về XML&XSL khá tốt:
Các file đính kèm theo tài liệu này:
- Unlock-Chuyn 2737873 t7889t nghi7879p Xy d7921ng Portal ch7913ng khoamp225.pdf