org.springframework.stereotype.Controller注解類型用于指示Spring類的實(shí)例是一個(gè)控制器亦鳞。
@Controller注解
Spring使用描述機(jī)制來(lái)找到應(yīng)用程序中所有基于注解的控制器類。為保證Spring能找到控制器:
1侨嘀、SpringMVC配置文件中:
<beans
...
xmlns:context="http://www.springframework.org/schema/context"
...
</beans>
2、<context:comonent-xcan/>中指定控制器類的基本包捂襟。
<context:component-scan base-package="com.lxx.Controller"/>org.springframework.web.bind.annotation.RequestMapping
@RequestMapping注解類型映射的URI與方法咬腕。
映射一個(gè)請(qǐng)求和方法(也可注解控制器類)。@RequestMapping注解的方法將成為一個(gè)請(qǐng)求處理方法葬荷。注解的value屬性將URI映射到方法涨共。
可在請(qǐng)求處理方法中出現(xiàn)的參數(shù)類型:
1纽帖、 javax.servlet.ServletRequest或 javax.servlet.http.HttpServletRequest
2、 javax.servlet.ServletResponse或 javax.servlet.http.HttpServletResponse
3煞赢、 javax.servlet.http.HttpServletSession
4抛计、 org.springframework.web.context.request.WebRequest或org.springframework.web.context.request.NativeWebRequest
5、 java.util.Local
6照筑、 java.io.InputStream或java.io.Reader
7吹截、 java.io.OutputStream或java.io.Writer
8、 java.security.Principal
9凝危、 HttpEntity<?>
10波俄、java.util.Map/org.springframework.ui.Model
11、org.springframework.ui.ModelMap
12蛾默、org.springframework.web.servlet.mvc.support.RedirectAttributes
13懦铺、org.springframework.validation.Errors
14、org.springframework.validation.BindingResult
org.springframework.ui.Model支鸡,不是一個(gè)Servlet API類型冬念,而是一包含Map的SpringMVC類型。每次調(diào)用請(qǐng)求處理方法時(shí)牧挣,SpringMVC都創(chuàng)建Model對(duì)象并將其Map注入到各種對(duì)象急前。
- 請(qǐng)求處理方法可返回的類型對(duì)象:
1、ModelAndView
2瀑构、Model
3裆针、Map包含模型的屬性
4、View
5寺晌、代表邏輯視圖名的String
6世吨、void
7、Callable
8呻征、DeferredResult
9耘婚、提供對(duì)Servlet的訪問(wèn),以響應(yīng)HTTP頭部和內(nèi)容HttpEntry或ResponseEntity對(duì)象
10陆赋、其他任意類型沐祷,Spring將其視作輸出給View的對(duì)象模型。