java json对象模型_直接从Java中的模型类创建JSON对象

我的项目中有一些模型类,例如Customer,Product等等,它们具有多个字段及其setter-getter方法,我需要 通过套接字

与客户端和服务器之间 来回交换这些类的对象作为JSONObject 。

有什么方法可以JSONObject直接从模型类的对象创建,以使对象的字段成为键,而该模型类对象的值成为此JSONObject的值。

例:

Customer c = new Customer();

c.setName("Foo Bar");

c.setCity("Atlantis");

.....

/* More such setters and corresponding getters when I need the values */

.....

我创建JSON对象为:

JSONObject jsonc = new JSONObject(c); //I'll use this only once I'm done setting all values.

这让我有点像:

{"name":"Foo Bar","city":"Atlantis"...}

请注意,在我的某些模型类中,某些属性本身 是其他模型类的对象 。如:

Product p = new Product();

p.setName("FooBar Cookies");

p.setProductType("Food");

c.setBoughtProduct(p);

如我所料,在上述情况下,产生的JSON对象为:

{"name":"Foo Bar","city":"Atlantis","bought":{"productname":"FooBar Cookies","producttype":"food"}}

我知道我可以toJSONString()在每个模型类中创建类似的东西,然后创建并处理JSON友好的字符串,但是根据我以前在Java中创建RESTful服务的经验(此问题完全不在上下文中),我可以返回通过使用来自服务方法的JSON字符串,并使@Produces(MediaType.APPLICATION_JSON)方法返回模型类的对象。因此它产生了JSON字符串,我可以在客户端使用它。

我想知道在当前情况下是否有可能获得类似的行为。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值