Oom*_*ity 5 java json spring-mvc
我知道JSON对象只不过是String
.
我的问题是我有一个Object of Object,我想把它转换成Json格式.
示例:
Java Class ->
Class Person{
private String name;
private String password;
private int number;
}
Java list ->
Map<List<Long>,List<Person>> map=new HashMap<List<Long>,List<Person>>();
..and map has Some data filled in it.
Run Code Online (Sandbox Code Playgroud)
我想将该列表转换为
Json Format?
Run Code Online (Sandbox Code Playgroud)
我怎么能实现它?因为我想通过HttpClient发送它...如果不是另一种替代方式呢?
据我所知,有Gson API
可用,但我不知道如何使用它或以其他有效的方式.
谢谢
不确定Gson的问题是什么.来自doc:
BagOfPrimitives obj = new BagOfPrimitives();
Gson gson = new Gson();
String json = gson.toJson(obj);
Run Code Online (Sandbox Code Playgroud)
和
BagOfPrimitives obj2 = gson.fromJson(json, BagOfPrimitives.class);
Run Code Online (Sandbox Code Playgroud)
该对象(顾名思义)由原语组成.然而,Gson将轻松处理对象,对象集合等.使用泛型等时生活会变得复杂一些,但对于上面的例子,我希望Gson可以轻松地处理.
我得到了答案,但感谢您的回复。
Map<Long,List<Person>> map=new HashMap<Long,List<Person>>();
//adding some data
Gson gson=new Gson();
String mapJsonStr=gson.toJson(map);
//mapJsonStr : is my map's JSon Strin
Run Code Online (Sandbox Code Playgroud)
用于反向
TypeToken<Map<Long,List<Person>>> token = new TypeToken<Map<Long,List<Person>>>(){};
Map<Long,List<Person>> map_new=new HashMap<Long,List<Person>>();
map_new=gson.fromJson(mapJsonStr,token.getType());
//origian map
// map_new is my Map get from map's Json String
Run Code Online (Sandbox Code Playgroud)
就是这样。谢谢