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

Báo cáo kết thúc Dịch vụ web

39 467 0

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

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

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 39
Dung lượng 1,1 MB

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

Nội dung

Báo cáo kết thúc Dịch vụ web

Trang 1

Học viện công nghệ bưu chính viễn thông

Khoa công nghệ thông tin

Báo cáo kết thúc: Dịch vụ web

GVDH: Trần Đình Quế

Trang 2

Bài tập môn hướng dịch vụ (V1)

Câu 1: Lí do phát triển dịch vụ WEB :

- Dịch vụ Web cho chúng ta phương pháp tiếp cận để xây dựng và triển khai việc tính toán phân tán nhằm tăng hiệu quả làm việc của lập trình viên, quản trị viên và người sử dụng

- Hầu hết các nhà nghiên cứu và các nhà chuyên môn cho rằng web hiện nay, ngoài những thành công ra còn có 1 số hạn chế : thông tin trên web ko được tổchức, có thể ko chính xác và ko phù hợp, tồi tệ hơn là ko thể hiểu đc Công nghệ hiện tại khó xác định được vị trí thông tin,(bao gồm cả những kết quả ko liên quan) và sự trả về kém( thiếu thông tin liên quan) Thông tin là tĩnh và web thường ko có các hành động kết nối chương trình tốt Chỉ có hành động lập trình khi 1 form gửi tới 1 kịch bản đang chạy, được định vị bởi URL, nhưng hành động và giao diện của kịch bản là cứng nhắc, và công việc xây dựng và duy trì các ứng dụng phân tán là phức tạp

Câu 2: Các công nghệ dịch vụ web :

1 XML (eXtensible Markup Language)

 Là một chuẩn mở do W3C đưa ra cho cách thức mô tả dữ liệu, nó được sửdụng để định nghĩa các thành phần dữ liệu trên trang web và cho những tàiliệu B2B Về hình thức, XML hoàn toàn có cấu trúc thẻ giống như ngôn ngữHTML nhưng HTML định nghĩa thành phần được hiển thị như thế nào thìXML lại định nghĩa những thành phần đó chứa cái gì Với XML, các thẻ cóthể được lập trình viên tự tạo ra trên mỗi trang web và được chọn là định dạngthông điệp chuẩn bởi tính phổ biến và hiệu quả mã nguồn mở

 Do dịch vụ Web là sự kết hợp của nhiều thành phần khác nhau nên nó sử dụngcác tính năng và đặc trưng của các thành phần đó để giao tiếp XML là công

cụ chính để giải quyết vấn đề này và là kiến trúc nền tảng cho việc xây dựngmột dịch vụ Web, tất cả dữ liệu sẽ được chuyển sang định dạng thẻ XML Khi

đó, các thông tin mã hóa sẽ hoàn toàn phù hợp với các thông tin theo chuẩncủa SOAP hoặc XML-RPC và có thể tương tác với nhau trong một thể thốngnhất

 Đã trở thành chuẩn cho việc mô tả dữ liệu được trao đổi trên nền web

 Là ngôn ngữ đánh dấu, sử dụng các thẻ (tag) để đánh dấu nội dung của vănbản và định nghĩa cấu trúc của thông tin

Trang 3

<element name="Address" type="VNAddress"/>

 Tài liệu XML phải tuân theo một cấu trúc chuẩn (Well-formed)

 Tài liệu XML thường được kết hợp với lược đồ XML (XML Schema) để quyđịnh cú pháp và cấu trúc các thẻ được sử dụng trong tài liệu XML

 Do có các tính chất trên nên tài liệu XML có thể dễ dàng được xử lý bởi các ứngdụng và XML là ngôn ngữ dữ liệu cho Web Service

2 SOAP (Simple Object Access Protocol)

 Là giao thức cấp cao dựa vào XML để trao đổi thông tin trong các hệ thống phântán

 SOAP cung cấp một định dạng chung cho các dữ liệu được trao đổi giữa client vàserver

 Đơn vị trao đổi thông tin cơ bản của SOAP là 1 SOAP message

 SOAP Message chính là một SOAP Envelope trong đó chứa SOAP Body và cóthể chứa SOAP Header

 SOAP Envelope xác định XML Namespace và loại encoding được sử dụng trongSOAP message

 SOAP header được sử dụng để cho các ứng dụng quyết định việc xử lý SOAPmessage như thế nào

3 WSDL (Web Service Definition Language)

 Client và server giao tiếp với nhau thông qua việc gửi các SOAP message WSDLđịnh nghĩa ra nội dung và câu trúc của SOAP message đó

 WSDL là tài liệu XML đùng để mô tả interface của Web service

 Tài liệu WSDL định nghĩa một lược đồ XML cho việc mô tả web service

