json传值 - SpringMVC

一、

--后台:控制层
@RequestMapping("/release")
@ResponseBody
public Map<String, Object> release(String id,String name){
Map<String,Object> map = new HashMap<String,Object>();
try {
Map<String, Object> param = new HashMap<String, Object>();
SystemUserInfoT userInfo = SessionUtil.getUserInfo();
String inputuser = "";
if (userInfo != null) {
inputuser = userInfo.getAccount();
}
param.put("id", id);
param.put("name", name);
Map<String, Object> map=waveMainConsumer.release(param);
return map;
} catch (Exception e) {
e.printStackTrace();
map.put(ItemContants.CODE, ItemContants.FAIL_RELEASE_CODE);
map.put(ItemContants.MESSAGE, ItemContants.FAIL_RELEASE_MESSAGE);
return map;
}
}

--前台:jsp页面
function release(id,name){
showReleasing();
$.ajax({
url : "release",
data : {'id':id,'name':name},//不传值则为data : null,
type : "get",//或"post",但要与后台对应
dataType:'json',
error : function(data) { // 若Ajax处理失败后返回的信息
clearReleasing();
SimplePop.alert(data.msg);
},
success : function(data) {// ajax返回的数据
clearReleasing();
SimplePop.confirmS(data.msg, {

type: "error",
confirm: function() {
// ajax返回的数据
var searchParams = getSearchParams("search");
var url = "getWaveMainPage?"+_csrfName+"="+_csrfValue+"&clearChooseNum=1";
goBackList(url,searchParams,"POST");//刷新页面
}
});
}
});
}


二、

--后台:控制层
@RequestMapping(value = "/insert" , method = {RequestMethod.GET , RequestMethod.POST })
@ResponseBody
public Map<String,Object> insert(***DO bean) throws Exception{
Map<String,Object> map = new HashMap<String,Object>();

try {
int res = ***Consumer.insert(bean);
if(res > 0){
map.put(ItemContants.CODE, ItemContants.SUCCESS_CODE);
map.put(ItemContants.MESSAGE, ItemContants.SUCCESS_MESSAGE);
}else if(res == -1){
map.put(ItemContants.CODE, ItemContants.ERROR_INSERT_CODE);
map.put(ItemContants.MESSAGE, ItemContants.ERROR_INSERT_ITEMMAIN_MSG);
}else{
map.put(ItemContants.CODE, ItemContants.ERROR_INSERT_CODE);
map.put(ItemContants.MESSAGE, ItemContants.ERROR_INSERT_MESSAGE);
}
} catch (Exception e) {
e.printStackTrace();
map.put(ItemContants.CODE, ItemContants.ERROR_INSERT_CODE);
map.put(ItemContants.MESSAGE, ItemContants.ERROR_INSERT_MESSAGE);
}
return map;
}

--前台:jsp页面
$.ajax({
url:"insert",
type:"post",
data:{
id:$("#id").val(),
name:$("#name").val(),
},
dataType:"json",
success:function(r){
console.info(r);
if(r.code == '000000'){
SimplePop.confirm("插入成功! ", {
type: "error",
confirm:function(){
window.location.href=window.location.href;//刷新页面
}
});


}else{
SimplePop.alert(r.msg);
}
},
error:function(r){
SimplePop.alert(r.msg);
}
})

三、

@P--后台:控制层OST
@Path("/modify")
@Produces("application/json;charset=utf-8;")
@Consumes("application/json;charset=utf-8;")
@Override
public JsonResult modify(***DO bean,@HeaderParam("sessionId") String sessionId) {
JsonResult result = JsonResult.createFalied("数据为空");
SystemUserInfoT u = CacheUtils.get(SystemUserInfoT.class, sessionId);
if (u == null || u.getAccount() == null) {
result=JsonResult.createSuccess();
result.setMsg("用户信息为空");
result.setReturnCode(-1);
result.addData("");
return result;
}
result = shipLineConsumer.modify(bean);
return result;
}

