java 对象转 json串
@Slf4j
public class caseReplay {
@Test
public void testCaseReplay() {
Map<String, Object> postJson = new HashMap<String, Object>();
String url = "https://test-evaluate-daily2.amap.test/evaluat";
postJson.put("algFlag", "xmap-autotest");
postJson.put("operator", "System");
System.out.println(JSON.toJSONString(postJson));//{"algFlag":"xmap-autotest","operator":"System"}
String res = HTTPUtil.postJson(JSON.toJSONString(postJson), url);
System.out.println(res);
// {
// "code":2,
// "msg":"没有可更新数据",
// "provider":"xmap-evaluate"
// }
// 简单java类转json串
User user = new User("dmego", "123456");
String UserJson = JSON.toJSONString(user);
// List<Object>转json串
User user1 = new User("zhangsan", "123");
User user2 = new User("lisi", "321");
List<User> users = new ArrayList<User>();
users.add(user1);
users.add(user2);
String ListUserJson = JSON.toJSONString(users);
// 复杂java类转json字符串
UserGroup userGroup = new UserGroup("userGroup", users);
String userGroupJson = JSON.toJSONString(userGroup);
System.out.println("复杂java类转json串:" + userGroupJson);
}
}
json串转Java对象
// json字符串转简单java对象 字符串:{"password":"123456","username":"dmego"}
String jsonStr1 = "{'password':'123456','username':'dmego'}";
User user = JSON.parseObject(jsonStr1, User.class);
// json字符串转List<Object>对象 字符串:[{"password":"123123","username":"zhangsan"},{"password":"321321","username":"lisi"}]
String jsonStr2 = "[{'password':'123123','username':'zhangsan'},{'password':'321321','username':'lisi'}]";
List<User> users = JSON.parseArray(jsonStr2, User.class);
1、如何从字符串String获得JSONObject对象和JSONArray对象
JSONObject jsonObject = new JSONObject ( String str);
JSONArray jsonArray = new JSONArray(String str ) ;
2、如何从JSONArray中获得JSONObject对象
大家可以把JSONArray当成一般的数组来对待,只是获取的数据内数据的方法不一样
JSONObject jsonObject = jsonArray.getJSONObject(i) ;
3、获取JSON内的数据
int mid= jsonObject.getInt ( "id" ) ; // 这里的mid得到的数据就是123.