Json 的配置方式
主方法
public static void main(String[] args) { //put生成josn数据 putjoson(); //map生成JOSN mapjose(); } |
- 直接添加的方式
private static void putjoson() { JSONObject json=new JSONObject();//创建一个jsonobject Object nulls=null; try { json.put("name", "佟有德");//加入属性 json.put("age", 28); json.put("birthday", "2017"); json.put("major", new String[]{ "HTML5","敲java","玩redis" });//加入数组 json.put("grilfiend", true);//插入布尔数值 json.put("host", false); json.put("car", nulls);//传入空值 System.out.println(json.toString());
} catch (JSONException e) { // TODO Auto-generated catch block e.printStackTrace(); }
} |
2.通过map集合的方式
//通过添加map集合方式构着Josn, public static void mapjose(){ Object nulls=null; Map<String, Object> map=new HashMap<String, Object>(); map.put("name", "佟有德");//加入属性 map.put("age", 28); map.put("birthday", "2017"); map.put("major", new String[]{ "HTML5","敲java","玩redis" });//加入数组 map.put("grilfiend", true);//插入布尔数值 map.put("host", false); map.put("car", nulls);//传入空值 System.out.println(new JSONObject(map).toString());//把map转成josn } |
3.通过实体类
//通过实体类 public static void pojo(){ User user=new User(); user.setName("toangyoude"); user.setCar(null); user.setMajor(new String[]{ "html","peis"}); System.out.println(new JSONObject(user).toString());//把map转成josn } |
从文件读取
import java.io.File; import java.io.IOException; import org.apache.commons.io.FileUtils; import org.json.JSONArray; import org.json.JSONException; import org.json.JSONObject; public class jiexi { //从文件读取json public static void main(String[] args) throws IOException, JSONException { File file=new File(jiexi.class.getResource("/wang.json").getFile());//读取包下josn文件 String d=FileUtils.readFileToString(file);//读取文件内容 JSONObject j=new JSONObject(d);//构建josn System.out.println("姓名:"+j.getString("name"));//josn读取为string类型,传入参数为json的key JSONArray ja= j.getJSONArray("major");// for (int i = 0; i < ja.length(); i++) { String dy=(String)ja.get(i); System.out.println("喜欢:"+i+dy); } } } |
判空
if(!j.isNull("name")){ System.out.println("姓名:"+j.getString("name"));//josn读取为string类型,传入参数为json的key }//判空,非空打印
|
多个数据传递(easy uI)
Js部分
var selectobject = $("#table").datagrid("getSelections");//得到用户选择行(集合) var url = "item/delet";//定义链接服务器的地址 var ids=[];//用来存放用户选择的ID //选择了商品 $.messager.confirm('提示!','是否删除',function(result){ //result 是boolean类型 点确定是ture if(result){ for(i=0;i<selectobject.length;i++){ //selectobject为 //得到当前选中行的id var id = selectobject[i].id; console.log(id); ids.push(id);//把id 加入到数组 /* ids+="&ids="+id */ url+="?ids="+ids; console.log(url); //item/delet?ids=1356117?ids=1356117,1355561?ids=1356117,1355561,1352516 //请求controller $.get(url,function(data){ //json{isuccess:true} console.log(data); console.log("data类型:"+typeof(data)); if(data){ //删除成功 $("#table").datagrid("reload");//重新加载页面 } }); } } }); } |
CONTROLLER层
//删除用的方法 @RequestMapping("/delet") @ResponseBody public Map<String, Object> delet(String ids){ //截取字符串 System.out.println(ids); String[] disstring = ids.split(","); List<Long> idlist = new ArrayList<Long>(); for (String adds : disstring) { System.out.println("idlist集合加入:"+adds); idlist.add(Long.parseLong(adds)); }
int i = tbitemService.updatedelet(idlist);
return Restut.Restuts(i);//调用Restut工具类
} |
工具类
public class Restut { public static Map<String, Object> Restuts(int i){
Map<String, Object> map=new HashMap<String, Object>(); if (i >0) { map.put("isuccess",true);//返回true让页面跳转
} else { map.put("isuccess",false);//返回false让页面停留 }
return map; } } |
Gson
实体类方式
package gson; import com.google.gson.Gson; import josn.pojo.User; public class goson_test { public static void main(String[] args) { // TODO Auto-generated method stub User user=new User(); user.setName("鲁克诗"); user.setCar(null); user.setMajor(new String[]{ "打游戏","写程序"}); Gson gson=new Gson();//创建 System.out.println(gson.toJson(user));//转换成json } } |
Map集合转json
Map<String, Object> map=new HashMap<String, Object>(); Object nulls=null; map.put("name", "佟有德");//加入属性 map.put("age", 28); map.put("birthday", "2017"); map.put("major", new String[]{ "HTML5","敲java","玩redis" });//加入数组 map.put("grilfiend", true);//插入布尔数值 map.put("host", false); map.put("car", nulls);//传入空值 Gson gson1=new Gson();//创建 System.out.println(gson1.toJson(map));//转换成json |
对jsp 美化
public static void main(String[] args) { // TODO Auto-generated method stub User user=new User(); user.setName("鲁克诗"); user.setCar(null); user.setMajor(new String[]{ "打游戏","写程序"}); user.setIng("不显示!");//实体类中属性类型定义为transient讲不会出现在json中
GsonBuilder gsons=new GsonBuilder();//在获取json时插入数据 gsons.setPrettyPrinting();//格式化JSON gsons.setFieldNamingStrategy(new FieldNamingStrategy() {
@Override public String translateName(Field f) { //重写方法修改KEY // TODO Auto-generated method stub if (f.getName().equals("name")) { return "Name"; } return f.getName(); } });//对json修改
Gson gson=gsons.create();//创建 System.out.println(gson.toJson(user));//转换成json}} |
从文件读取
package gson; import java.io.File; import java.io.IOException; import org.apache.commons.io.FileUtils; import com.google.gson.Gson; import josn.pojo.User; import josns.jiexi; public class filejson { public static void main(String[] args) throws IOException { File file=new File(jiexi.class.getResource("/wang.json").getFile());//读取包下josn文件 String d=FileUtils.readFileToString(file);//读取文件内容 Gson gson=new Gson(); User tyd=gson.fromJson(d, User.class);//实体类泛解析读取json System.out.println(tyd);//实体类须有tostring
} } |