<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    即興的靈感

    思維是一種藝術; 藝術需要靈感。

    博客好友

    最新評論

    偶遇Spring MVC


    ??? 個人認為Spring其核心是其IOC和AOP方面,對其SpirngMVC框架并不關注,我看好的是JSF,簡單易懂。但最近由于工作上需要,所以有需要對SpringMVC做個了解學習,因此,本次對SpirngMVC的相遇純屬偶遇....下面對其做見識性了解說明:

    ??? SpingMVC的架構其實也很簡單,它通過一個共通的入門DispatcherServlet來接收所有的request,接下來根據request要求的頁面通過handler轉送給Controller處理,處理結果返回View給用戶,因此對SpringMVC來說,其核心為DispatcherServlet。
    ??? DispatcherServlet作為一扇門,我們要使用這個門,首先得安裝上這個門,安裝在哪呢?沒錯,就安裝在web.xml這個大屋子,象其他servlet一樣,描述servlet的名字和類,再給他一個mapping描述對應映射的網頁。在下例中,我們給DispatcherServlet的起名為SpringMVCDemo,并讓container知道所有.do結尾的request都丟給dispatcher。
    ???? < servlet >
    ????????
    < servlet-name > SpringMVCDemo </ servlet-name >
    ????????
    < servlet-class >
    ????????????org.springframework.web.servlet.DispatcherServlet
    ????????
    </ servlet-class >
    ????????
    < load-on-startup > 1 </ load-on-startup >
    ????
    </ servlet >

    ????
    < servlet-mapping >
    ????????
    < servlet-name > SpringMVCDemo </ servlet-name >
    ????????
    < url-pattern > *.do </ url-pattern >
    ????
    </ servlet-mapping >
    ??? 門安裝好了之后,我們需要定義門能打開的范圍,在哪定義呢?就在門的上面貼上一張“入門指導”,介紹從哪方面(hello.do)進門需要使用何種交通方式(springmvcController)進去,并定義該交通方式。
    ???? < bean? id ="urlMapping"
    ????????class
    ="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping" >
    ????????
    < property? name ="mappings" >
    ????????????
    < props >
    ????????????????
    < prop? key ="/hello.do" > springmvcController </ prop >
    ????????????
    </ props >
    ????????
    </ property >
    ????
    </ bean >

    ????
    <!-- ?SpringmvcController? -->
    ????
    < bean? id ="springmvcController"
    ????????class
    ="org.improviser.webapp.controller.SpringmvcController" >
    ????
    </ bean >
    ??? 接下來該渲染一下頁面了,下面為渲染所有以
    WEB-INF/pages/ 開頭并以.jsp結尾的頁面。
    ???? <!-- ?ViewSolver? -->
    ????
    < bean? id ="viewResolver"
    ????????class
    ="org.springframework.web.servlet.view.InternalResourceViewResolver" >
    ????????
    < property? name ="viewClass" >
    ????????????
    < value > org.springframework.web.servlet.view.JstlView </ value >
    ????????
    </ property >
    ????????
    < property? name ="prefix" >
    ????????????
    < value > /WEB-INF/pages/ </ value >
    ????????
    </ property >
    ????????
    < property? name ="suffix" >
    ????????????
    < value > .jsp </ value >
    ????????
    </ property >
    ????
    </ bean >
    ???上面提到的SpringmvcController,現在該作個定義了,該類需要實現Controller接口。
    public?class?SpringmvcController?implements?Controller?{
    ????
    /**?Logger?for?this?class?and?subclasses?*/
    ????
    protected?final?Log?logger?=?LogFactory.getLog(getClass());

    ????
    public?ModelAndView?handleRequest(HttpServletRequest?request,
    ????????????HttpServletResponse?response)?
    throws?ServletException,?IOException?{

    ????????Map?model?
    =?new?HashMap();

    ????????String str
    =?"即興詩人";
    ????????logger.info(
    "returning?hello?view?with?"?+?currTime);
    ????????model.put(
    "coldice", str);

    ????????
    return?new?ModelAndView("hello",?"message",?model);
    ????}
    ???編寫jsp測試頁面。
    <html>
    ????
    <head>
    ????????
    <title>Spring?Application</title>
    ????
    </head>
    ????
    <body>
    ????????
    <h1>
    ????????????
    <br?/>
    ????????????Hello
    ??? ??? ??? <c:out?value="${message.coldice}"?/></br>
    ??? ??? ??? Spring?MVC 測試成功!
    ????????
    </h1>
    ????
    </body>
    </html>
    ??? 現在對以上內容作個總結,正如上面所敘述,SpringMVC框架的處理過程機制如下圖所示,接收請求頁面,通過DispatcherServlet映射到相應規則處理,并找到相應的控制器,結果控制器處理后返回相應的頁面最后返回給用戶。
    138199405_8b54d56b71_o.png



    ?
    鳳凰涅槃/浴火重生/馬不停蹄/只爭朝夕
    ???? 隱姓埋名/低調華麗/簡單生活/完美人生

    posted on 2007-11-04 10:44 poetguo 閱讀(6692) 評論(13)  編輯  收藏 所屬分類: Spring

    評論

    # re: 偶遇Spring MVC 2007-11-04 12:00 BeanSoft

    呵呵 Spring MVC 是緊耦合 和它自己的設計理念沖突啊... 所以 Spring Web 連 Struts 也打不過...  回復  更多評論   

    # re: 偶遇Spring MVC 2007-11-04 12:06 improviser

    嗯嗯 目前只是原型系統使用到 偶用一下測試看看而已啊  回復  更多評論   

    # re: 偶遇Spring MVC 2007-11-04 14:21 山風小子

    @BeanSoft
    "Spring MVC 是緊耦合"
    具體體現在哪里呢?謝謝 :)  回復  更多評論   

    # re: 偶遇Spring MVC 2007-11-04 18:08 BeanSoft

    public class SpringmvcController implements Controller {

    這一句就是. 兄弟你用過 Struts 1 和 Struts 2 嘛? Spring 不是一直都講究 POJO 嘛? 也許現在新的 Spring MVC 也不需要繼承自它自己的 Web 層的接口了 呵呵. 這一點是和它自己的理念違背的.  回復  更多評論   

    # re: 偶遇Spring MVC 2007-11-04 18:49 山風小子

    Struts2 中不也是
    public class Login extends ActionSupport {
    嗎?

    您所說的‘緊耦合’似乎各大框架都存在噢 :)  回復  更多評論   

    # re: 偶遇Spring MVC 2007-11-05 16:41 BeanSoft

    呵呵 JSF 不存在. 如果標注算松耦合的話, EJB 3, JPA 也不存在. 不過 Spring 這個地方是緊耦合不假. 所以這里它只能和 Struts 來類比了, 當然不影響使用, 嘿嘿.  回復  更多評論   

    # re: 偶遇Spring MVC 2007-11-05 22:48 improviser

    這也許就是正是欣賞jsf的地方  回復  更多評論   

    # re: 偶遇Spring MVC[未登錄] 2007-12-01 13:58 duma

    @山風小子
    struts2 , webwork 可以不用這樣寫.  回復  更多評論   

    # re: 偶遇Spring MVC 2007-12-23 18:46 廣州_Soar

    Spring Web MVC 也許你只是用來玩玩,呵呵!!
    它的好處做過大型系統的朋友應該都有體會,不過目前大家都使用EXTJS2.0做前臺了,直接跟Service層進行調用!!呵呵!!  回復  更多評論   

    # re: 偶遇Spring MVC 2007-12-24 22:27 improviser

    算玩過2個月了哈哈,還不錯,
    技術本身沒有錯,每一種都有它的有點,存在即合理!  回復  更多評論   

    # re: 偶遇Spring MVC 2008-02-29 13:47 平淡無味

    第一次來 以后就常來了 希望能多寫一些 要好好學習了  回復  更多評論   

    # re: 偶遇Spring MVC[未登錄] 2008-11-26 06:59 Scott.H

    有 Spring 2.5 的 Annotation 以后,就不存在所謂的緊耦合,everything is a POJO  回復  更多評論   

    # re: 偶遇Spring MVC 2010-09-28 17:49 11

    是啊,Spring 2.5 的 Annotation用起來真的很方便。  回復  更多評論   

    主站蜘蛛池模板: 亚洲成a人无码av波多野按摩| 成年美女黄网站18禁免费 | 国产精品免费观看| 亚洲一区影音先锋色资源| 国产偷伦视频免费观看| 亚洲AV区无码字幕中文色| 色欲A∨无码蜜臀AV免费播 | 亚洲午夜无码片在线观看影院猛 | 亚洲午夜无码久久久久小说| 成年女人免费碰碰视频| 亚洲欧美日韩中文二区| 国产精品色午夜视频免费看| 亚洲国产精品18久久久久久| 亚洲国产婷婷香蕉久久久久久| 特a级免费高清黄色片| 亚洲综合无码AV一区二区| 久久免费看少妇高潮V片特黄| 亚洲狠狠ady亚洲精品大秀| 青青草免费在线视频| 边摸边吃奶边做爽免费视频网站| 亚洲高清成人一区二区三区| 美女无遮挡拍拍拍免费视频| 久久精品国产亚洲精品2020| 免费一级e一片在线播放| 免费福利网站在线观看| 十八禁在线观看视频播放免费| 亚洲精品无码久久久久久| 亚洲视频在线观看地址| 亚洲情综合五月天| 伊人久久亚洲综合影院| 在线视频精品免费| 久久午夜夜伦鲁鲁片无码免费| 国产亚洲精品2021自在线| 亚洲精品一二三区| 亚洲精品在线播放| 久久亚洲国产视频| 国产亚洲成归v人片在线观看 | 亚洲国产精品线观看不卡 | 日韩a毛片免费观看| 亚洲乱码中文字幕在线| 亚洲a视频在线观看|