Thứ Sáu, 15 tháng 8, 2014

Introduction to web service


+ Định nghịa :là thành phần trong application,nó cung cấp các nghiệp vụ  , hiển thị dữ liệu trong thế giới web.Web service có 2 thành phần là Client và Server.Trong đó Server chứa các nhiệp vụ logic còn Client có thể sử dụng bất kì công nghệ nào và có thể truy xuất từ bất kì vị trí nào mà có kết nối với Server.



+ Đặc điểm : Webservice được xây dựng dựa trên XML và sử dụng protocol như HTTP hoặc SOAP.


+ Cách hoạt động : 



Sơ đồ trên miêu tả chi tiết các làm việc của 1 Webservice.Khi clients gọi đến server(Webservice) trên môi trường internet sử dụng giao thức SOAP, SOAP sẽ phân tích để xem client muốn gì.SOAP trả về dư liệu cho client dưới dạng XML.

Nhận xét : 
+ Sử dụng giao thức mở.Các dữ liệu được định dạng trên văn bản giúp việc code dễ dàng hơn
+ Tạo mối quan hệ tương tác lẫn nhau 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.
+ Sử dụng XML để giao tiếp nên không phụ thuộc vào nền tảng.

Chủ Nhật, 10 tháng 8, 2014

Use Xpath

Làm module 9 :
Yêu cầu : Trong một tổ chức, năm trăm nhân viên đang làm việc. Trong đó có một số người học nghề. Các đơn vị giao hàng đầu của tổ chức đó đã cho bạn những trách nhiệm phát triển một phần mềm, mà bạn có thể tìm thấy các chi tiết của người học nghề. Sử dụng các tập tin dưới đây để phát triển ứng dụng:
1. EmployeeDatabase.xml tập tin chứa dữ liệu của tất cả các nhân viên.
2 Sử dụng XPath biểu thức.
Trong ứng dụng này, người học nghề được định nghĩa trong không gian tên thực tập sinh trong khi tất cả các nhân viên khác được định nghĩa trong không gian tên mặc định. Ứng dụng này sẽ đếm số lượng người học nghề và in chi tiết của họ trên bàn điều khiển của người dùng.

Xử lý vấn đề :Ta viết file EmployeeDatabase.xml để khai báo thông tin của nhận viên trong công ti :

Ở class main ta khai báo hàm kết nối với XML kết nối với NamespaceContext bằng đoạn code sau :

Sau đó ta sử dụng XPath để đọc các phần tử của lớp emplyee trong file XML :
Chạy và thu được kết quả :

Thứ Sáu, 8 tháng 8, 2014

Apply XQuery

Mục tiêu bài : Read all usernames in file tomcat-users.xml

Giải quyết :

Đầu tiên ta down và sử dụng thư viện Nux 1.6 ở link sau đây : http://www.javalobby.org/java/forums/t59332.html
Sau đó lấy file XML tomcat user : 
Sau đó khai báo code hàm Main : 

Lưu ý ở đây ta phải truy vấn vào file xml , dùng vòng for cho chạy từ đầu đến cuối lấy ra vị trị của thẻ user

Kết quả thu được : 
Nhận xét : 
-XQuery có thể transfrom dữ liệu từ XML sang XHTML rất dễ dàng
-Sử dụng XQuery làm cho việc lấy dữ liệu từ file XML lên Xpath khá khó khăn

Thứ Năm, 7 tháng 8, 2014

Practice Assignment Module 6 Use TreeWalker to read xml file

Yêu cầu : làm lại Module 6 nhưng sử dụng TreeWalker để đọc file XML

Giải quyết :
Tạo new Project sau đó tôi sẽ sử dụng file XML của bài module 6 đã làm trước đây :

Bài toán yêu cầu sử dụng DOM tree để đọc file XML  nên ta tạo class traverseNode có nội dung sau :

Sau đó code chạy trương trình liên kết với class traverseNode vừa tạo :

