JavaScript:                                                                                                                                                                                                     

    ----------array:      object                                                                                 

定义: var obj= [1, 2, 3, 4]; // 等价于 var obj= new Array(1, 2, 3, 4);                         

  ----------Json:              object                                     

    js里面,有一种特殊的对象,就是Json,可以看做一种特殊的Map(仅方便联想)

var  data = {"uid":"uuid","username":"xt","sex":"男","password":"123456"};

  -------------基于对象的使用: data.uuid==========>data["uuid"]             前台去处理Json

----------------------------------------------------------->ajax使用

           传    json          得到json

controller-------------->前台界面(显示数据)    ===================》局部刷新界面,而不是整个界面

Ajax操作分为四步走:两种请求方式  post,get

1)获取XMLHttpRequest

fucntion  craeteXMLHttpRequest(){

           try{

              return new XMLHttpRequest();

           }catch(e){

            try{

              return new ActiveXObject("Microsoft.XMLHTTP")

            }catch(e){

              try{

                return new ActiveXObject("msxml2.XMLHTTP")

              }catch(e){

                throw e;

              }

            }

        }

    

             var xmlHttpRequest = new  craeteXMLHttpRequest();

 2)打开窗口(如咱们一般访问浏览器)

     xmlHttpRequest.open("Get","<c:url value='/xt?action=hello&xt=aaa'/>",true); ------》get

      xmlHttpRequest.open("POST","<c:url value='/product.do?action=checkByPid'/>",true);     ---->post 要设置请求头
     xmlHttpRequest.setRequestHeader("Content-Type","application/x-www-form-urlencoded");

<c:url value='/xt?action=hello&xt=aaa'/> ------------->也可以是一般文本文件

3)浏览器里面输入数据(send)

    xmlHttpRequest.send(null)------------->get

 xmlHttpRequest.send("username"+username)------------->post

4)浏览器回应

