javascript - form表單提交,后臺(tái)實(shí)體類接收轉(zhuǎn)義問題
問題描述
問題:前臺(tái)表單用ajax提交,data為validateForm.serializeArray(),后臺(tái)用實(shí)體類接收參數(shù),&符號(hào)被轉(zhuǎn)義為&但是從request中直接取值是沒問題的,請問如何解決實(shí)體類接收到的參數(shù)的轉(zhuǎn)義問題。
代碼如下:
前臺(tái)代碼:var formData = validateForm.serializeArray();$.ajax({ type: ’POST’, cache: false, url: basepath + '/newProjectAdjustment/saveProjectAdjustmentInfo.do', data: formData, dataType: 'json', async:false, success: function (result) {if (result.success) { saveFlag = true;} else { parent.$.messager.alert('提示', result.msg != '操作成功' ? result.msg : projMessage.get('C008'), 'info');} }, error: function (result) {parent.$.messager.alert('提示', projMessage.get('C008'), 'info'); }});return saveFlag;
后端代碼:@RequestMapping(value = 'saveProjectAdjustmentInfo.do', method = RequestMethod.POST)@ResponseBodypublic AjaxJson saveProjectAdjustmentInfo(HttpServletRequest request, ProjectAdjustmentDTO projectAdjustmentInfo) throws InvocationTargetException, IllegalAccessException { Map params = FormFormatterUtil.formatFrom2Map(request); AjaxJson result = new AjaxJson(); return result;}Debug:這是實(shí)體類中接收的參數(shù):
這是request種接收的參數(shù):
問題解答
回答1:在實(shí)體參數(shù)前面加@RequestBody試試
回答2:在實(shí)體類的set方法中使用StringEscapeUtils.unescapeHtml4()就能反轉(zhuǎn)義。
