springMVC心得

          以SimpleFormController為例
          1。spring 接收一個(gè)請求後首先會判斷"get"還是"post"方法

          2。1 "get"方法時(shí)
          ?????????2。1。1 首先創(chuàng)建一個(gè)command對象﹐通過調(diào)用AbstractFormController的formBackingObject方法得到﹐通常是一個(gè)pojo﹐根據(jù)name用來和提交的數(shù)據(jù)綁定。
          ????????? 2。1。2 然後會創(chuàng)建一個(gè)BindException對象﹐裡面包括command對象﹐和其他一些屬性。
          ???????????2。1。3 判斷sessionForm 屬性﹐默認(rèn)為false。如果為true﹐就會把command對象對象保存在session裡???? 面。session中key為類名+".FORM." + command對象名。可以通過request.getSession().getAttribute(this.getFormSessionAttributeName(request));得到command對象。
          ??????
          ???2。1。4 調(diào)用AbstractFormController的referenceData方法。這個(gè)方法默認(rèn)為空﹐可以復(fù)寫來初始化頁面參數(shù)。

          2。1。5 返回ModelAndView對象﹐返回formview頁面。

          2 。2 “post”方法時(shí)
          ???2。2。1 首先得到command對象,如果SessionForm = false﹐調(diào)用formBackingObjectde創(chuàng)建
          ?????????????????????如果SessionForm = true,從request.getSession中得到原command對象﹐然後將command對象從
          ?????????????????????Session中刪除。
          ? 2。2。2? 然後會創(chuàng)建一個(gè)ServletRequestDataBinder對象﹐裡面包括command對象﹐和其他一些屬性。
          ???????????????????這個(gè)過程將調(diào)用initBinder()﹔可以複寫這個(gè)方法初始化數(shù)據(jù)。
          ?2。2。3 調(diào)用processFormSubmission(HttpServletRequest request, HttpServletResponse response, Object command,? BindException errors)。有錯(cuò)誤時(shí)返回formview頁面﹐否則進(jìn)入successview頁面。這個(gè)過程將調(diào)用onSubmit(Object command)﹐必須複寫這個(gè)方法放入業(yè)務(wù)邏輯。
          ?
          ???




          posted on 2006-09-17 14:11 software5168 閱讀(560) 評論(0)  編輯  收藏 所屬分類: Java學(xué)習(xí)

          <2006年9月>
          272829303112
          3456789
          10111213141516
          17181920212223
          24252627282930
          1234567

          導(dǎo)航

          統(tǒng)計(jì)

          常用鏈接

          留言簿(3)

          隨筆分類

          隨筆檔案

          收藏夾

          JAVA學(xué)習(xí)網(wǎng)站

          綜合

          搜索

          積分與排名

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 灵武市| 垣曲县| 潞西市| 龙游县| 昆山市| 乐东| 宁化县| 霍城县| 靖安县| 泸西县| 体育| 托克逊县| 临高县| 湘潭县| 禄丰县| 贵港市| 蓝田县| 马山县| 崇仁县| 林口县| 涿鹿县| 龙井市| 灵山县| 金乡县| 同江市| 哈巴河县| 育儿| 玛曲县| 九江市| 富裕县| 三台县| 许昌县| 都兰县| 诏安县| 兴海县| 买车| 五指山市| 湾仔区| 新巴尔虎左旗| 芜湖市| 临清市|