2010-06-12 55 views
5

Tôi đang tìm thư viện JSON hoặc YAML siêu đơn giản (không đặc biệt phiền toái) được viết bằng Java và có thể được sử dụng trong cả GWT trên máy khách, và ở dạng Java ban đầu của nó trên máy chủ.Mã hóa JSON hoặc YAML trong GWT/Java trên cả máy khách và máy chủ

Điều tôi đang cố làm là: Tôi có các mô hình của mình, được chia sẻ giữa máy khách và máy chủ, và đây là nguồn trao đổi dữ liệu chính. Tôi muốn thiết kế dịch vụ web ở mức đơn giản nhất có thể và quyết định sử dụng phương pháp RESTful.

Vấn đề của tôi là tôi biết ứng dụng của chúng tôi sẽ phát triển đáng kể trong tương lai và viết tất cả các getters, setters, serialization, factories, vv bằng tay điền vào tôi với nỗi sợ hãi tuyệt đối. Vì vậy, để tránh nó, tôi quyết định triển khai các chú thích để theo dõi các thuộc tính trên các mô hình.

Lý do tôi không thể tuần tự hóa mọi thứ một cách trực tiếp, bằng cách sử dụng riêng của GWT hoặc một hoạt động thông qua sự phản chiếu, là vì chúng ta cần một số lượng logic nhất định trong quá trình tuần tự hóa. I E. liệu các tham chiếu đến các mô hình khác có được tuần tự hóa trong quá trình tuần tự hóa mô hình gốc hay không hoặc liệu một ID có được thông qua hay không và những thứ đơn giản như thế. Sau đó tôi đã viết một bộ xử lý chú thích để xử lý trước các mô hình được chia sẻ của tôi và tạo ra một lớp thực hiện với tất cả các getters, setters, serialization, lazy-loading, v.v.

Để tạo một câu chuyện dài, tôi cần một số loại đơn giản Thư viện YAML hoặc JSON, cho phép tôi mã hóa và giải mã thủ công, vì vậy tôi có thể tạo mã này thông qua bộ xử lý chú thích của mình. Tôi đã có một cái nhìn xung quanh interwebs, nhưng mỗi một tôi chạy vào hỗ trợ một số phản ánh đó, trong khi tất cả tiền phạt và dandy, làm cho nó khá nhiều vô dụng cho GWT. Và trong trường hợp thư viện JSON của GWT, nó sử dụng JSNI cho mục đích tốc độ, làm cho nó trở thành phía máy chủ vô dụng.

Một giải pháp tôi đã suy nghĩ về việc viết văn bản hai bộ phương pháp tuần tự hóa trên các mô hình, một cho khách hàng và một cho máy chủ, nhưng tôi không muốn làm điều đó.

Ngoài ra, tôi khá mới với GWT, và mặc dù tôi đã làm rất nhiều Java, nó đã trở lại trong 1,2 ngày, do đó, nó là một chút gỉ. Vì vậy, nếu bạn nghĩ rằng tôi đang đi về vấn đề này hoàn toàn sai, tôi mở cửa cho các đề xuất.

Trả lời

4

Bạn đã xem xét itemscript chưa? Một số trích đoạn từ mô tả trên trang web:

  • Thư viện JSON JSON chuẩn của nền tảng chéo, với các lớp, trình phân tích cú pháp và tiện ích thuận tiện đa nền tảng.
  • API kết nối RESTful để truy xuất dữ liệu (JSON, văn bản & tệp nhị phân nhỏ) qua nhiều giao thức khác nhau.
  • Có thể sử dụng cùng một API JSON trong cả Java chuẩn và Java GWT.
+0

Bạn thưa Ngài, là một phao cứu sinh. Có vẻ như đây chính là điều mà bác sĩ đã ra lệnh. +1 – KennethJ

Các vấn đề liên quan