--前台:html页面
function toSaveFun(layerIndex,table) {
var d = {};
var t = $('#gc-editDlg').find("form").serializeArray();
$.each(t, function () {
d[this.name] = this.value;
});
$.ajax({
type: "POST",
contentType:"application/json; charset=utf-8",
url: '***/modify',
data:JSON.stringify(d),
dataType: "json",
error: function (result) {
layer.msg("处理失败!");
},
success: function (result) {
if(result.returnCode==1){
layer.msg("保存成功!");
layer.close(layerIndex);
table.reload();
}else{
layer.msg(result.msg);
layer.close(layerIndex);
}
}
});
}
-------------------------------------

$.ajax({
url:sslectPage,
type:"GET",
data:getParams(),
error : function(msg) {
clearLoading();
alert("数据错误!");
},
success :function(msg) {
clearLoading();
****
setTimeout(table("sample-table-2"), 100);
}
});
function getParams(){
var params = {};
var page = $('#pageForm').serializeArray();
var search = $("#search").serializeArray();
for (var i = 0, len = page.length; i < len; i++) {
params[page[i].name] = page[i].value;
}
if(isSearch){
for (var i = 0, len = search.length; i < len; i++) {
params[search[i].name] = search[i].value;
}
}
return params;
}

四、

@ResponseBody
@RequestMapping(value = { "***/selectPage'" }, method = {RequestMethod.GET, RequestMethod.POST })
public Map<String,Object> splitPackage(ModelMap model, @ModelAttribute Page<***DO> page,
OrderSearchDTO bean,@RequestParam("number") String number,@RequestParam("list") String list) throws Exception{
*******
try{
JSONArray items = JSONArray.fromObject(list);
List<Map> itemList = JSONArray.toList(items,Map.class);
log.info("----->>>>itemInfoList:" + itemInfoList);
if(itemInfoList != null && itemList.size() > 0){
for(int i = 0;i < itemList.size();i ++){
Map<String,Object> itemMap = itemList.get(i);

itemMap.put("id",itemMap.get("id").toString());
          itemMap.put("name",itemMap.get("name").toString());


****
}
***

}
}catch (Exception e){
log.error("----->>>>Exception:" + e);
e.printStackTrace();
map.put("code","1");
map.put("msg", e.getMessage());
return map;
}
***
return map;
}


$.ajax({
url : '**/selectPage',
type : "post",
data:{"number":number,"list":JSON.stringify(itemList)},
dataType:"json",
success:function(data){
****
}
});



五、
---后台
@GET
@Path("***/submit")
@Produces("application/json")
@Override
public JsonResult submit(@QueryParam("rowdata") String rowdata,@QueryParam("add_data") String add_data,@QueryParam("update_data") String update_data,
@QueryParam("delete_data") String delete_data,@HeaderParam("sessionId") String sessionId)
{
JsonResult result = JsonResult.createFalied("数据为空");
try{
JSONObject o = JSONObject.parseObject(rowdata);
String id=o.getString("id");
String name=o.getString("name");
      JSONObject  o = JSONObject.parseObject(add_data);
         String id2=o.getString("id2");
         String name2=o.getString("name2");
........

********
result = JsonResult.createSuccess("订单整合成功!");
result.addData(bean);
}catch(Exception e){
log.error("e", e);
// result.addData(returnpage);detailMessage "java.lang.Exception: G位货架商品(C450,)库存不足,已回滚" (id=138)
result = JsonResult.createFalied("错误提示:" + e.getMessage().toString().replace("java.lang.Exception: ", ""));
}
return result;
}


