前后端数据交换工具json——拙见

分析:

前后端对于json的使用方式不一样;json语法格式不做介绍;

前端:

json的引入方式:<script  src=“js/json2.js”><script>;

//删除方法:delete(key);

操作:

json格式的字符串与json对象的字符串相互转化;

json对象转化为字符串:

formJson{"name":“毛寒”,“ID”:“lovewen”};

var Data = JSON.stringify(fromJson);

document.write(Data) == "{"name":“毛寒”,“ID”:“lovewen”}";

用ajax传入java服务器:

$.ajax({  url :"servlet/Login",

type:"post",

data:"{“mydata”:Data,.......}"

});

java服务器传来的json格式字符串,success接收后需要转换为json对象;

var  jsonOBJ = JSON.parse(jsonString);

java服务器端json技术:

(java环境下和js环境下json对象数据类型有区别;因为java和js数据类型不同;)

第一步:载入依赖包(v:版本号)

{commons-beanutils-v.jar # commons-collections-v.jar #  commons-lang-v.jar #  commons-logging-v.jar # ezmorph-v.jar #  json-lib-v.jar  }  ;

JSONObject类核心功能:

(JSONObject是一个final类继承了顶级父类object实现了json接口);

JSONObject构造方法:

JSONObject ();     //创建一个空的JSONObject对象;也有带参构造方法;

常用API:(分两类):

一:json对象与其他类型相互转换:

//测试jsonobj两类API和jsonAArray;

public void Jsondemo(){

//从其他数据obj:(map、Bean、String)构建一个json对象;Bean:严格规范的实体类;

    //方法一(obj类型转换成jsonobj类型):static JSONObject fromobject(Object obj);

    //方法二(反转):static Object JSONObject.toBean(Object object,Class class);

    //1.从map构建json且反转实例;

    Map map =new HashMap();

    map.put("name","毛寒");

    JSONObject jsonObject = JSONObject.fromObject(map);

    System.out.println(jsonObject);

    //反转:

    map = (Map)JSONObject.toBean(jsonObject,Map.class);

    System.out.println(map);

    //Bean、String:与Map原理一样,代入即可;

二:对json对象内部数据执行的CRUD和遍历等操作:

//增加和修改:obj.put(key:value);

//删除与清空:obj.remove(key); obj.clear();

//遍历操作:

JSONObject object =new JSONObject();

object.put("name1","毛寒");

object.put("name2","毛寒子");

object.put("name3","雯儿");

object.put("name4","雯雯");

object.put("name5","可可");

String name = object.getString("name3");

System.out.println(name);

//遍历(迭代器方法进行遍历);

Iterator keys = object.keys();

Object obj;

while (keys.hasNext()){

obj = jsonObject.get(keys.next());

    System.out.println(obj);

}


JSONArray类:

相当于js中的json对象那个数组;java服务端JSONArray对象可封装从数据库获取的对象集合(结果集)并与前端js环境下的json对象数组相对应;(操作方法基本和javaArray相同);

构造器:JSONArray obj = new JSONArray();

对象转化:JSONArray.formObject(object);    object:一般是集合对象;List、Array以及符合要求的把实体对象数组转化为JSONArray对象;

增加、修改、删除:add(JSONObject)//必须是JSONObject对象;remove(int  index);toArray()[index];

前后端分离:

前端页面中的关键变量名最好与实体类中成员变量名保持一致;方便json对象与实体类对象之间的转换;

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容