在 GWT 客户端代码中使用 Gson 库

发布于 2024-08-20 15:57:07 字数 211 浏览 9 评论 0原文

我目前正在 eclipse 中使用 GWT 2.0 用 java 编写一个 Web 应用程序。 我想知道是否有办法在 GWT 应用程序的 Gson 库 中使用 < em>客户端代码。

如果有办法 - 请告诉我如何...

谢谢!

I'm currently writing a web application in java using GWT 2.0 in eclipse.
I wanted to know if there is a way to use Gson library in a GWT application's client code.

and if there is a way - please tell me how...

Thanks!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(5

提笔书几行 2024-08-27 15:57:07

Gson 使用 GWT 不支持的 Java 功能,例如反射。因此不可能在 GWT 客户端代码中使用 Gson。

Gson uses Java features that are not supported in GWT such as reflection. Thus it is not possible to use Gson in GWT client side code.

过度放纵 2024-08-27 15:57:07

不完全是你写的,但我猜你的意思是如何在 GWT 代码中序列化/反序列化 JSON?

在 GWT 2.1.1 中,您可以使用 GWT AutoBean 框架

请参阅底部这篇文章有这个神奇的代码...

String serializeToJson(Person person) 
{
    // Retrieve the AutoBean controller
    AutoBean<Person> bean = AutoBeanUtils.getAutoBean(person);
    return AutoBeanCodex.encode(bean).getPayload();
}

Person deserializeFromJson(String json) 
{     
    AutoBean<Person> bean = AutoBeanCodex.decode(myFactory, Person.class, json);     
    return bean.as();   
} 

即使对于继承 Person 的实例,serializeToJson() 对我来说也很好,但我没有尝试 deserializeFromJson...

Not exactly what you wrote but I guess that what you meant was how to serialize/deserialize JSON in GWT code?

In GWT 2.1.1 you can use GWT AutoBean framework

See there at the bottom of the article it has this magic code ...

String serializeToJson(Person person) 
{
    // Retrieve the AutoBean controller
    AutoBean<Person> bean = AutoBeanUtils.getAutoBean(person);
    return AutoBeanCodex.encode(bean).getPayload();
}

Person deserializeFromJson(String json) 
{     
    AutoBean<Person> bean = AutoBeanCodex.decode(myFactory, Person.class, json);     
    return bean.as();   
} 

the serializeToJson() woks fine for me even with instances that are inherit Person but I did not try the deserializeFromJson...

笑红尘 2024-08-27 15:57:07

(如果您愿意,请随意增强我的帖子)

目前(2015-02-07)这是不可能的,尽管我非常喜欢 Gson 并且只想为共享代码提供一种解决方案:-/ ,但还有一些其他库可用(我自己只知道 AutoBeans 和 Gson,并快速浏览了一下 Piriti):(

有些库同时支持 XML 和 JSON(反)序列化,或仅支持其中之一)

(*) 来自 GWT 项目本身

比较:

(feel free to enhance my post if you like)

currently (2015-02-07) it is not possible although I like Gson very much and would like to have only one solution for shared code :-/ , but there are some other libraries available (I only know AutoBeans and Gson myself and had a quick look at Piriti):

(some support both or only one of XML and JSON (de)serialization)

(*) from GWT project itself

Comparisons:

单调的奢华 2024-08-27 15:57:07

在我们的 GWT 项目中,我们使用 piriti
http://code.google.com/p/piriti/

就像魅力一样:- )

In our GWT project we use piriti:
http://code.google.com/p/piriti/

Works like a charm :-)

当梦初醒 2024-08-27 15:57:07

我编写了一个允许将 GWT 与 Gson 一起使用的库,您可以在此处下载并使用它。

I have write a library that allows using GWT with Gson, you can download here and enjoy it.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文