---html页面
var data = [
{name:"rowdata",value:rowdata},
{name:"add_data",value:add_},
{name:"update_data",value:update_},
{name:"delete_data",value:delete_}

];
//开始执行保存操作
$.ajax({
url: '***/submit',
type: 'GET',
dataType: 'json',
data: data,
async: false,
success: function (result) {
if(result.msg=='订单整合成功!')
{
if(result.data[0].status == 'SUCCESS')
{
var msg = '审核数据完成!共审核数据:'+result.data[0].handelNumber+'条,总订单:'+result.data[0].orderNumber+'条,重复订单:'+result.data[0].duplicaNumber+'条';
if(result.data[0].duplicaNumber>0)
{
msg += ',重复订单号:'+result.data[0].orders+'未通过审核!';
}
layer.alert(msg);
}else
{
layer.alert('审核失败,请联系管理员');
}
}
else
{
layer.alert(result.msg);
}
OrderIntegration_table.reload();
},
error: function (result) {
alert("处理失败");
}
})


六、

控制层
@GET
@Path("/export/{sessionId}/{exportCondition}")
@Produces("application/vnd.ms-excel; charset=UTF-8")
@Override
public Response export(@PathParam("exportCondition") String exportCondition,@PathParam("sessionId") String sessionId){
Map<String,Object> bean = new HashMap<>();
SystemUserInfoT u = CacheUtils.get(SystemUserInfoT.class, sessionId);
bean.put("enterpriseid", u.getEnterpriseid().longValue());

JSONObject j= JSONObject.fromObject(exportCondition);
if(!"null".equals(j) && !UtilHelper.isEmpty(j)){
if(UtilHelper.isNoEmpty(j.getString("id"))){
bean.put("whid", j.getString("id"));
}
if(UtilHelper.isNoEmpty(j.getString("name"))){
bean.put("clientcode", j.getString("name"));
}
}

Workbook workbook = reportFormConsumer.export(bean);
ByteArrayOutputStream baos = null;
try {
baos = new ByteArrayOutputStream();
workbook.write(baos);
} catch (Exception e) {
e.printStackTrace();
}
ResponseBuilder response = Response.ok(baos.toByteArray());
String fileName = null;
try {
fileName = new String(("***表.xls").getBytes("UTF-8"), "ISO-8859-1");//输出中文名字的表名称
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
response.header("Content-Disposition","attachment; filename=" + fileName);
response.encoding("UTF-8");
return response.build();
}


html页面-rest项目

var exportCondition = '{id:"'+formData.id+'",name:"'+formData.name+'"}';//注意数据要拼接引号转成字符串
function exportReportForm(){
    var sessionId = GetQueryString("sessionId");

if(exportCondition==null || exportCondition==''){
exportCondition = 'null';
}
window.location.href = "***/export" + "/" + sessionId + "/" + exportCondition;
}

function GetQueryString(name){
var cookies = document.cookie.split(";");
for(var i=0; i<cookies.length; i++){
if(cookies[i].indexOf(name)!=-1){
return cookies[i].substring(cookies[i].indexOf("=")+1);
}
}
return null;
}

七、

控制层
@POST
@Path("/update")
@Produces("application/json")
@Override
public JsonResult createOrder(String data,@HeaderParam("sessionId") String sessionId){//变量data可随意命名

JsonResult result = JsonResult.createFalied("数据为空");
Map<String, Object> resultMap = new HashedMap();
try {
Map<String, Object> reqMap = new HashedMap();
   JSONObject jsonObject = JSONObject.fromObject(data);
      reqMap.put("ordernumber", jsonObject.getString("ordernumber"));
    reqMap.put("id", jsonObject.getString("id"));
**DO ***Do = **FormConsumer.getBatchOrderMain(reqMap);
}catch (Exception e){
log.error("e", e);
result.setMsg("*************!");
result.setReturnCode(-1);
result.addData("");
return result;
}
result=JsonResult.createSuccess();
result.setMsg(resultMap.get("errorMsg").toString());
result.setReturnCode(1);
result.addData("");
log.info("***********!");
return result;

}


html页面
$.ajax({
type:"POST",
dataType:"json",
url:'***/deltete,
data: JSON.stringify({"ordernumber": ordernumber,"id": id}),
success: function(result) {
layer.alert(result.msg);
table.reload();
},
error: function(result) {
layer.alert(result.msg);
table.reload();
}
});
posted @ 2018-05-09 14:38  军999  阅读(206)  评论(0)    收藏  举报