ajax-传数组给后台

var ids = [1,2,3,4];
$.ajax({
 type: "POST",
 url: "${base}/xxx/xx?ids=" + ids,
 async: false,
 dataType: "json",
 success: function (data) {
  if (data.data) {
      alert(data.data); //ids;
  }
 }
}); 


//后台controller-springMVC
 @RequestMapping("/delete")
 @ResponseBody
  public ResponseEntity<JsonResult> xx(Long[] ids) { 
    System.out.pringln(Arrays.toString(ids));//[1,2,3,4,5]
    return ControllerHelper.returnJSONResult(true, "成功", ids);
}


package com.gt.util.web;

import org.springframework.http.HttpHeaders;
import org.springframework.http.HttpStatus;
import org.springframework.http.MediaType;
import org.springframework.http.ResponseEntity;
import org.springframework.ui.Model;

import com.gt.util.web.JsonResult.ErrorCode;

public class ControllerHelper {

	/**
	 * 导航到错误页面
	 * 
	 * @param model
	 * @param errorInfo
	 * @return
	 */
	public static String navErrorPage(Model model, String errorInfo) {
		model.addAttribute("errorinfo", errorInfo);
		return "error/error";
	}

	/**
	 * 返回标准JSON返回值
	 * 
	 * @param result
	 * @param message
	 * @return
	 */
	public static ResponseEntity<JsonResult> returnJSONResult(boolean result, String message) {
		return returnJSONResult(result, message, null);
	}

	/**
	 * 返回标准JSON返回值
	 * 
	 * @param result
	 * @param message
	 * @param data
	 * @return
	 */
	public static ResponseEntity<JsonResult> returnJSONResult(boolean result, String message, Object data) {
		return returnJSON(new JsonResult(result, message, data));
	}

	/**
	 * 返回标准JSON返回值
	 * 
	 * @param result
	 * @param errorCode
	 * @param message
	 * @param data
	 * @return
	 */
	public static ResponseEntity<JsonResult> returnJSONResult(boolean result, ErrorCode errorCode, String message, Object data) {
		return returnJSON(new JsonResult(result, errorCode, message, data));
	}

	/**
	 * 返回给定数据的JSON格式
	 * 
	 * @param data
	 * @return
	 */
	public static <T> ResponseEntity<T> returnJSON(T data) {
		HttpHeaders headers = new HttpHeaders();
		headers.setContentType(MediaType.parseMediaType(MediaType.TEXT_PLAIN + "; charset=utf-8"));
		return new ResponseEntity<T>(data, headers, HttpStatus.OK);
	}

	/**
	 * 返回给定数据的STREAM格式(二进制)
	 * 
	 * @param data
	 * @return
	 */
	public static ResponseEntity<?> returnData(Object data) {
		HttpHeaders headers = new HttpHeaders();
		headers.setContentType(MediaType.APPLICATION_OCTET_STREAM);
		return new ResponseEntity<Object>(data, headers, HttpStatus.OK);
	}

	public static ResponseEntity<?> returnBadRequestData() {
		HttpHeaders headers = new HttpHeaders();
		headers.setContentType(MediaType.APPLICATION_OCTET_STREAM);
		return new ResponseEntity<Object>(null, headers, HttpStatus.BAD_REQUEST);
	}

	public static ResponseEntity<JsonResult> returnJSONResult(boolean result, ErrorCode errorCode, String message) {
		return returnJSON(new JsonResult(result, errorCode, message, null));
	}

	/**
	 * 返回处理结果,自动封装错误提示
	 * 
	 * @param b
	 * @param javaCodeError
	 * @return
	 */
	public static ResponseEntity<JsonResult> returnJSONResult(ErrorCode errorCode, boolean result) {
		return returnJSON(new JsonResult(result, errorCode, errorCode.getDisplay(), null));
	}
}

package com.gt.util.web;

/**
 * Json操作反馈对象
 * 
 * @author 
 *
 */
public class JsonResult {

