Controller层:
@RequiresPermissions("sys:user:view")
@RequestMapping(value = { "sendMsg" }, method = RequestMethod.POST)
@ResponseBody
public Map<String, Object> sendMsg(String userName, String mobile, String content,
HttpServletRequest request, HttpServletResponse response,
Model model) {
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd");
String sendTime = df.format(new Date());
String tempc = "【"+Global.getConfig("dxsignature")+"】"+content;
String xml = WebServiceUtil.SendMessage(mobile,tempc,sendTime).toString();
Map<String, Object> resultMap = new HashMap<String,Object>();
try {
Document doc = DocumentHelper.parseText(xml);
Element rootElt = doc.getRootElement();
String returnstatus = rootElt.elementText("returnstatus").trim();
String message = rootElt.elementText("message").trim();
resultMap.put("status", returnstatus);
resultMap.put("message", message);
} catch (DocumentException e) {
e.printStackTrace();
}
return resultMap;
}
Jsp:
$.ajax({
url:"${ctx}/sys/user/sendMsg",
type:"POST",
dataType:"json",
data:$("form").serialize(),
//jquery的ajax方法-序列化表单值,创建 URL 编码文本字符串
success:function(data){
var status = data.status;
var message = data.message;
if(status=="Success")
alert("发送成功!");
else
alert(message);
},
error:function(data){
alert("发送失败!");
}
} );
此代码是在项目系统中一个短信发送的功能接口。
在jsp与controller交互时,除了Ajax外,在url中带参 如 window.open(“ url?name=? ”);
controller层的方法中可以在参数内容中如 public String toMe(String name,Request request,Response response...)
在参数列表中与url代参值同名可以接收。还有就是通过表单from直接传递。