SpringMVC getter setter最佳实践
我有以下代码,我正在用SpringMVC在PoC上执行SpringMVC getter setter最佳实践,spring,spring-mvc,Spring,Spring Mvc,我有以下代码,我正在用SpringMVC在PoC上执行 @RequestMapping(value = "/getUser", method = RequestMethod.GET) @ResponseBody public User data(Locale locale, Model model, User user) { logger.info("getUser controller loaded..."); return userService.getById(user.g
@RequestMapping(value = "/getUser", method = RequestMethod.GET)
@ResponseBody
public User data(Locale locale, Model model, User user) {
logger.info("getUser controller loaded...");
return userService.getById(user.getId());
}
@RequestMapping(value = "/setUser", method = RequestMethod.GET)
@ResponseBody
public void data(Locale locale, Model model, User user) {
logger.info("setUser controller loaded...");
userService.addUser(user);
}
如您所见,这会产生一个问题,因为两个方法签名是相同的。由于注释似乎是派生功能而不是方法名,所以最好的拆分方法是什么。方法名可以是什么?SpringMVC中使用setter和getter控制器的最佳实践方法是什么?实际上不是最佳实践,但我使用了以下方法: gets的方法名称-列表(对于列表)或显示(对于项) 集合的方法名称-
更新
或创建
,取决于您是更新项目还是创建新项目
方法名称可以是任何东西,它是<代码> @请求映射< /代码>注释,确保正确的方法被调用,尽管基于REST的映射方法被认为是一个很好的实践,但是考虑到像用户一样的域,REST控制器看起来是这样的:
@RequestMapping("/users")
@Controller
public class UserController{
@RequestMapping(produces="text/html")
public String list(){
}
@RequestMapping(value="/{id}", produces="text/html")
public String show(){
}
@RequestMapping(method=RequestMethod.POST, produces="text/html")
public String create(@Valid User user, BindingResult bindingResult, Model model){
}
@RequestMapping(method=RequestMethod.PUT, produces="text/html")
public String update(@Valid User user, BindingResult bindingResult, Model model){
}
@RequestMapping(value="/{id}", method=RequestMethod.DELETE, produces="text/html")
public String delete(...){
}
}