一、spring mvc起步
一)跟蹤spring mvc的請(qǐng)求
1既穆、請(qǐng)求到前端控制器servlet
2赎懦、servlet需要知道將請(qǐng)求發(fā)送到哪個(gè)控制器,所以servlet查詢(xún)一個(gè)或多個(gè)處理器映射handler mapping來(lái)確定請(qǐng)求到哪一站幻工,會(huì)根據(jù)攜帶的url信息
3励两、servlet將請(qǐng)求發(fā)送到對(duì)應(yīng)的controller
4、controller將model數(shù)據(jù)和jsp的視圖名返回servlet
5囊颅、試圖解析器將視圖名匹配為一個(gè)特定的視圖實(shí)現(xiàn)
6伐蒋、視圖的實(shí)現(xiàn)工三,將model渲染到視圖上
7迁酸、返回給瀏覽器
二)搭建spring mvc
1)配置DispatcherServlet
1)getServletMappings()會(huì)將一個(gè)或多個(gè)路徑映射到DispatcherServlet上先鱼,會(huì)處理進(jìn)入應(yīng)用的所有請(qǐng)求。
2)getServletConfigClasses():DispatcherServlet啟動(dòng)時(shí)會(huì)創(chuàng)建spring應(yīng)用上下文奸鬓,并加載配置類(lèi)WebConfig聲明的bean焙畔,如控制器、視圖解析器串远、處理器映射宏多。
@ComponentScan("spittr.web")會(huì)掃描帶有@controller注解的類(lèi),ViewResolver會(huì)查找jsp文件澡罚,給視圖名加上前綴和后綴伸但,成為視圖的所在路徑。configureDefaultServletHandling方法會(huì)將靜態(tài)資源的的請(qǐng)求轉(zhuǎn)發(fā)到默認(rèn)severlet上
3)getRootConfigClasses()返回配置servlet監(jiān)聽(tīng)器創(chuàng)建的應(yīng)用上下文bean留搔,例如中間層和數(shù)據(jù)層的組件更胖。
三)編寫(xiě)基本控制器
1)顯示home頁(yè)面:控制器只是方法上加了@RequestMapping注解的類(lèi),@Controller是為了組件掃描會(huì)自動(dòng)找到這個(gè)bean隔显,home()返回jsp文件的文件名却妨,供視圖解析器為真正的視圖
2)頁(yè)面顯示列表:傳遞數(shù)據(jù)到視圖
[1]首先需要數(shù)據(jù)訪問(wèn)的repository,其中入?yún)ong max,是id屬性最大值括眠,int count返回多少個(gè)對(duì)象彪标。
[2]Spittle的pojo
[3]控制器:在模型中放入最新的列表數(shù)據(jù)