index.jsp代码
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
<!-- http://localhost:8080/crowdfunding02-admin-webui/test/ssm.html -->
<base
href="http://${pageContext.request.serverName}:${pageContext.request.serverPort}${pageContext.request.contextPath}/" />
<script type="text/javascript" src="jquery/jquery-2.1.1.min.js"></script>
<script type="text/javascript">
$(function(){
$("#btn1").click(function(){
$.ajax({
"url": "sendd/array/one.html",
"type": "post",
"data": {
"array": [5,8,12]
},
"dataType": "text",
"success": function(response){
alert(response);
},
"error": function(response){
alert(response);
}
});
});
});
</script>
</head>
<body>
<a href="test/ssm.html">测试SSM整合环境</a>
<br />
<br />
<button id="btn1">Send [5,8,12] One</button>
</body>
</html>
TestHanderl.java代码
@ResponseBody
@RequestMapping("/send/array/one.html")
public String testReceiveArrayOne(@RequestParam("array[]") List<Integer> array) {
for (Integer number : array) {
System.out.println("number="+number);
}
return "success";
}
"sendd/array/one.html" 和 @RequestMapping("/send/array/one.html"),看见多了一个d,其次,通常不推荐在controller中采用.html作为映射路径,可以重定向也可以转发,甚至可以modelandview,前端跳转。你可以去掉.html。
你这里的地址和RequestMapper的地址不一样
index.jsp代码
$("#btn1").click(function(){
$.ajax({
"url": "sendd/array/one.html",
ajax的地址sendd多了个d
TestHanderl.java代码
@ResponseBody
@RequestMapping("/send/array/one.html")
ajax请求的路径不对,你可能是没有拼接上应用的路径
路径问题,你仔细看看你的路径跳转对不对