Java 将对象转换为HTTP请求参数(键/值对)
假设我有一个对象模型,如:Java 将对象转换为HTTP请求参数(键/值对),java,rest,serialization,marshalling,Java,Rest,Serialization,Marshalling,假设我有一个对象模型,如: class B { string msg; } class A { string name; int[] nums; B obj; } 当一个实例序列化为JSON时,它看起来像: {"name": "John", "nums": [1,2,3], "obj": {"msg" : "foo" }} 因此,我正在寻找一个转换器,它可以将此对象序列化为标准HTTP POST/PUT表单数据或获取查询字符串参数,例如,请参阅以下请求正文
class B {
string msg;
}
class A {
string name;
int[] nums;
B obj;
}
当一个
实例序列化为JSON时,它看起来像:
{"name": "John", "nums": [1,2,3], "obj": {"msg" : "foo" }}
因此,我正在寻找一个转换器,它可以将此对象序列化为标准HTTP POST/PUT表单数据或获取查询字符串参数,例如,请参阅以下请求正文,我需要获取以下内容:
name=John&nums[0]=1&nums[1]=2&nums[2]=3&obj.msg=foo
我找不到任何执行此过程的库(递归地将对象转换为键值映射并支持集合)
非常感谢您的帮助。谷歌gson应该能帮助您: 用户指南:
然后您可以使用这个库转换JSON以获取url:如果默认转换不适合您,您可以尝试Jacksonmapper并提供自定义映射器实现。如果您在项目中使用Spring,它也可以与Spring很好地集成。fjammes,我不想使用JSON。我想将我的对象封送到键值对。请仔细阅读问题。我很惊讶这不是现成的,在写我自己的问题之前,我会再看一看。