[英]How can I create a Spring controller without the use of the annotations?
我正在攻讀Spring Core認證,我對這個問題有些懷疑:
@Controller注釋用於什么? 如何在沒有注釋的情況下創建控制器?
所以我知道@Controller注釋表明一個特定的類服務於控制器的角色。 @Controller注釋充當帶注釋的類的構造型,指示其角色。 調度程序掃描這些帶注釋的類以查找映射方法,並檢測@RequestMapping注釋。
所以控制器類是這樣的:
@Controller
public class AccountController {
@RequestMapping("/listAccounts")
public String list(Model model) {...}
}
}
好的,這對我來說非常清楚,但究竟是什么意思創建一個沒有注釋的控制器? 我該怎么做? 通過XML配置還是如何?
TNX
public class AccountController extends MultiActionController {
public ModelAndView listAccounts() {
// your code
return new ModelAndView("listAccounts.bean", "msg", "As you want")
}
}
web.xml中
<servlet>
<servlet-name>dispatcher</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>dispatcher</servlet-name>
<url-pattern>*.bean</url-pattern>
</servlet-mapping>
調度員servlet.xml中
<bean name="/listAccounts.bean" class="p1.AccountController"></bean>
我遇到過這個問題: 沒有注釋的Spring MVC 3.1?
看起來你實際上可以創建一個沒有注釋的控制器(我已經和Spring一起工作了一年多而沒有遇到過這種情況,我不知道為什么人們會想要這樣做,除了認證當然是問題)以及執行此操作的方法是在dispatcher-servlet XML文件中使用特殊配置。
只是為了評論為什么有人想以編程方式或通過XML來配置Spring的原因,這是因為在運行時需要掃描所有尋找注釋的文件,因此如果我們禁用掃描並手動配置它,應用程序將可用更快地服務請求,這對於高需求的場景特征非常重要。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.