ajax和json 前后端(入门)

一:ajax请求

$.post( //或get

        'url',//请求地址

         { "id":id, "name":name, },//传输的参数

          function(data) {//服务器返回的数据
                               
           },"json");

$.ajax({

       type:"post",//请求方式   或  “get”

       url:"index.jsp",//请求地址

       data: { "id":id, "name":name, },//传输的参数,json格式的数据

       success:function(data){//服务器返回的数据

           

       },

       error:function(error){

        },

 })

二:json

1、 json串转对象

//由JSON字符串转换为JSON对象

    var obj = eval('(' + str + ')');

或者

    var obj = str.parseJSON(); //由JSON字符串转换为JSON对象

    或者

    var obj = JSON.parse(str); //由JSON字符串转换为JSON对象

注:eaval()是js自带,可直接使用,其他两种需要json.js包

2、json对象转串

var last=obj.toJSONString(); //将JSON对象转化为JSON字符

    或者

var last=JSON.stringify(obj); //将JSON对象转化为JSON字符

注: 提示找不到toJSONString()和parseJSON()要领,则说明json包版本太低。

3、java中创建json对象

如下简单的例子,创建一个JSONObject,可能会抛出异常JSONException

private static void JSONObject() {

    JSONObject object = new JSONObject();
    Object nullObj = null;
    try {
        object.put("name", "王小二");
        object.put("age", 25.2);
        object.put("birthday", "1990-01-01");
        object.put("school", "蓝翔");
        object.put("major", new String[] {"理发", "挖掘机"});
        object.put("has_girlfriend", false);
        object.put("car", nullObj);
        object.put("house", nullObj);
        object.put("comment", "这是一个注释");

        System.out.println(object.toString());

    } catch (JSONException e) {
        e.printStackTrace();
    }

}

使用Map构架JSON

使用HashMap构建JSON

private static void createJsonByMap(){
    Object nullObj = null;
    Map<String, Object> object = new HashMap<String, Object>();
    object.put("name", "王小二");
    object.put("age", 25.2);
    object.put("birthday", "1990-01-01");
    object.put("school", "蓝翔");
    object.put("major", new String[] {"理发", "挖掘机"});
    object.put("has_girlfriend", false);
    object.put("car", nullObj);
    object.put("house", nullObj);
    object.put("comment", "这是一个注释");

    System.out.println(new JSONObject(object));

}

 

通过bean创建JSON对象:

public static void createJsonByBean() {

    DiaoSi bean = new DiaoSi();
    bean.setName("王小二");
    bean.setAge(25.2);
    bean.setBirthday("1990-01-01");
    bean.setSchool("蓝翔");
    bean.setMajor(new String[] {"理发", "挖掘机"});
    bean.setHas_girlfriend(false);
    bean.setHouse(null);
    bean.setCar(null);
    bean.setComment("这是一个注释");
    System.out.println(new JSONObject(bean));

}

4、 json数据解析(java)

  • 1.如果看到是{ }–>使用JSONObject
  • 2.如果看到的[ ]–>使用JSONArray解析

(1)// JSON-->纯对象(Object)的解析 

String json="{'name':'佩奇','age':12}";

try {  

    JSONObject obj = new JSONObject(json); 

     String name = obj.getString("name");

     int age = obj.getInt("age"); 

     System.out.println(name+"今年"+age+"岁");

} catch (JSONException e) { 

      e.printStackTrace();

}

(2)//解析数组

  String json="['北京','南京','上海','东京有点热']";  

 try { 

    JSONArray jArray = new JSONArray(json);

    for (int i = 0; i < length; i++) {  

         String string = jArray.getString(i);

        System.out.println(string+",");

    }

} catch (JSONException e) { 

}

 

转载于:https://my.oschina.net/u/3502029/blog/1632190

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值