Trang 5

• Trang trắng - White pages: chứa thông tin liên hệ và các định dạng chính yếu củadịch vụ Web, chẳng hạn tên giao dịch, địa chỉ, thông tin nhận dạng… Nhữngthông tin này cho phép các đối tượng khác xác định được dịch vụ.

• Trang vàng - Yellow pages: chứa thông tin mô tả dịch vụ Web theo những loạikhác nhau Những thông tin này cho phép các đối tượng thấy được dịch vụ Webtheo từng loại với nó

• Trang xanh - Green pages: chứa thông tin kỹ thuật mô tả các hành vi và các chứcnăng của dịch vụ Web

• Loại dịch vụ - tModel: chứa các thông tin về loại dịch vụ được sử dụng

Những thông tin về dịch vụ Web được sử dụng và công bố lên mạng sử dụng giao thức này Nó sẽ kích hoạt các ứng dụng để tìm kiếm thông tin của dịch vụ Web khác nhằm xácđịnh xem dịch vụ nào sẽ cần đến nó

Câu 3: Tìm hiểu về Spring

1 Giới thiệu

Spring Framework, hay ngắn hơn là Spring, là một framework mã

nguồn mở được viết bằng Java Nó được xem như là một giải phápkiến trúc tốt nhất của Java EE hiện nay

• Theo thiết kế, bộ khung hình này giải phóng lập trình viên dùngJava, cho phép họ nhiều quyền tự do hơn

• Đồng thời cung cấp một giải pháp tiện lợi, đầy đủ dẫn chứng bằngtài liệu, dễ dàng sử dụng, phù hợp với những thực hành thông dụng

Trang 6

− Spring được tổ chức thành 7 modules :

2.1 Core Container

• Core package là phần cơ bản nhất của framework, cung cấp những đặc

tính IoC (Inversion of Control: Khung chứa đảo ngược khống chế) vàDependency Injection

Trang 7

• Khái niệm cơ bản là BeanFactory - cài đặt factory pattern cho phép bạnmóc nối sự phụ thuộc giữa các đối tượng trong file cấu hình

2.2 Spring Context/Application Context

• Phía trên của Core package là Context package - cung cấp cách để truycập đối tượng

• Context package kết thừa các đặc tính từ bean package và thêm vào chứcnăng đa ngôn ngữ (I18N), truyền sự kiện, resource-loading,

2.3 Spring AOP (Aspect Oriented Programming)

• Spring AOP module tích hợp chức năng lập trình hướng khía cạnh vàoSpring framework thông qua cấu hình của nó Spring AOP module cungcấp các dịch vụ quản lý giao dịch cho các đối tượng trong bất kỳ ứng dụngnào sử dụng Spring Với Spring AOP chúng ta có thể tích hợp declarativetransaction management vào trong ứng dụng mà không cần dựa vào EJBcomponent

• Spring AOP module cũng đưa lập trình metadata vào trong Spring Sửdụng cái này chúng ta có thể thêm annotation (chú thích) vào source code

để hướng dẫn Spring và làm thế nào để liên hệ với aspect (Khía cạnhkhác)

2.4 Spring DAO

•DAO package cung cấp cho tầng JDBC, bỏ bớt những coding dài dòngcủa JDBC và chuyển đổi mã lỗi được xác định bởi database vendor JDBCpackage cung cấp cách lập trình tốt như declarative transactionmanagement

•Tầng JDBC và DAO đưa ra một cây phân cấp exception để quản lý kết nốiđến database, điều khiển exception và thông báo lỗi được ném bởi vendorcủa database Tầng exception đơn giản điều khiển lỗi và giảm khối lượngcode mà chúng ta cần viết như mở và đóng kết nối Module này cũng cungcấp các dịch vụ quản lý giao dịch cho các đối tượng trong ứng dụng Spring

Trang 8

•Sử dụng ORM package bạn có thể sử dụng tất cả các object-relationalmapping đó kết hợp với tất cả các đặc tính của Spring như declarativetransaction management.

2.6 Spring Web module

•Spring Web package cung cấp đặc tính của web như: chức năng upload, khởi tạo IoC container sử dụng trình lắng nghe serlvet và web-oriented application context

file-•Nằm trên application context module, cung cấp context cho các ứng dụngweb Spring cũng hỗ trợ tích hợp với Struts, JSF và Webwork Webmodule cũng làm giảm bớt các công việc điều khiển nhiều request và gắncác tham số của request vào các đối tượng domain

2.7 Spring MVC Framework

