W3Cschool
恭喜您成為首批注冊用戶
獲得88經(jīng)驗值獎勵
...Spring implements a controller in a very abstract way, which enables you to create a wide variety of controllers.
控制器作為應用程序邏輯的處理入口,它會負責去調(diào)用你已經(jīng)實現(xiàn)的一些服務。通常,一個控制器會接收并解析用戶的請求,然后把它轉(zhuǎn)換成一個模型交給視圖,由視圖渲染出頁面最終呈現(xiàn)給用戶。Spring對控制器的定義非常寬松,這意味著你在實現(xiàn)控制器時非常自由。
Spring 2.5以后引入了基于注解的編程模型,你可以在你的控制器實現(xiàn)上添加@RequestMapping
、@RequestParam
、@ModelAttribute
等注解。注解特性既支持基于Servlet的MVC,也可支持基于Portlet的MVC。通過此種方式實現(xiàn)的控制器既無需繼承某個特定的基類,也無需實現(xiàn)某些特定的接口。而且,它通常也不會直接依賴于Servlet或Portlet的API來進行編程,不過你仍然可以很容易地獲取Servlet或Portlet相關的變量、特性和設施等。
在Spring項目的官方Github上你可以找到許多項目,它們對本節(jié)所述以后的注解支持提供了進一步增強,比如說MvcShowcase,MvcAjax,MvcBasic,PetClinic,PetCare等。
@Controller
public class HelloWorldController {
@RequestMapping("/helloWorld")
public String helloWorld(Model model) {
model.addAttribute("message", "Hello World!");
return "helloWorld";
}
}
你可以看到,@Controller
注解和@RequestMapping
注解支持多樣的方法名和方法簽名。在上面這個例子中,方法接受一個Model
類型的參數(shù)并返回一個字符串String
類型的視圖名。但事實上,方法所支持的參數(shù)和返回值有非常多的選擇,這個我們在本小節(jié)的后面部分會提及。@Controller
和@RequestMapping
及其他的一些注解,共同構(gòu)成了Spring MVC框架的基本實現(xiàn)。本節(jié)將詳細地介紹這些注解,以及它們在一個Servlet環(huán)境下最常被使用到的一些場景。
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網(wǎng)安備35020302033924號
違法和不良信息舉報電話:173-0602-2364|舉報郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: