Tài liệu Báo cáo kết thúc dịch vụ web

  • Số trang: 39 |
  • Loại file: DOC |
  • Lượt xem: 473 |
  • Lượt tải: 0
thucaothi349968

Tham gia: 25/12/2016

Mô tả:

Báo cáo kết thúc dịch vụ web
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ế 1 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ài liệ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ạng thô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ụng cá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ựng mộ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ẩn của SOAP hoặc XML-RPC và có thể tương tác với nhau trong một thể thống nhấ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ăn bản và định nghĩa cấu trúc của thông tin.  Ví dụ: 2  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 ứng dụ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ân tá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 trong SOAP message.  SOAP header được sử dụng để cho các ứng dụng quyết định việc xử lý SOAP message như thế nào.  Ví dụ: ? 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.  Ví dụ: 4 4. UDDI Để có thể sử dụng các dịch vụ, trước tiên client phải tìm dịch vụ, ghi nhận thông tin về cách sử dụng và biết được đối tượng nào cung cấp dịch vụ. UDDI định nghĩa một số thành phần cho biết các thông tin này, cho phép các client truy tìm và nhận những thông tin được yêu cầu khi sử dụng dịch vụ Web. Cấu trúc UDDI :  Trang trắng - White pages: chứa thông tin liên hệ và các định dạng chính yếu của dịch vụ Web, chẳng hạn tên giao dịch, địa chỉ, thông tin nhận dạng… Những thô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ại khác nhau. Những thông tin này cho phép các đối tượng thấy được dịch vụ Web theo 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ức nă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áp  kiế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ùng  Java, 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ằng tài liệu, dễ dàng sử dụng, phù hợp với những thực hành thông dụng trong công nghệ phần mềm. 2. Các module chính.  Spring đóng vai trò là tầng business. 5  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. 6  2.2. móc nối sự phụ thuộc giữa các đối tượng trong file cấu hình. Spring Context/Application Context.  Phía trên của Core package là Context package - cung cấp cách để truy  2.3. Khái niệm cơ bản là BeanFactory - cài đặt factory pattern cho phép bạn cập đối tượng. Context package kết thừa các đặc tính từ bean package và thêm vào chức năng đa ngôn ngữ (I18N), truyền sự kiện, resource-loading,... 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ào Spring framework thông qua cấu hình của nó. Spring AOP module cung cấp các dịch vụ quản lý giao dịch cho các đối tượng trong bất kỳ ứng dụng nào sử dụng Spring. Với Spring AOP chúng ta có thể tích hợp declarative transaction management vào trong ứng dụng mà không cần dựa vào EJB  component. 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ạnh khác). 2.4. Spring DAO.  DAO package cung cấp cho tầng JDBC, bỏ bớt những coding dài dòng của JDBC và chuyển đổi mã lỗi được xác định bởi database vendor. JDBC package cung cấp cách lập trình tốt như declarative transaction management.  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 vendor của database. Tầng exception đơn giản điều khiển lỗi và giảm khối lượng code mà chúng ta cần viết như mở và đóng kết nối. Module này cũng cung cấp các dịch vụ quản lý giao dịch cho các đối tượng trong ứng dụng Spring. 2.5. Spring ORM.  ORM package cung cấp tầng tích hợp với object-relational mapping API bao gồm: JDO, Hibernate, iBatis. 7  Sử dụng ORM package bạn có thể sử dụng tất cả các object-relational mapping đó kết hợp với tất cả các đặc tính của Spring như declarative 2.6. transaction management. Spring Web module.  Spring Web package cung cấp đặc tính của web như: chức năng fileupload, khởi tạo IoC container sử dụng trình lắng nghe serlvet và weboriented application context.  Nằm trên application context module, cung cấp context cho các ứng dụng web. Spring cũng hỗ trợ tích hợp với Struts, JSF và Webwork. Web module cũng làm giảm bớt các công việc điều khiển nhiều request và gắn 2.7. các tham số của request vào các đối tượng domain. Spring MVC Framework.  Spring Framework là một ứng dụng mã nguồn mở phổ biến cho Java EE phát triển dễ dàng hơn. Nó bao gồm một container, một framework cho các thành phần quản lý, và một bộ các snap-in dịch vụ cho các giao diện người dùng web, giao dịch,…. Một phần của Spring Framework là Spring Web 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ây dựng các ứng dụng Web. MVC framework thì cấu hình thông qua giao diệ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 8 -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 : 9 -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ừ “org.springframework.web.servlet.DispatcherServlet” Ánh xạ tất cả requests có mẫu URL khớp *.htm cho lớp DispatcherServlet của Spring này -Trong file dispatcher-servlet.xml : Khi DispatcherServlet nhận một request khớp *.htm như là index.htm nó sẽ tìm bên trong urlMapping này một controller cung cấp cho request đó. 10 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() 11 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 12 helloView.jsp Chạy chương trình 13 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ề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. 14  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. - 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. 15 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 Là một chuẩn mở Độc lập với ngôn ngữ DOM và SAX là tập các giao diện mở, độc lập với ngôn ngữ Sử dụng cho web Biểu diễn XML XML gồm 3 thành phẩn là thẻ, phần tử và thuộc tính.  Thẻ gồm 3 loại là thẻ mở, thẻ đóng và thẻ chứa phần tử rỗng 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ả 16 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   Ví dụ : Nguyen Thien Van D08CNPM1 19/02/1990 Xử lý Hướng dẫn xử lí cung cấp 1 đường dẫn để hướng dẫn cho chương trình máy tính hoặc ứng dụng . Chúng nằm trong tag “”. Ví dụ Câu 2: Tìm hiểu về RDF 17 - 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ướng củ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 Biểu diễn XML: 9 9 18 5 5 5 5 Biểu diễn Graph Họ tên Trí tuệ nhân tạo Công nghệ phần mêm Linh 9 9 19 Hùng 5 5 Lan 5 5 Biểu diễn XML: 9 9 5 5 5 5 20
- Xem thêm -