	public JsonResult(boolean result) {
		this(result, null);
	}

	public JsonResult(boolean result, String message) {
		this(result, message, null);
	}

	public JsonResult(boolean result, Object data) {
		this(result, null, data);
	}

	public JsonResult(boolean result, String message, Object data) {
		this.result = result;
		this.message = message;
		this.data = data;
	}

	public JsonResult(boolean result, ErrorCode errorCode, String message,
			Object data) {
		this.result = result;
		if(errorCode!= null){
			this.errorCode = errorCode.getCode();
		}
		this.message = message;
		this.data = data;
	}

	/**
	 * 操作结果
	 */
	private boolean result;
	/**
	 * 错误代码,正确时使用0
	 */
	private int errorCode;
	private String message;
	private Object data;
	
	public boolean isResult() {
		return result;
	}

	public void setResult(boolean result) {
		this.result = result;
	}

	public String getMessage() {
		return message;
	}

	public void setMessage(String message) {
		this.message = message;
	}

	public static JsonResult createFailureResult(String message) {
		return new JsonResult(false, message);
	}

	public Object getData() {
		return data;
	}

	public void setData(Object data) {
		this.data = data;
	}

	public int getErrorCode() {
		return errorCode;
	}

	public void setErrorCode(ErrorCode errorCode) {
		this.errorCode = errorCode.getCode();
	}

	public enum ErrorCode {
		/**OK = 200*/
		NONE("", 200),
		
		/**您的登录状态已失效,请重新登录!= 401*/
		NOT_LOGIN("您的登录状态已失效,请重新登录!", 401),
		
		/**系统未查询到该数据=4041*/
		NOT_FIND_DATA("系统未查询到该数据",4041),
		
		/**对不起,安全验证失败=402*/
        NOT_VALID("对不起,安全验证失败", 402),
        
        /**可以自定义错误信息4021(如删除用户,如果该用户是管理员,可以提是管理员不能被删除)***/
        CURRENT_NOT_PERMISS_OPERATE("当前状态下不容许该操作", 4021),
        
        /**数据格式不符合要求,请重新提交! 400*/
        DATA_VALID_FAILURE("数据格式不符合要求,请重新提交!", 400),
        
        /**网络出错,请重新操作!=505*/
		JAVA_CODE_ERROR("网络出错,请重新操作!", 505),
		
		/**新增功能请下载最新版本*/
        BUSSINESS_NOT_SUPPORTED("当前客户端版本过低,不支持该功能,请下载最新版本", 600),
		
		/**对不起,您没有执行该操作的权限=403*/
		PERMISS_DENIED("对不起,您没有执行该操作的权限", 403),
		
		/**对不起,您没有操作该数据的权限!=4032*/
		PERMISS_DATA_DENIED("对不起,您没有操作该数据的权限!", 4032),
		
		/**您还没有注册公司,无法执行该操作=4031*/
		NOT_COMPANY("您还没有注册公司,无法执行该操作", 4031),
		
		/**您当前无法参与报价=4032*/
        NOT_ALLOW_QUOTATION("您当前无法参与报价", 4032),
        
        COMPANY_INFO_UN_PERFECT("<b><u><font color='red'>企业注册信息不完整,请尽快补全:</font></u></b><br>1.请到 企业申请 中进行完善;<br>2.或者联系“企业管理员”进行完善。<br/>3.信息不完整不影响正常创建操作!", 4033);

		private String display;
		private int code;

		// 构造方法
		private ErrorCode(String display, int code) {
			this.display = display;
			this.code = code;
		}

		public int getCode() {
			return this.code;
		}

		public String getValue() {
			return name();
		}

		public static ErrorCode fromCode(int code) {
			ErrorCode[] states = ErrorCode.values();
			for (ErrorCode state : states) {
				if (state.getCode() == code) {
					return state;
				}
			}
			return null;
		}

		// 覆盖方法
		@Override
		public String toString() {
			return this.display;
		}

		public String getDisplay() {
			return display;
		}
	}
}


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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值