<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          對(duì)spring的理解!

          共 1189字,需瀏覽 3分鐘

           ·

          2020-12-28 03:30

          點(diǎn)擊上方藍(lán)色字體,選擇“標(biāo)星公眾號(hào)”

          優(yōu)質(zhì)文章,第一時(shí)間送達(dá)

          ? 作者?|??孤獨(dú)的車手

          來(lái)源 |? urlify.cn/7RNFBj

          66套java從入門到精通實(shí)戰(zhàn)課程分享

          1、Spring實(shí)現(xiàn)了工廠模式的工廠類,這個(gè)類名為BeanFactory(接口),
          在程序中通常用他的子類ApplicationContext。
          Spring相當(dāng)于一個(gè)大的工廠類,在其配置文件中通過(guò)元素配置用于
          創(chuàng)建實(shí)例對(duì)象的類名和實(shí)例對(duì)象的屬性。

          工廠模式是一種生產(chǎn)對(duì)象型的設(shè)計(jì)模式,有了工廠模式后,當(dāng)需要某個(gè)類的
          對(duì)象時(shí),就不再需要new指定的類,而是調(diào)用工廠中的方法即可。也就不需要
          關(guān)心對(duì)象的創(chuàng)建過(guò)程。甚至有時(shí)候也許你需要的對(duì)象只要是某種大分類的類型
          就可以了,而不必是某個(gè)指定的類型。不會(huì)過(guò)渡依賴某個(gè)類,這些類都是
          易于被替換的,以提高整個(gè)項(xiàng)目的可維護(hù)性。

          2、Spring提供了對(duì)IOC(控制反轉(zhuǎn))良好支持,IOC也是一種編程思想,
          是一種架構(gòu)藝術(shù),利用這種思想可以很好地實(shí)現(xiàn)模塊之間的解耦。
          IOC就是對(duì)對(duì)象的創(chuàng)建、維護(hù)、銷毀等生命周期的控制,這個(gè)過(guò)程一般是
          由我們的程序去主動(dòng)控制。
          DI也是IOC的重要實(shí)現(xiàn)。一個(gè)對(duì)象的創(chuàng)建往往會(huì)涉及到其他對(duì)象的創(chuàng)建,
          這就是依賴。IOC機(jī)制既然負(fù)責(zé)了對(duì)象的創(chuàng)建,
          那么這個(gè)依賴關(guān)系也就必須由IOC容器負(fù)責(zé)起來(lái)。
          負(fù)責(zé)的方式就是DI——依賴注入,通過(guò)將依賴關(guān)系寫(xiě)入配置文件,
          然后在創(chuàng)建有依賴關(guān)系的對(duì)象時(shí),由IOC容器注入依賴的對(duì)象。
          如在創(chuàng)建A時(shí),檢查到有依賴關(guān)系,IOC容器就把A依賴的對(duì)象B
          創(chuàng)建后注入到A中(組裝,通過(guò)反射機(jī)制實(shí)現(xiàn)),然后把A返回給對(duì)象請(qǐng)求者,完成工作。

          3、Spring提供了對(duì)AOP技術(shù)的良好封裝,AOP稱為面向切面編程,
          就是系統(tǒng)中有很多各不相干的類的方法,
          在這些眾多方法中要加入某種系統(tǒng)功能的代碼,
          如加入日志,權(quán)限判斷,異常處理,這種應(yīng)用稱為AOP。

          實(shí)現(xiàn)AOP功能采用的是代理技術(shù),客戶端程序不再調(diào)用目標(biāo),
          而調(diào)用代理類,代理類與目標(biāo)類對(duì)外具有相同的方法聲明。
          可以用兩種方式實(shí)現(xiàn)相同的方法聲明,一是實(shí)現(xiàn)相同的接口,
          二是作為目標(biāo)的子類。在JDK中采用Proxy類,產(chǎn)生動(dòng)態(tài)代理的
          方式為某個(gè)接口生成實(shí)現(xiàn)類,如果要為某個(gè)類生成子類,則采用CGLIB。

          系統(tǒng)功能的代理以Advice對(duì)象進(jìn)行提供,要?jiǎng)?chuàng)建出代理對(duì)象,
          至少需要目標(biāo)類和Advice類。Spring提供了這種支持,
          只需要在Spring配置文件中配置這兩個(gè)元素即可實(shí)現(xiàn)代理和AOP功能。





          粉絲福利:Java從入門到入土學(xué)習(xí)路線圖

          ???

          ?長(zhǎng)按上方微信二維碼?2 秒


          感謝點(diǎn)贊支持下哈?

          瀏覽 29
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          評(píng)論
          圖片
          表情
          推薦
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  美颜巨乳-熊猫成人网 | 欧美三级免费看 | 天天天天天天色 | 成年男女免费视频网站无毒 | 91站街农村熟女露脸 |