Siêu thị PDFTải ngay đi em, trời tối mất

Thư viện tri thức trực tuyến

Kho tài liệu với 50,000+ tài liệu học thuật

© 2023 Siêu thị PDF - Kho tài liệu học thuật hàng đầu Việt Nam

Ajax cho các nhà phát triển Java: Ajax với Direct Web Remoting Sự tuần tự hóa dữ liệu không dễ dàng
MIỄN PHÍ
Số trang
23
Kích thước
325.6 KB
Định dạng
PDF
Lượt xem
1260

Ajax cho các nhà phát triển Java: Ajax với Direct Web Remoting Sự tuần tự hóa dữ liệu không dễ dàng

Nội dung xem thử

Mô tả chi tiết

Ajax cho các nhà phát triển Java: Ajax với Direct Web Remoting

Sự tuần tự hóa dữ liệu không dễ dàng hơn điều này!

Philip McCarthy, Nhà Phát triển, SmartStream Technologies Ltd

Tóm tắt: Thật thú vị như nó có, việc thêm chức năng Ajax cho các ứng dụng của

bạn có thể mang lại nhiều việc khó khăn. Trong bài viết thứ ba của loạt bài Ajax

cho các nhà phát triển Java™ này, Philip McCarthy cho bạn thấy cách sử dụng

Direct Web Remoting (DWR-Truy cập Web trực tiếp từ xa) để trực tiếp đặt các

phương thức JavaBeans vào mã JavaScript của bạn và tự động hóa công việc đòi

hỏi sự nỗ lực của Ajax.

Hiểu biết những điều căn bản về lập trình Ajax (fundamentals of Ajax

programming) là điều cần thiết, nhưng nếu bạn đang xây dựng các giao diện người

dùng (UI) Ajax phức tạp, điều quan trọng là có thể làm việc ở một mức độ trừu

tượng cao hơn. Trong bài viết thứ ba của loạt bài Ajax cho các nhà phát triển Java

này, tôi thêm phần giới thiệu của số trước vào các kỹ thuật tuần tự hóa dữ liệu cho

Ajax (data serialization techniques for Ajax), giới thiệu một kỹ thuật cho phép bạn

tránh những chi tiết thực dụng của việc tuần tự hóa các đối tượng Java.

Trong bài trước, tôi đã chỉ cho bạn cách sử dụng JavaScript Object Notation

(JSON- Ký hiệu đối tượng JavaScript) để tuần tự hóa dữ liệu theo một định dạng

dễ dàng được chuyển đổi thành các đối tượng JavaScript trên máy khách. Với thiết

lập này, bạn có thể gọi các cuộc gọi dịch vụ từ xa khi sử dụng mã JavaScript và

nhận các đồ thị đối tượng JavaScript trả lời, không giống như việc thực hiện một

cuộc gọi thủ tục từ xa. Bây giờ, bạn sẽ tìm hiểu cách tiến thêm một bước nữa,

bằng cách sử dụng một khung công tác chính thức hóa khả năng của bạn để thực

hiện cuộc gọi thủ tục từ xa trên các đối tượng Java phía máy chủ từ mã máy khách

JavaScript.

DWR là một giải pháp được cấp phép Apache, mã nguồn mở gồm các thư viện

Java phía máy chủ, một servlet DWR và các thư viện JavaScript. Trong khi DWR

không chỉ là bộ công cụ Ajax-RPC có sẵn cho nền tảng Java, mà nó còn là một

trong những giải pháp hoàn thiện nhất và cung cấp rất nhiều chức năng có ích.

Xem Tài nguyên để tải về DWR trước khi tiếp tục các ví dụ.

DWR là gì?

Theo các thuật ngữ đơn giản nhất, DWR là một công cụ đặt các phương thức của

các đối tượng Java phía máy chủ theo mã JavaScript. Thực tế, với DWR, bạn có

thể loại bỏ tất cả máy theo chu trình yêu cầu-trả lời của Ajax ra khỏi mã ứng dụng

của bạn. Điều này có nghĩa là mã phía máy khách của bạn không bao giờ phải xử

lý trực tiếp một đối tượng XMLHttpRequest hoặc xử lý trả lời của máy chủ. Bạn

không cần phải viết mã tuần tự hóa đối tượng hoặc sử dụng các công cụ của bên

thứ ba để chuyển các đối tượng của bạn sang XML. Bạn thậm chí không cần phải

viết mã servlet để dàn xếp các yêu cầu Ajax thành các cuộc gọi trên các đối tượng

miền Java của bạn.

DWR được triển khai như là một servlet trong ứng dụng Web của bạn. Được xem

như hộp đen, servlet này thực hiện hai vai trò chính: Thứ nhất, với mỗi lớp được

trưng ra, DWR tự động tạo Javascript để có trong trang Web của bạn. JavaScript

được tạo có chức năng stub để thể hiện các phương thức tương ứng trên lớp Java

và cũng thực hiện các XMLHttpRequest ở hậu trường. Các yêu cầu này được gửi

tới servlet DWR, mà servlet DWR, trong vai trò thứ hai của mình, dịch chuyển

yêu cầu đó thành một cuộc gọi phương thức trên một đối tượng Java phía máy chủ

và gửi các giá trị trả về tới phía máy khách theo dạng trả lời servlet của nó, được

mã hóa thành JavaScript. DWR cũng cung cấp các hàm tiện ích JavaScript giúp

thực hiện các nhiệm vụ UI chung.

Về ví dụ này

Trước khi giải thích DWR chi tiết hơn, tôi sẽ giới thiệu một kịch bản ví dụ đơn

giản. Như trong các bài viết trước đây, tôi sẽ sử dụng một mô hình tối thiểu dựa

trên một cửa hàng trực tuyến, lúc này có một thể hiện sản phẩm cơ bản, một giỏ

mua hàng của người dùng có thể chứa các mục và một đối tượng truy cập dữ liệu

(DAO) để tìm kiếm các chi tiết sản phẩm từ một kho dữ liệu. Lớp Item là một lớp

giống như được sử dụng trong bài viết trước, nhưng nó không còn thực hiện bất kỳ

các phương thức tuần tự hóa nào bằng thủ công. Hình 1 mô tả thiết lập đơn giản

này:

Tải ngay đi em, còn do dự, trời tối mất!