•Spring Framework là một ứng dụng mã nguồn mở phổ biến cho Java EEphát triển dễ dàng hơn Nó bao gồm một container, một framework chocác thành phần quản lý, và một bộ các snap-in dịch vụ cho các giao diệnngười dùng web, giao dịch,… Một phần của Spring Framework là SpringWeb MVC, một mô hình MVC mở rộng để tạo các ứng dụng web

•MVC Framework thì cài đặt đầy đủ đặc tính của MVC pattern để xâydựng các ứng dụng Web MVC framework thì cấu hình thông qua giaodiện và chứa được một số kỹ thuật view bao gồm: JSP, Velocity, Tiles vàgeneration of PDF và Excel file Spring MVC framework cung cấp sựphân biệt rõ ràng giữa domain model và web form

\Câu 5: Ví dụ về Spring

Trang 9

-Project được tạo

Các file trong project

-Trong file web.xml, ta thấy có dòng thiết lập chỉ trang chủ của ứng dụng là redirect.jsp như sau ở cuối file :

Trang 10

-Trong file redirect.jsp chỉ làm duy nhất một việc đó là redirect tất cả những request gởi đến tới index.htm :

-Cũng trong file web.xml ta thấy dòng khai báo và ánh xạ sau :

Servlet dispatcher là lớp kế thừa từ

Trang 11

viewResolver nhận vào Logical view name từ indexController và tìm trong thư mục

“/WEB.INF/jsp/” trang jsp có tên tương ứng

indexController là lớp kế thừa

từ“org.springframework.web.servlet.mvc.ParameterizableViewController” đây là lớp được cung cấp bởi Spring và nó đơn giản sẽ trả về 1 view

Ứng dụng Hello sử dụng framework Spring

1 Tạo file java HelloService.java

Cài đặt phương thức sayHello

2 Tạo file Name.java

3 Tạo file HelloController.java

Cài đặt phương thức OnSubmit()

Trang 12

trả về ModelAndView

4 Vào file applicationContext.xml để đăng ký HelloService Để đang ký ta thêm dòng code sau :

5 Đăng ký HelloController trong file dispatcher-servlet.xml :

6 Đặt tên view khi hiển thị và khi submit thành công trong file HelloController.java

7 Tạo 2 file JSP: nameView và helloView

nameview.jsp

Trang 13

Chạy chương trình

Trang 14

Kết quả :

Câu 6: Những ưu điểm, nhược điểm WebService :

Ưu điểm của dịch vụ web

- 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ềmkhá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ănbả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ếntrì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 doanhnghiệp khác

Trang 15

 Nhược điểm của dịch vụ web

- 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, giaodiệ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ếucá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

Trang 16

Tìm hiểu về RDF, RDFs

Câu 1: Tìm hiểu về XML

- XML, hoặc Extensible Markup Language (ngôn ngữ đánh dấu mở rộng), là một ngôn ngữ đánh dấu mà bạn có thể sử dụng để tạo ra thẻ riêng của mình Nó được tạo nên bởi Liên minh mạng toàn cầu nhằm khắc phục những hạn chế của HTML - ngôn ngữ đánh dấu siêu văn bản, là cơ sở của mọi trang Web Giống như HTML, XML cũng được dựa trên SGML – Standard Generalized Markup Language

Tại sao chúng ta cần XML?

-Con người chúng ta đều có trí thông minh để hiểu được ý nghĩa và mục đích của hầu hết các văn bản Tuy nhiên một cỗ máy lại không như thế Khi các thẻ trong tài liệu này chỉ cho một trình duyệt cách thể hiện thông tin, thì bản thân các thẻ lại không chỉ cho trình

duyệt thông tin đó là gì Bạn và tôi đều biết đó là một địa chỉ, nhưng máy móc thì không

thế

-XML là ngôn ngữ có khả năng mở rộng khác với HTML: XML cho phép người sử dụng định nghĩa thẻ và cấu trúc trong dữ liệu của mình

XML mang lại lợi ích bởi những đặc điểm sau :

XML có cấu trúc nên dễ học, dễ dung

o Thẻ mở: Xác định các kiểu của 1 phần tử và thuộc tính đặc tả có thể

o Thẻ đóng : Xác định kiểu của 1 phần tử mà thẻ này là kết thúc Ko giống như thẻ mở, thẻ đóng ko chứa các thuộc tính đặc tả

Trang 17

o Thẻ chứa phần tử rỗng: Giống như thẻ mở, nó chứa các thuộc tính đặc tả nhưng ko cần thẻ đóng Biểu thị phần tử là rỗng, chú ý là có tag “/” trước khi kết thúc

