(最近做的东西的笔记,以后用到其他方法再进行添加)
第一部分 打开新页面加载静态数据
1 ModelMap
Controller:
@RequestMapping(value = "show.do", method = RequestMethod.GET)
public String show(HttpServletRequest request,HttpServletResponse response, ModelMap model) {
//调用ModelMap的addAttribute方法
return "";
}
JSP:
<c:forEach items="${requestScope.models}" var="model">
<tr rowSelected()" onMouseOver="rowOver()" onMouseOut="rowRemove()">
<td>${model.data}</td>
</tr>
</c:forEach>
第二部分 动态加载页面数据
1 Ajax方法
JavaScript:
function refresh(param) {
$.ajax({
url : '...',
data : {
"param" : param
},
dataType : 'json',
success : function(result) {
//process
},
error : function(xhr, status, error) {
console.error(error);
}
})
}
Controller:
@RequestMapping(value="...",method= RequestMethod.GET,produces = {"text/html;charset=utf-8"})
public @ResponseBody String getData(HttpServletRequest request,
HttpServletResponse response, ModelMap model) {
String param=request.getParameter("param");
try {
param = new String(param.getBytes("iso8859-1"), "utf-8");
//process
Gson gson=new Gson();
return gson.toJson(result);
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
return null;
}
}
第三部分 常见问题
1 服务器接收到的参数为乱码
解决方案:
param = new String(param.getBytes("iso8859-1"), "utf-8");
2 传回的结果显示为乱码
解决方案:
在RequesMapping中添加produces = {"text/html;charset=utf-8"}
参考:点击打开链接