xmlHttpRequest.onreadystatechange = function(){
  if(xmlHttpRequest.readyState==4 &&xmlHttpRequest.status == 200){
    var text = xmlHttpRequest.responseText;   //类型text,一般可以接收str

var data = JSON.parse(text);   //  eval("(" +data+ ")")   两种解析方式

    var xml  =  xmlHttpRequest.responseXML;   //xml     str为xml形式
    
  };

后台   bean------------》json给前台

 package cn.transfer.test;

 import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import java.util.TreeMap; import net.sf.json.JSONArray;
import net.sf.json.JSONObject; import org.junit.Test; public class TestJson {
/*
* 当map来用
*/
@Test
public void fun1() {
JSONObject map = new JSONObject();
map.put("name", "zhangSan");
map.put("age", 23);
map.put("sex", "male"); String s = map.toString();
System.out.println(s); System.out.println("----------------------------");
Map<String,Object> map2 = new TreeMap<String, Object>();
map2.put("age", 12);map2.put("name", "LiSi");map2.put("sex", "男");
System.out.println(map2.toString().replace("=", ":"));//{sex=男, name=LiSi, age=12}
} @Test
public void beanToJson(){
Person person = new Person("LiSi", 12, "男");
//对象转换为json
JSONObject map = JSONObject.fromObject(person);
System.out.println(map.toString());
} /**
* JSONArray
*/
@Test
public void fun3() {
Person p1 = new Person("zhangSan", 23, "male");
Person p2 = new Person("liSi", 32, "female"); JSONArray list = new JSONArray();
list.add(p1);
list.add(p2); System.out.println(list.toString());
} /**
* 原来就有一个List,我们需要把List转换成JSONArray
*/
@Test
public void fun4() {
Person p1 = new Person("zhangSan", 23, "male");
Person p2 = new Person("liSi", 32, "female");
List<Person> list = new ArrayList<Person>();
list.add(p1);
list.add(p2); System.out.println(JSONArray.fromObject(list).toString());
} @Test // 数组--------------<>JSON
public void fun5() {
Person p1 = new Person("zhangSan", 27773, "male");
Person p2 = new Person("liSi", 32, "female");
Person[] p = {p1,p2}; System.out.println(JSONArray.fromObject(p).toString());
} @Test // String------------>JSON
public void fun6() { JSONObject map = new JSONObject();
map.put("name", "zhangSan");
map.put("age", 23);
map.put("sex", "male");
Person obj = (Person) JSONObject.toBean(map, Person.class);
System.out.println(obj.toString() );
}
}

 

    

Ajax传统操作的更多相关文章

  1. ajax 中操作this,需要先在ajax的外面给this重新定义为_this!!

    //设置为默认收货地址 $(document).on('tap','.right_none',function(){ var _this = $(this); //只有这样定义,在ajax的内部才可以 ...

  2. Ajax-04 jQuery Ajax 常用操作

    jQuery jQuery 其实就是一个JavaScript的类库,其将复杂的功能做了上层封装,使得开发者可以在其基础上写更少的代码实现更多的功能. jQuery Ajax a.概述 jQuery 不 ...

  3. JQuery中Ajax的操作

    JQuery   Ajax异步操作的方式: $.ajax,$.post, $.get, $.getJSON. 一, $.ajax,这个是JQuery对ajax封装的最基础步,通过使用这个函数可以完成异 ...

  4. Ajax 数据库操作

    为了清楚的说明使用 Ajax 从数据库中存取信息有多么容易,我们要构建一个 MySQL 查询,然后把结果显示在ajax.html 上.但是在我们开始之前,让我们先做一些基础工作.使用下面的命令创建一个 ...

  5. Ajax 传统的异步登陆

    这是一个传统的异步登陆,利用Ajax实现的,主要代码如下: 客户端代码: var http; function Button1_onclick() { if (window.ActiveXObject ...

  6. ajax常用操作

    load的方法的使用(现在已不常用) <!doctype html><html lang="en"><head> <meta charse ...

  7. AngularJS入门教程之与服务器(Ajax)交互操作示例

    AngularJS从Web服务器请求资源都是通过Ajax来完成,所有的操作封装在$http服务中,$http服务是只能接收一个参数的函数,这个参数是一个对象,用来完成HTTP请求的一些配置,函数返回一 ...

  8. ajax 简单操作

      <script> $(function () { //$("#send").click(function () { // $.get("JQuery.as ...

  9. jQuery(九)、ajax对象操作

    1 数组和对象操作 1.jQuery.extend([deep,] target, object1, [objectN]) 用一个或多个其他对象来扩展一个对象,返回被扩展的对象. 如果不指定targe ...

随机推荐

  1. java全栈day01-03注释、关键字与标识符

    通常我们需要在源代码中添加文字用来对进行代码解释说明,但这些文字并不是Java代码的语法,会导致编译出错.这时我们可以使用注释来完成这一事项! 在编译时,编译器会忽略注释的存在,就好像注释内容不存在一 ...

  2. bit byte的关系

    字 word 字节 byte 位 bit 字长是指字的长度 1字=2字节(1 word = 2 byte) 1字节=8位(1 byte = 8bit)  一个字的字长为2个字节=2*8=16 一个字节 ...

  3. maredit测试

    int main() { } void addTotail(ListNode *& pHead, int value) { ListNode *node = new ListNode(); n ...

  4. C# WinForm:无法访问已释放的对象

    C#在父窗口中调用子窗口的过程: 1. 创建子窗口对象 2. 显示子窗口对象   笔者的程序中,主窗体MainFrm通过菜单调用子窗口ChildFrm.在窗体中定义了子窗口对象,然后在菜单项点击事件中 ...

  5. 计算DataTable某列的值(SUM)

    参考,如下:

  6. javascript 文本框值变化触发事件

    javascript 文本框值变化触发事件jo.find(".price").bind('input onpropertychange', function () { me.cal ...

  7. 1003. Check If Word Is Valid After Substitutions

    We are given that the string "abc" is valid. From any valid string V, we may split V into ...

  8. Nginx入门介绍与安装

    Nginx是什么? Nginx是俄罗斯人编写的十分轻量级的HTTP和反向代理服务器.发音:"engine X" Nginx能干什么? (1)Http反向代理 Nginx 支持正则表 ...

  9. js window.open()打开的页面关闭后刷新父页面

    function test(){ var winObj = window.open(URL); var loop = setInterval(function(){ if(winObj.closed) ...

  10. Python 之 装饰器

    装饰器 中的“器”代指函数 所以装饰器本质是函数,用来装饰其它函数.例如:为其它函数添加其他功能 实现装饰器需要的知识:  高阶函数+嵌套函数 == 装饰器 1.函数就是“变量” 函数就是“变量”说的 ...