getJSON 用法

$.getJSON 的用法:

//判断数据库一条记录中是否存在相同的planCode,cityCode, useType记录
function checkPlanConfig(planCode,cityCode,useType){
  $.getJSON("getPlanConfigRecord.do",{"planCode":planCode,"cityCode":cityCode,"useType":useType},function(datas){
    for(var i = 0;i<datas.length;i++){
      if((planCode == datas[i].planCode) && (cityCode == datas[i].cityCode) && (useType == datas[i].useType)){
        alert("存在相同的险种、城市和车辆使用性质,请重新选择");
        document.getElementById("planCode").value="";
        document.getElementById("planCode").focus();
        document.getElementById("cityCode").value="";
        document.getElementById("useType").value="";
        return;
      }
    }
  });
}
----------------
  /**
   * 查看数据库中是否存在相同的planCode、cityCode和useType记录
   * @param request
   * @param response
   * @return
   * @throws Exception
   */
  @SuppressWarnings("unchecked")
  protected ModelAndView getPlanConfigRecord(HttpServletRequest request,HttpServletResponse response) throws Exception {
   
    Map<String,Object> params = new HashMap<String,Object>();
   
    params.put(Constants.PARAMETER_ACTION, "record");
   
    List<PlanConfig> list = (List<PlanConfig>)dispatchRequest(params, ServiceRequestID.PLAN_CONFIG_ACTION);
   
    JsonResponseUtil.writeJsonArray(list, response);
   
    return null;
  }
-----------------------
  /**
   * 将Array封装到Json中返回页面
   * @param objectArray String
   * @param response HttpServletResponse
   */
  public static void writeJsonArray(Object objectArray, HttpServletResponse response) {
    String jsonString = JsonUtil.toJsonArrayString(objectArray);
    singleInstance.responseJsonString(jsonString, response);
  }
-----------------------
/*
* Copyright (c) 2008-2010.
*
* This software is ......
*/
package com.tpaic.ec.web.util.json;

import net.sf.json.JSONArray;
import net.sf.json.JSONObject;
import net.sf.json.JsonConfig;
import net.sf.json.util.JSONUtils;


/**
* This JsonUtil is a UTIL tool class for all the AJAX request.
*
* @Id JsonUtil.java
* @version
* @author Liuyc ;
* @Date Mar 27, 2009
*/
public class JsonUtil {
 
/** singleInstance */
private static JsonUtil singleInstance;

/**
* Convert the string data to JSON style.
*
* @param result
* @return
*/
public static String toJsonString(AjaxResult result) {
return singleInstance.generateJsonString(result);
}

/**
* Convert the data object to JSON style.
*
* @param data
* @return
*/
public static String toJsonObjectString(Object data) {
return singleInstance.generateJsonObject(data);
}

/**
* Wrapped the array object to JSON style.
*
*
* @param arrayObject
* @return
*/
public static String toJsonArrayString(Object arrayObject) {
return singleInstance.generateJsonArray(arrayObject);
}

/** JsonConfig contains others processors which want to affect on the JSON string.*/
private JsonConfig jsonConfig = new JsonConfig();

/**
* @param result
* @return
*/
public String generateJsonString(AjaxResult result) {
switch(result.getRequestType()) {
case AjaxResult.AJAX_SUBMIT:
return JSONObject.fromObject(result, jsonConfig).toString();
case AjaxResult.AJAX_DATA:
if(JSONUtils.isArray(result.getData())) {
return JSONArray.fromObject(result.getData(), jsonConfig).toString();
}
return JSONObject.fromObject(result.getData(), jsonConfig).toString();
default:
throw new RuntimeException(result.toString());
}
}

/**
* @param data
* @return
*/
public String generateJsonObject(Object data) {
return JSONObject.fromObject(data, jsonConfig).toString();
}

/**
* @param
* @return
*/
public String generateJsonArray(Object arrayObject) {
return JSONArray.fromObject(arrayObject, jsonConfig).toString();
}

public void init() throws Exception {
if(JsonUtil.singleInstance == null) {
JsonUtil.singleInstance = this;
}
}
}
-------------------
/*
* Copyright (c) 2008-2010.
*
* This software is ......
*/
package com.tpaic.ec.web.util.json;

import java.io.IOException;
import java.io.OutputStream;
import java.io.UnsupportedEncodingException;

import javax.servlet.http.HttpServletResponse;

import org.apache.commons.lang.StringUtils;
import org.apache.log4j.Logger;

/**
* Wrapped the JSON data to response.
*
* @Id JsonResponseUtil.java
* @version
* @author Liuyc ;
* @Date Mar 27, 2009
*/
public class JsonResponseUtil { 
 
