spring mvc ajax 请求,如何处理Spring MVC中的Ajax请求?

在Spring MVC(我与3.0.2工作),两个HTTP方法总是(或主要是因为在我看来)保留(即与适当的处理程序映射),这是GET and POST如如何处理Spring MVC中的Ajax请求?

@RequestMapping(method=RequestMethod.GET)

public String showForm(Map model)

{

//Usually retrieve data from the database when the page is loaded.

return "admin_side/Temp";

}

上面的方法在GET请求时被调用。

@RequestMapping(method=RequestMethod.POST)

public String onSubmit(@ModelAttribute("tempBean") @Valid TempBean tempBean, BindingResult error, Map model, HttpServletRequest request, HttpServletResponse response)

{

//Perform some basic operations with the database like insert, update or delete when the form is submitted (by clicking a submit button or so).

return "admin_side/Temp";

}

上述方法时的POST请求时被调用。假设Spring控制器被指定为@RequestMapping(value="admin_side/Temp")注释。

现在,如果我需要使用Ajax并且需要执行与前面的方法不同的功能,会发生什么?我既不能处理与GET方法也不与POST方法的另一种方法,因为有已被映射处理程序(包括HTTP方法,GET和POST保留分别处理showForm()和onSubmit()方法)。

为了演示起见,我用了method=RequestMethod.PUT方法使用Ajax如

@RequestMapping(method=RequestMethod.PUT)

public @ResponseBody String getStateList(@ModelAttribute("tempBean") @Valid TempBean tempBean, BindingResult error, HttpServletRequest request, HttpServletResponse response)

{

return "Message";

}

和它的工作如预期,但我觉得它应该不是最好的解决方案。如果你有这样一个场景(实际上,它对我来说似乎很平常),你如何处理Spring MVC中的Ajax请求?我应该(总是)使用RequestMethod.PUT? (或什么是春季适合于Ajax的最好的HTTP方法?)

有没有一种方法来映射多个方法与在同一个控制器相同的HTTP方法(一个明显的答案应该是没有)?同样,当您需要在Spring MVC中使用Ajax时,您使用了哪种方法?希望你遵循我的意思!对于我来说,我的英语很困难,因为我的英语处于初始阶段。

2012-08-05

Tiny

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值