• Phần tử

o là thẻ mở, thẻ đóng và những gì giữa chúng

o Tên của 1 phần tử đc thể hiện bằng các kí tự nằm trong thẻ

o Thẻ bắt đầu và kết thúc miêu tả dữ liệu trong phạm vi của nó, gọi là dữ liệu của 1 phần tử

• Thuộc tính là một cặp giá trị tên trong thẻ bắt đầu của một phần tử

o Thường mô tả phần tử XML hoặc cung cấp thêm những thông tin về phần tử

o Một phần tử có thể có 1 hoặc nhiều thuộc tính Và 1 thuộc tính là 1 cặp tên – giá trị phân cách nhau bằng 1 dấu =

o Thường dữ liệu thuộc tính cần cho bộ phân tích XML hơn là cho người dùng

Trang 18

- Khái niệm RDF(Resource Description Framework) và vai trò củ a RDF trong

kiến trúc của Semantic Web Có thể nói, RDF chính là nền tảng của Semantic Web, là linh h ồn củ a Semantic Web RDF mô tả siêu dữ liệu về các tài nguyên trên Web RDF dựa trên cú pháp XML tuy nhiên XML chỉ mô tả dữ liệu, RDF còn có khả năng biểu diễn ngữ nghĩa giữa chúng thông qua các tài nguyên được định danh bằng URI

- RDF triple:

Mỗi một phát biểu (subject, predicate, object) còn gọi là một bộ ba ( triple)

- Đồ thị RDF ( RDF Graph)

Tập các triple hợp lại tạo thành đồ thị RDF(RDF Graph) Các node trong đồ

thị có thể là các subject và object trong triple và các cung (arc)trong đồ thị là các predicate Cho nên một triple còn có thể được mô tả dưới dạng node-arc-node Hướngcủa đồ thị rất quan trọng Cung của đồ thị luôn bắt đầu từ subject đến object

Hình trên là mối quan hệ giữa các thành phần trong triple

Trang 19

Biểu diễn Graph

Họ tên Trí tuệ nhân tạo Công nghệ phần mêm

Trang 22

B2: Tại tab OWLClasses Tạo các class và các subclass như hình :

B3: Tại tab Property tạo các property

maSV : Datatype Property có Domain : SinhVien;Range: int

tenSV : Datatype Property có Domain:SinhVien; Range:string

soDiem1: Datatype Property có Domain : Diem;Range: int

Trang 23

Tạo các Object property:

- coBangDiem: Domain: SinhVien Range: BangDiem

- cuaSinhVien: là property ngược của coBangDiem

- coDiem: Domain: BangDiem ; Range:Diem

- cuaBangDiem là property ngược của coDiem

- cuaMonHoc : Domain: Diem Range :MonHoc

- mhcoDiem là property ngược của cuaMonHoc

Trang 24

B4: Tạo các giới hạn

Tại tab OWLClasses tạo các giới hạn sau

coBangDiem: exactly 1 (1 SinhVien có 1 BangDiem )

Tại class Diem tạo giới hạn cho thuộc tính cuaMonHoc là exactly 1(Mỗi 1 điểm cho 1

Trang 26

cuaMonHoc: CNPM_17

soDiem: 9

- ở thực thể CNPM_17 có

Như vậy, ta đã biểu diễn như sau :

SinhVien (có mã 9,tên Văn ) có BangDiem_21BangDiem_21 có Diem_18

Diem_18 của môn học CNPM_17 có số điểm 9

Bài tập kết thúc môn học

Trang 27

Câu 1:

Lý do phát triển dịch vụ

Lý do phát triển web ngữ nghĩa

Lý do phát triển dịch vụ web ngữ nghĩa

Trả lời

1 Lý do phát triển dịch vụ web

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.

 Ưu điểm của dịch vụ web :

• 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.

 Nhược điểm của dịch vụ web :

• 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.

Ngày đăng: 15/07/2015, 15:16

HÌNH ẢNH LIÊN QUAN

Hình trên là mối quan hệ giữa các thành phần trong triple - Báo cáo kết thúc Dịch vụ web
Hình tr ên là mối quan hệ giữa các thành phần trong triple (Trang 18)
Hình sau biểu diễn kiến trúc tiến hóa web ngữ nghĩa theo đề xuất Berners Lee - Báo cáo kết thúc Dịch vụ web
Hình sau biểu diễn kiến trúc tiến hóa web ngữ nghĩa theo đề xuất Berners Lee (Trang 31)

TỪ KHÓA LIÊN QUAN

TRÍCH ĐOẠN

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

TÀI LIỆU LIÊN QUAN

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

w