試題分析:D,BeanNameViewResolver:這個視圖解析器跟XmlViewResolver基本相同,它是通過把返回的邏輯視圖名稱去匹配定義好的視圖bean對象
@ModelAttribute是springMVC重要屬性,它可以綁定請求參數到命令對象,暴露表單引用對象為模型數據,暴露@RequestMapping 方法返回值為模型數據,上述表述都正確,因此選擇D
MVC設計模式是23種基本設計模式之一,它的最主要特點是把顯示和數據分離
屬於識記內容。 Controller屬於控制器,View屬於視圖層,LigicLayout在這里屬於干擾性選項。
本題考學生對@RequestParam的使用。因為頁面代碼中的前端參數名稱為inputStr,而B選項中的注解指定了參數名稱為inputString,因此運行時會報錯。C選項中注解的參數是int基本類型,但是required=false,這時不傳參會報錯,因為不傳值時會把null值賦值給int,這樣不可以。 因此正確答案為AD。
被@ModelAttribute注釋的方法會在此controller每個方法執行前被執行,所以ABC說法都正確.
此題主要考查Controller的執行流程。首先系統加載的時候解析注解,當用戶發送請求到DispatcherServlet會找到相適應的處理器適配器HandlerAdapter,進而找到具體的Controller業務方法,執行業務方法之后得到ModelAndView對象,再通過DispatcherServlet找到相適應的視圖解析器,最后View 會根據傳進來的 Model 模型數據進行渲染。因此ABC是正確的選項
此題主要考查靜態資源的訪問方式。 SpringMVC訪問靜態資源的三種方式: 方案一:激活Tomcat的defaultServlet來處理靜態文件(要在DispatcherServlet的前面配置) 方案二:在spring3.0.4以后版本提供了<mvc:resources mapping="/images/**" location="/images/" /> 方案三:使用<mvc:default-servlet-handler/>。因此AB是正確的選項