1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > js转Java的list_JS之JSON字符串到后台用Java转换成List实体类

js转Java的list_JS之JSON字符串到后台用Java转换成List实体类

时间:2023-08-29 23:59:58

相关推荐

js转Java的list_JS之JSON字符串到后台用Java转换成List实体类

重点:JAVA之JSON字符串转换LIST实体类

​​​​​​​Listlist = new ArrayList();

list = JSONObject.parseArray(strResult, ExamListInVO.class);

下面展示实例

1、静态页面

个人简历:

起止年月

在何处任何职(工种)

2、js封装参数并提交

//获取工作经历部分的列表数据

function getContractResumeData(){

var contractResumeArray=[];

var tr = $("#crList tr");

tr.each(function(index){

var isCrTableTr = $(this).attr("data-type");

if(isCrTableTr !== "cr"){

return ;

}

var tempCr = {};

tempCr["startEndDate"]=$(this).find("input[name='startEndDate']").val();

tempCr["workContent"]=$(this).find("input[name='workContent']").val();

contractResumeArray.push(tempCr);

});

return contractResumeArray;

}

//提交表单

function saveSubmit() {

var signupFormData=$('#signupForm').serialize();

var crStr=JSON.stringify(getContractResumeData());

$.ajax({

cache : true,

type : "POST",

url : "/contract/contractInfo/update",

data : signupFormData+"&crStr="+crStr,// 你的formid

async : false,

error : function(request) {

parent.layer.alert("Connection error");

},

success : function(data) {

if (data.code == 0) {

parent.layer.msg("操作成功");

parent.reLoad();

var index = parent.layer.getFrameIndex(window.name); // 获取窗口索引

parent.layer.close(index);

} else {

parent.layer.alert(data.msg)

}

}

});

}

3、java后端接收json字符串并转为List

/**

* 保存

*/

@ResponseBody

@PostMapping("/save")

@RequiresPermissions("contract:contractInfo:add")

public R save( ContractPartyDO contractParty,String crStr){

String contractId=UUID.randomUUID().toString().replaceAll("-","");

contractParty.setContractId(contractId);

int res2=contractPartyService.save(contractParty);

//保存乙方工作经历

ListcrList = new ArrayList();

crList=JSONObject.parseArray(crStr, ContractResumeDO.class);

int count=0;

ContractPartyDO cpb=contractPartyService.getByContractId(contractId);

for (ContractResumeDO cr : crList) {

//如果获取到该行工作经历为空,也要保存,留出空白行方便用户以后的编辑。

cr.setPartyBId(cpb.getId());

count+=contractResumeService.save(cr);

}

if(res1>0 && count==crList.size()){

return R.ok();

}

return R.error();

}

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。