我希望客户端和服务器应用程序使用REST服务彼此交谈。我一直在试图用Spring MVC来设计它。我期待这样的事情:如何设计Spring MVC REST服务?
- 客户端执行POST休息服务呼叫
saveEmployee(employeeDTO, companyDTO)
- 服务器已在其控制
saveEmployee(employeeDTO, companyDTO)
类似的POST方法可以这样使用Spring MVC做了什么?
我希望客户端和服务器应用程序使用REST服务彼此交谈。我一直在试图用Spring MVC来设计它。我期待这样的事情:如何设计Spring MVC REST服务?
saveEmployee(employeeDTO, companyDTO)
saveEmployee(employeeDTO, companyDTO)
类似的POST方法可以这样使用Spring MVC做了什么?
是的,这可以完成。下面是一个简单的例子(与Spring注解)一个RESTful控制器:
@Controller
@RequestMapping("/someresource")
public class SomeController
{
@Autowired SomeService someService;
@RequestMapping(value="/{id}", method=RequestMethod.GET)
public String getResource(Model model, @PathVariable Integer id)
{
//get resource via someService and return to view
}
@RequestMapping(method=RequestMethod.POST)
public String saveResource(Model model, SomeResource someREsource)
{
//store resource via someService and return to view
}
@RequestMapping(value="/{id}", method=RequestMethod.PUT)
public String modifyResource(Model model, @PathVariable Integer id, SomeResource someResource)
{
//update resource with given identifier and given data via someService and return to view
}
@RequestMapping(value="/{id}", method=RequestMethod.DELETE)
public String deleteResource(Model model, @PathVariable Integer id)
{
//delete resource with given identifier via someService and return to view
}
}
注意,有从http请求(@RequestParam,@RequestBody,后参数的自动映射处理输入数据的多种方式一个豆等)。为了更长时间,也许更好的解释和教程,尝试谷歌搜索'rest spring mvc'(不含引号)。
客户端(浏览器)-stuff通常使用JavaScript和AJAX完成,我是一个服务器后端程序员,并且不知道很多关于JavaScript的知识,但是有很多库可用于帮助它,例如看到jQuery
是的,休息是很容易在使用Spring MVC实现。
@RequestMapping(value="/saveEmploee.do",method = RequestMethod.POST)
@ResponseBody
public void saveEmployee(@RequestBody Class myclass){
//saving class.
//your class should be sent as JSON and will be deserialized by jackson
//bean which should be present in your Spring xml.
}
这里看起来像一个很好的例子:http://www.stupidjavatricks.com/?p=54 – bwobbones 2011-01-30 07:24:42
@bwobbones,则应将您的评论的答案;) – 2011-01-30 07:29:59
@RC,不想声称别人的工作... – bwobbones 2011-03-21 13:32:55