2011-11-10 53 views
0

我这是在春季已经实现了MVC我需要使用spring 3来实现Rest web服务吗?

我需要用弹簧3

使用REST Web服务的同一应用程序库的应用程序我有一个控制器类我想要的是一个RESTful Web服务

@Controller @SessionAttributes("category") 
public class CategoryController { 

private static final Log log = LogFactory.getLog(CategoryController.class); 

@Autowired 
private CategoryService categoryService; 

@Autowired 
private ItemService itemService; 

@RequestMapping("/category/categoryList.htm") 
public ModelAndView list(HttpServletRequest request, 
     HttpServletResponse response) throws Exception { 
    List<Category> list = categoryService.getAllMainCategories(); 
    Map map = new HashMap(); 
    map.put("categoryList", list); 
    map.put("category", new Category()); 
    return new ModelAndView("categoryList", map); 
} 

@RequestMapping(method = RequestMethod.POST, value = "/category/save.htm") 
public String save(HttpServletRequest request, 
     HttpServletResponse response, Category command) throws Exception { 
    log.debug("save method called" + command); 
    Category category = (Category) command; 
    System.out.println(category); 
    categoryService.saveCategory(category); 
    return "redirect:/category/categoryList.htm"; 
} 

@RequestMapping("/category/edit.htm") 
public String edit(@RequestParam String id, ModelMap model) 
     throws Exception { 
    log.debug("edit method called :" + id); 
    log.debug(Long.parseLong(id)); 
    Category cat = categoryService.getCategory(Long.parseLong(id)); 
    model.put("categoryList", categoryService.getAllMainCategories()); 
    model.put("category", cat); 
    return "categoryList"; 
} 

@RequestMapping("/category/delete.htm") 
public String remove(@RequestParam String id, ModelMap model) 
     throws Exception { 
    log.debug("remove method called " + id); 
    categoryService.deleteCategory(Long.parseLong(id)); 
    return "redirect:/category/categoryList.htm"; 
} 

@InitBinder 
protected void initBinder(WebDataBinder binder) { 
    binder.registerCustomEditor(Category.class, 
      new PropertyEditorSupport() { 
       @Override 
       public void setAsText(String text) { 
        setValue(categoryService.getCategory(Long.valueOf(text))); 
       } 
      }); 
} 

}

是CategoryController类添加删除或更新类别

ItemService和CategoryService是数据源

类别是,如ID,名称,描述等性质的域对象,

我如何写这样的REST Web服务.. ???

回答

相关问题