国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 學(xué)院 > 開發(fā)設(shè)計(jì) > 正文

springmvc原理

2019-11-11 03:22:33
字體:
供稿:網(wǎng)友
SPRing MVC工作流程圖圖一圖二 Spring工作流程描述      1. 用戶向服務(wù)器發(fā)送請(qǐng)求,請(qǐng)求被Spring 前端控制Servelt DispatcherServlet捕獲;      2. DispatcherServlet對(duì)請(qǐng)求URL進(jìn)行解析,得到請(qǐng)求資源標(biāo)識(shí)符(URI)。然后根據(jù)該URI,調(diào)用HandlerMapping獲得該Handler配置的所有相關(guān)的對(duì)象(包括Handler對(duì)象以及Handler對(duì)象對(duì)應(yīng)的攔截器),最后以HandlerExecutionChain對(duì)象的形式返回;      3. DispatcherServlet 根據(jù)獲得的Handler,選擇一個(gè)合適的HandlerAdapter。(附注:如果成功獲得HandlerAdapter后,此時(shí)將開始執(zhí)行攔截器的preHandler(...)方法)       4.  提取Request中的模型數(shù)據(jù),填充Handler入?yún)ⅲ_始執(zhí)行Handler(Controller)。 在填充Handler的入?yún)⑦^程中,根據(jù)你的配置,Spring將幫你做一些額外的工作:      HttpMessageConveter: 將請(qǐng)求消息(如Json、xml等數(shù)據(jù))轉(zhuǎn)換成一個(gè)對(duì)象,將對(duì)象轉(zhuǎn)換為指定的響應(yīng)信息      數(shù)據(jù)轉(zhuǎn)換:對(duì)請(qǐng)求消息進(jìn)行數(shù)據(jù)轉(zhuǎn)換。如String轉(zhuǎn)換成Integer、Double等      數(shù)據(jù)根式化:對(duì)請(qǐng)求消息進(jìn)行數(shù)據(jù)格式化。 如將字符串轉(zhuǎn)換成格式化數(shù)字或格式化日期等      數(shù)據(jù)驗(yàn)證: 驗(yàn)證數(shù)據(jù)的有效性(長(zhǎng)度、格式等),驗(yàn)證結(jié)果存儲(chǔ)到BindingResult或Error中      5.  Handler執(zhí)行完成后,向DispatcherServlet 返回一個(gè)ModelAndView對(duì)象;      6.  根據(jù)返回的ModelAndView,選擇一個(gè)適合的ViewResolver(必須是已經(jīng)注冊(cè)到Spring容器中的ViewResolver)返回給DispatcherServlet ;      7. ViewResolver 結(jié)合Model和View,來渲染視圖      8. 將渲染結(jié)果返回給客戶端。Spring工作流程描述    為什么Spring只使用一個(gè)Servlet(DispatcherServlet)來處理所有請(qǐng)求?     詳細(xì)見J2EE設(shè)計(jì)模式-前端控制模式    Spring為什么要結(jié)合使用HandlerMapping以及HandlerAdapter來處理Handler?    符合面向?qū)ο笾械膯我宦氊?zé)原則,代碼架構(gòu)清晰,便于維護(hù),最重要的是代碼可復(fù)用性高。如HandlerAdapter可能會(huì)被用于處理多種Handler。
發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 永新县| 密山市| 淮阳县| 板桥市| 读书| 潼关县| 合川市| 辽宁省| 淮滨县| 松阳县| 桃源县| 洛阳市| 汝阳县| 黄浦区| 化德县| 汉源县| 新乡县| 隆安县| 和静县| 兴业县| 鄂尔多斯市| 万年县| 上林县| 易门县| 临猗县| 嘉义县| 乐亭县| 故城县| 大邑县| 松溪县| 石河子市| 额尔古纳市| 屏东县| 栾川县| 元阳县| 青浦区| 东丽区| 专栏| 南投市| 来宾市| 济南市|