  /** logger */
  private static Logger logger = Logger.getLogger(JsonResponseUtil.class);

  /** singleInstance */
  private static JsonResponseUtil singleInstance;

  /** contentType */
  private String contentType;

  /** charsetName */
  private String charsetName;

  /** jsonUtil */
  private JsonUtil jsonUtil;

  /**
   * constructor.
   */
  public JsonResponseUtil() {
    if (singleInstance == null) {
      singleInstance = this;
    }
  }

  /**
   *
  * @return JsonResponseUtil
   */
  public static JsonResponseUtil getInstance() {
    return singleInstance;
  }

  /**
   * 将String封装到Json中返回页面
   * @param jsonString String
   * @param response HttpServletResponse
   */
  public static void writeJsonString(String jsonString, HttpServletResponse response) {
    singleInstance.responseJsonString(jsonString, response);
  }

  /**
   * 将对象封装到Json中返回页面
   * @param data String
   * @param response HttpServletResponse
   */
  public static void writeJsonObject(Object data, HttpServletResponse response) {
    String jsonString = JsonUtil.toJsonObjectString(data);
    singleInstance.responseJsonString(jsonString, response);
  }

  /**
   * 将Array封装到Json中返回页面
   * @param objectArray String
   * @param response HttpServletResponse
   */
  public static void writeJsonArray(Object objectArray, HttpServletResponse response) {
    String jsonString = JsonUtil.toJsonArrayString(objectArray);
    singleInstance.responseJsonString(jsonString, response);
  }

  /**
   *
   * @param ajaxResult String
   * @param response HttpServletResponse
   */
  public static void writeAjaxResult(AjaxResult ajaxResult, HttpServletResponse response) {
    String jsonString = JsonUtil.toJsonString(ajaxResult);
    singleInstance.responseJsonString(jsonString, response);
  }

  /**
   * @return the contentType
   */
  public String getContentType() {
    return contentType;
  }

  /**
   * @param contentType
   *          the contentType to set
   */
  public void setContentType(String contentType) {
    this.contentType = contentType;
  }

  /**
   * @return the jsonUtil
   */
  public JsonUtil getJsonUtil() {
    return jsonUtil;
  }

  /**
   * @param jsonUtil
   *          the jsonUtil to set
   */
  public void setJsonUtil(JsonUtil jsonUtil) {
    this.jsonUtil = jsonUtil;
  }

  /**
   * Directly Send the JSON string to client.
   *
   * @param jsonString
   */
  public void responseJsonString(String jsonString, HttpServletResponse response) {
    responseJsonString(response, jsonString);
  } 

  /**
   *
   * @param data Object
   * @param response HttpServletResponse
   */
  public void responseJsonObject(Object data, HttpServletResponse response) {
    String jsonString = jsonUtil.generateJsonObject(data);
    responseJsonString(jsonString, response);
  }

  /**
   *
   * @param objectArray Object
   * @param response HttpServletResponse
   */
  public void responseJsonArray(Object objectArray, HttpServletResponse response) {
    String jsonString = jsonUtil.generateJsonArray(objectArray);
    responseJsonString(jsonString, response);
  }

  /**
   *
   * @param ajaxResult String
   * @param response HttpServletResponse
   */
  public void responseAjaxResult(AjaxResult ajaxResult, HttpServletResponse response) {
    String jsonString = jsonUtil.generateJsonString(ajaxResult);
    responseJsonString(jsonString, response);
  }

  /**
   *
   * @param charsetName
   */
  public void setCharsetName(String charsetName) {
    this.charsetName = charsetName;
  }
  /**
   * 初始化Json
   * @throws Exception Exception
   */
  public void init() throws Exception {
    if (StringUtils.isBlank(contentType) || StringUtils.isBlank(charsetName)) {
      throw new Exception("Both of contentType and charsetName are requied.");
    }
  }
  /**
   * Directly Send the JSON string to client.
   *
   * @param response
   * @param jsonString
   */
  public void responseJsonString(HttpServletResponse response, String jsonString) {
    response.setContentType(contentType);
    byte[] bytes;
    try {
      bytes = jsonString.getBytes(charsetName);
    } catch (UnsupportedEncodingException e) {
      throw new RuntimeException(e);
    }
    response.setContentLength(bytes.length);
    try {
      OutputStream os = response.getOutputStream();
      os.write(bytes);
      os.flush();
      if (logger.isDebugEnabled()) {
        logger.debug("Send the client" + jsonString);
      }
    } catch (IOException e) {
      logger.error("Exception happens.", e);
      throw new RuntimeException(e);
    }
  }
}

 

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值