2010-08-10 40 views
5

我想要做的是有一個共同的服務類,它有各種方法,如「搜索」「retriveByID」等 理想情況下,這個類將消耗服務參數和填充請求對象,並交給相應的數據源處理程序。我可以使用Spring的@RequestMapping和BeanNameUrlHandlerMapping相互連接來將URL映射到方法嗎?

我想使用不同的請求處理程序將一個服務類實例化爲一個Spring bean,具體取決於正在搜索的域對象。然後使用Bean BeanNameUrlHandlerMapping根據URL調用不同的Service類。

<bean name="/sequence/*" class="org.dfci.cccb.services.SearchServiceImpl"> 
    <property name="searchHandler"> 
    .... 

我的問題是,當我嘗試這樣做時,我不能使用方法級別的RequestMapping註釋來選擇服務類的相應方法。

@RequestMapping("*/search/") 
QueryResult search(... 

或者可以通過bean定義注入註釋值?

UPDATE 也有關於這一主題SpringSource的文章: http://blog.springsource.com/2008/03/23/using-a-hybrid-annotations-xml-approach-for-request-mapping-in-spring-mvc/

回答

3

非常驚訝地得知,它的實際工作。只是刪除了結尾的斜線:

@RequestMapping("*/search") 

而這也工作:

@RequestMapping("search") 
+0

這就是我想了,但是在我的文檔無法找到它。 – skaffman 2010-08-10 18:43:46

+1

你甚至不需要這個工程的通配符: @RequestMapping(「/ search」) – nialloc 2010-08-10 21:05:22

相關問題