可以使用三種方式,用json接收一個list,方法如下:
1、使用org.json.JSONArray包:專
JSONArrayjson=newJSONArray();
for(Useru:list){
JSONObjectjo=newJSONObject();
jo.put("id",u.getId());
jo.put("title",u.getName());
json.put(jo);
}
2、使用net.sf.json包下JSONArray的靜態方法:屬fromObject(list), 這是網上大多是直接用此方法快捷轉換JSON,但是對於list的要求就是其中的元素是字元串或對象,否則JSON不知道你想要的是什麼數據:
JSONArrayjson=JSONArray.fromObject(list);
3、使用google的gson,將list轉為json字元串:
Gsongson=newGson();
Stringstr=gson.toJson(list);
⑵ java 怎樣進行json字元串拼接
一般都是用json解析包去做json的轉換的,例如用Gson,可以把一個對象轉為json字元串,也可以逆向把json字元串轉為對象。
例如:
Map<String,Object>map=newHashMap<String,Object>();
map.put("key01","value01");
map.put("key02","value02");
Stringjson=newGson().toJson(map);
//則json為{"key01":"value01","key02":"value02"}
如果要用手動拼接的話,就拼接成json格式的字元串就可以了,注意"要做轉義
例如:
Stringvalue01="value01";
intvalue02=123;
Stringjson="{"key01":""+value01+"","key02":"+value02+"}";
//列印結果為{"key01":"value01","key02":123}
//注意int值不需要加引號
⑶ java實體類怎麼轉換成json。
導入Google的包gson-2.2.4.jar
然後實例化Gson
static Gson gosn = new Gson();
String json = gosn.toJson(hashMap); //這里放一個對象,什麼對象都可以。
轉化後就是Json,功能強大很多,也簡單很多。
json-lib-2.4-jdk15.jar
ezmorph-1.0.6.jar
轉換的話這樣用
String s= JSONArray.fromObject(user).toString();
spring-webmvc4
在方法上加入@ResponseBody,同時方法返回值為實體對象,spring會自動將對象轉換為json格式,並返回到客戶端
⑷ 求:Java中將String類型轉換成Json的方法
Java提供了JSON類可以用來來讀取和轉自換字元串,示例如下:
/**
* 重載objectToJsonStr方法
* @param obj 需要轉換的JAVA對象
* @param format 是否格式化
* @return
* @throws MapperException
*/
public static String objectToJsonStr(Object obj,boolean format) throws MapperException{
JSONValue jsonValue = JSONMapper.toJSON(obj); //傳入的字元串進行轉換
String jsonStr = jsonValue.render(format);
return jsonStr;//返回一個json對象
}
⑸ java怎麼把數據轉成json 數組
有兩種方法實現:
(1)直接轉換:
創建JSONArray對象、JSONObject對象,通過put方法將其數據以鍵值對的形式填充,如例:
//假如有一個Java實體類Person,包括以下屬性:phone、sex、married、address。
ArrayList<Person> persons = new ArrayList<Person>();
for (int i = 0; i < 3; i++) {
persons.add(new Person("138******67", "女", true, "北京朝陽區"));//填充Java實體類集合
}
JSONArray array = new JSONArray();// Json格式的數組形式
JSONObject obj;//json格式的單個對象形式
for (int i = 0; i < persons.size(); i++) {
obj = new JSONObject();
//依次填充每一個Java實體對象
try {
obj.put("phone", persons.get(i).getPhone());//json通過put方式以key-value形式填充
obj.put("sex", persons.get(i).getSex());
obj.put("married", persons.get(i).getMarried());
obj.put("address", persons.get(i).getAddress());
array.put(obj);//將JSONObject添加入JSONArray
} catch (JSONException e) {
e.printStackTrace();
}
}
(2)通過GSON工具實現:
只需要創建GSON對象,通過toJson方法轉換即可。如例:
//模擬Java數據
Person person = new Person("敏敏", 23, "女", "北京市海淀區");
//創建GSON對象
Gson gson = new Gson();
//調用toJson方法即可轉換為字元串的json格式
String json = gson.toJson(person);
⑹ java將json字元串轉換成對象批量存儲數據
使用toJSONString()或者全局方法JSON.stringify()。將json字元串轉換為json對象的方法。在數據傳輸過程中,json是以文本,即字元串的形式傳遞的,JS操作的是JSON對象,JSON對象和JSON字元串之間的相互轉換是關鍵。
⑺ java中把json怎麼轉換成數組
java中把json怎麼轉換成數組的方法:
1、使用原生的解析:
String json = "...";
JSONArray array= new JSONArray(json);
//遍歷數組里的值,得到每個獨立的對象,然後獲取對應的值設置到聲明好的對象中,最終創建對象完成後添加到集合中,如我自己代碼里的片段:
for (int j = 0; j < array.length(); j++) {
obj = array.getJSONObject(j);
Data data = new Data();
data.setThumbnail(obj.getString("thumbnail"));
data.setTitle(obj.getString("title"));
data.setUrl(obj.getString("url"));
mDataList.add(data);
}
2、使用第三方包如Gson,但是這個你得保證你的JSON字元串個z
⑻ java 怎麼將List<List<Object>>類型轉換成json類型,怎麼讀取json類型
java中將list對象轉換成json類型,可以使用json拼接的方專式,實例如屬下:
json:[{},{}]
Stringjson="[";
for(Objectobj:list){
json=json+"{"+obj+"}";
}
json=json+"]"
returnjson;