2

我正在使用带有 Spring 框架的 Java。给定以下网址:

www.mydomain.com/contentitem/234

/contentitem/{numeric value}我需要使用作为参数传递给控制器​​的“数值”来映射所有映射到给定控制器的请求。

现在在我的 servlet 容器 xml 中,我有类似于以下的简单映射:

...
<entry key="/index.html">
   <ref bean="homeController" />
</entry>
...

我只是想知道我需要在映射中添加什么才能实现我所描述的?

编辑:我暂时不接受答案,因为我似乎无法弄清楚如何在我的 web.xml 中进行映射(我正在使用下面的 axtavt 答案中描述的注释)。如何在我的中添加适当<url-pattern>..</url-pattern>的,<servlet-mapping>以便正确获取“/contentitem/{numeric_value}”的请求?谢谢!

4

3 回答 3

4

可以使用基于注解的控制器配置来完成(参见15.3 实现控制器):

@Controller
public class ContentItemController {

    @RequestMapping("/contentitem/{id}")
    public ModelAndView contentItem(@PathVariable("id") int id) {
        ...
    }
}
于 2010-02-18T18:27:39.277 回答
3

尝试使用@RequestMapping 和@PathVariable

@RequestMapping(value="/contentitem/{value}", method=RequestMethod.GET)
public String demo(@PathVariable(value="nvalue") String name, ModelMap map) {

int intValue = Integer.parseInt(nvalue);

// Do manipulation

return "something"; // Forward to something.jsp
}

观看此Spring MVC 框架教程

于 2013-06-14T23:49:46.110 回答
0

您必须导入org.springframework.stereotype.Controller.

于 2010-05-31T07:29:20.690 回答