웹 에서 JS 페이지 에 JSON 데 이 터 를 보 내 백 엔 드 분석
3246 단어 설정 해석
프론트 JS 파일 코드
row = $("#dgAssessmentAdd").datagrid('getRows');// datagrid
//
/* var arr = new Array();
for(var i = 0; i < row.length ; i++){
jsonRow = JSON.stringify(row[i]);
arr.push(jsonRow);
}*/
if (row.length) {
$.ajax(
{
type: 'POST',
url: "../ExamController/insertExam",
dataType: 'json',
async : false,
data: {
'orgId' : assesmentOrgId,
'examYear' : assesmentYear,
'arrayList' : JSON.stringify(row) // json
},
설명: 저 는 일부 코드 만 캡 처 합 니 다. 이 부분 코드 는 간단 합 니 다. 주석 을 직접 볼 수 있 습 니 다.첫 번 째 줄 은 컨트롤 의 데 이 터 를 가 져 온 다음 JSON. stringify (row) 로 데 이 터 를 JSON 형식 으로 변환 하여 배열 로 전송 하 는 것 입 니 다.브 라 우 저 를 통 해 다음 과 같은 구체 적 인 형식 을 볼 수 있 습 니 다.
arrayList:[{"examCode":"condition_wall_system","examName":" "},{"examCode":"condition_work_license","examName":" "},{"examCode":"condition_construct_account","examName":" "}]
이것 은 JSON 형식의 문자열 입 니 다. 멍 들 지 마 세 요. 그 는 문자열 일 뿐 배경 에 대응 하 는 Stirng 형식 으로 받 아야 합 니 다.배경 에 대응 하 는 자바 코드 를 살 펴 보 겠 습 니 다.
@RequestMapping(value = "/insertExam", method = { RequestMethod.POST })
public @ResponseBody BaseResult insertExam(String orgId, String examYear,
String arrayList, HttpSession httpsession) {//
BaseResult baseResult = new BaseResult();
Gson gson = new Gson();
// Exam
List listExamFront = gson.fromJson(arrayList,
new TypeToken>() {
}.getType());
List listExamToServ = new ArrayList();
// model exam
for (ExamModel examModelTemp : listExamFront) {
listExamToServ.add(ConvertExam(examModelTemp, httpsession));
}
// listExamServ
try {
baseResult = examService
.insertExam(listExamToServ, orgId, examYear);
} catch (Exception e) {
baseResult.setFlag(false);
baseResult.setInfo(" !");
logger.error(LOG + ": , :" + e.getMessage());
}
return baseResult;
}
설명: 배경 수신 매개 변 수 는 String 형식 이 고 array List 는 이 대상 의 이름 이 며 뒤 에는 많은 문자열 이 있 음 을 알 수 있 습 니 다.
그러면 문자열 해석 을 시작 해 보도 록 하 겠 습 니 다.
JAVAbean 클래스 로 변환 하려 면 Gson 도구 클래스 를 사용 해 야 합 니 다. 이 문서 의 Gson from JSon () 방법 을 참고 하 십시오.우리 가 대응 하 는 bean 클래스 는 ExamModel 이 고 from JSon () 이라는 방법 을 직접 사용 합 니 다.
List listExamFront = gson.fromJson(arrayList,new TypeToken>() {
}.getType());
첫 번 째 매개 변 수 는 문자열 이름 입 니 다. 목록 이기 때문에 List 로 받 습 니 다.이렇게 하면 json 문자열 의 모든 대상 을 ExamModel 의 해당 대상 필드 에 표시 할 수 있 습 니 다.그럼 이 list 는 여러 개의 ExamModel 대상 의 집합 을 저장 합 니 다.(단일 bean 대상 을 매 핑 하면 위 문서 의 첫 번 째 종 류 를 참고 할 수 있 습 니 다.) 그리고 집합 대상 을 조작 하여 데이터 베 이 스 를 삽입 하거나 수정 할 수 있 습 니 다. 자신 이 하고 싶 은 작업 을 할 수 있 습 니 다.