zhyiwww
          用平實(shí)的筆,記錄編程路上的點(diǎn)點(diǎn)滴滴………
          posts - 536,comments - 394,trackbacks - 0
          下面的這段代碼是SpringGuide中的一個例子
          public class MyServlet extends HttpServlet {
          ?
          ? public void doGet(
          HttpServletRequest request,?
          HttpServletResponse response)
          ???? throws ServletException, IOException {
          ?? ……
          ? }
          }
          作者把這個Servlet的應(yīng)用歸為type1型的依賴注入。以前我曾經(jīng)看過這個例子,不過當(dāng)時沒有怎么理解。
          今天,開始仔細(xì)的學(xué)習(xí)的時候,好好的想了一下,覺得稍有理解。
          對于一個Servlet來說,可能覺得,在用戶請求到達(dá)的時候,其響應(yīng)就完了,如果簡單的看這個問題,那么就太簡單了。作為我們來說需要知道所以然。
          如果單純的是一個類,調(diào)用一個方法do(String a,String b),提供兩個參數(shù),那也就正常了。因?yàn)槟阏{(diào)用這個方法的時候,已經(jīng)實(shí)例化了,有可能是你自己實(shí)例化的 new Object ().do("a,","b")。
          但是你在請求到一個servlet的時候,卻不需要去顯式創(chuàng)建一個servlet的實(shí)例,然后再調(diào)用其doGet(request,response)方法,因?yàn)?,你在請求到達(dá)之前,先到達(dá)容器,讓后再到servlet,在到達(dá)servlet之前,并沒有生成對應(yīng)的request對象和response對象。所以此時,servlet并不知道要做什么。
          問題來了,
          request從哪來?
          response從哪來?
          是你封裝的嗎?
          其實(shí),此時的請求由容器接收,并封裝和創(chuàng)建對應(yīng)的request和response對象,然后把傳入到servlet對象里面。
          也就是說,在你動態(tài)的請求之前,這個依賴并不存在。
          請求之后,容器封裝之后的對象才有了依賴,這是個動態(tài)的依賴。然后才會注入到servlet里面。

          這就是為什么是動態(tài)依賴,是依賴注入。
          我對依賴的一點(diǎn)粗淺理解。




          |----------------------------------------------------------------------------------------|
                                     版權(quán)聲明  版權(quán)所有 @zhyiwww
                      引用請注明來源 http://www.aygfsteel.com/zhyiwww   
          |----------------------------------------------------------------------------------------|
          posted on 2007-07-02 11:35 zhyiwww 閱讀(678) 評論(0)  編輯  收藏 所屬分類: j2ee
          主站蜘蛛池模板: 孟州市| 宜州市| 隆回县| 六枝特区| 蓬溪县| 青龙| 广平县| 嘉荫县| 句容市| 七台河市| 大田县| 政和县| 海林市| 门源| 广元市| 周宁县| 邯郸县| 江油市| 金华市| 西和县| 蒲江县| 洛阳市| 黄大仙区| 大同市| 澄迈县| 大港区| 宾阳县| 裕民县| 叙永县| 台北县| 白城市| 布拖县| 策勒县| 伊金霍洛旗| 那曲县| 勐海县| 峨眉山市| 若羌县| 剑河县| 鞍山市| 夏津县|