我正在映射URL /modules/tips/SOME_ID/small以访问ID为SOME_ID的提示,并使用视图small.jsp对其进行呈现。以下代码对此非常有用,但是我不得不在两个地方重复字符串modules/tips。我可以确定Spring MVC对此似乎没有约定。除了使用常数以外,还有更好的方法来减少重复吗?

@Controller
public class TipsController{

  @RequestMapping(value="/modules/tips/{tipId}/{viewName}",method=RequestMethod.GET)
  public ModelAndView get(
    @PathVariable String tipId,
    @PathVariable String viewName) {
    Tip tip = findTip(tipId);
    return new ModelAndView("modules/tips/" + viewName,"tip",tip);
  }
}

最佳答案

您认为名称映射逻辑看起来太“习惯”了,因此Spring几乎无法为其提供一些内置支持。
Hovewer,从理论上讲,您可以实现自定义ModelAndViewResolver并将其注册到AnnotationMethodHandlerAdapter

09-27 06:20