Chạy và ta được kết quả : 

Nhận xét : 
So với cách làm trước đây, việc sử dụng TreeWalker đều thể hiện ra được chi tiết 1 cây tài liệu.Tuy nhiên TreeWalker  duy trì được các mối quan hệ thứ bậc của cây con và cho phép chuyển hướng cho hệ thông phân cấp còn NodeIterator thì trình bày cây tài liệu theo giao diện phẳng và các thứ tự được dựa theo thứ tự tài liệu do đó tùy theo mục đích mà ta có thể sử dụng 2 cách đọc dữ liệu XML khác nhau.

Thứ Tư, 6 tháng 8, 2014

Do Practice Assignment Module 6 using NodeIterator

Yêu cầu : Tạo một tài liệu XML có chứa các chi tiết về nhân viên của một tổ chức. Sau đó tạo ra một ứng dụng, trong đó sử dụng các phân tích cú pháp DOM để phân tích các tài liệu XML thành một cây DOM và đi qua qua nó. Ứng dụng này nên thực hiện giao diện TreeWalker để đi qua tất cả các nút có trong cây DOM và in giá trị của các nút.

Giải quyết vấn đề : 
dầu tiên ta tạo XML : 

Sau đó code action : 

Kết quả thu được : 
 

Nhận xét
- có thể chọn lọc các nội dung của tài liệu để hiện thị rõ ràng

Describe overview of DOM Level 2

Định nghĩa : -DOM level 2 được phát triển từ DOM 1 và nó dựa trên các nền tảng interface của DOM 1
Module DOM 2: 
DOM 2 được dựa trên 6 module là : Range ,Event , view , html ,Style ,Traversal .


Module chính của Dom2 được định nghĩa là một bộ các objects và các class để có thể truy xuất và  thao tác với nội dung xml được quét.
Các Objects trong tài liệu dom này là các thể hiển của các module khác nhau trong nó.

*Những interface trong Core và Range cần chú ý.

Event module:
_ được xây dựng dựa trên module level 1 và không bắt buộc phải có, nó giúp chúng ta đăng kí và định nghĩa thêm những luông event khác nhau.
Khi chúng ta bắt đầu đọc thẻ HTML thì ta đã bắt đầu 1 event vào khi kết thúc đọc thì là kết thúc 1 event.

Nhận xét :
Ta làm việc với các module của DOM 2 dễ dàng do cấu trúc không khác j với DOM 1

DOM 2 trang bị các công cụ thực sự mạnh mẽ trong việc truy xuất, đọc và làm việc với tài liệu XML.

Chủ Nhật, 3 tháng 8, 2014

Manipulate DOM tree

Module 1 và 4.
Module 1 :  Tạo một danh sách học sinh student.xml. Viết chương trình cho một giáo viên để đếm số học sinh trong một lớp học. Tạo một DOM treefor phân tích student.xml. Khai báo countStudents () chức năng đệ quy đếm số lượng sinh viên các nút cho đến khi đạt đến nút cuối cùng trong tài liệu theXML.

Giải quyết vấn đề : 
Đầu tiên tôi viết file XML có tên là student : 



Sau đó code ham main : 


Kết quả thu được :


Module 1 : Tạo một tài liệu ứng dụng phân tích cú pháp XML .Ứng dụng này nên sử dụng một Dom Parser phân tích một tài liệu XML có chứa tên của người lao động trong organiaztion, ABC Apparels Ltd, và sau đó in tên của tất cả các nhân viên.

Giải quyết vấn đề : 
Tạo file XML : 

Ở hàm main ta viết code :


Kết quả thu được : 

Nhận xét : 
- Code DOM khá tương đồng với SAX nên dễ hiểu và đọc 
- Đọc các thẻ trong XML nhanh và dễ dàng hơn SAX do ở SAX ta cần khai báo thêm  class extend SAXException và sử dung phương thức getValue trong startElenment.