<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                合規國際互聯網加速 OSASE為企業客戶提供高速穩定SD-WAN國際加速解決方案。 廣告
                Bean直接間接繼承了Aware接口,獲得了對Spring容器的感知,達到對當前運行環境的獲取。 ## Aware系列接口的共性 1. Spring的接口都以“Aware”結尾,自定義的最好也遵守這個規律。 2. 都是Aware接口的子接口,即都繼承了Aware接口 3. 接口內均定義了一個set方法(給當前bean注入值) ## Aware系列接口的set方法 (1)父接口Aware中沒有定義任何方法,只是一個標識接口 ~~~ public interface Aware { } ~~~ (2)觀察一下這些set方法 ApplicationContextAware接口: ~~~ public interface ApplicationContextAware extends Aware { void setApplicationContext(ApplicationContext applicationContext) throws BeansException; } ~~~ BeanNameAware接口: ~~~ public interface BeanNameAware extends Aware { void setBeanName(String name); } ~~~ BeanClassLoaderAware接口: ~~~ public interface BeanClassLoaderAware extends Aware { void setBeanClassLoader(ClassLoader classLoader); } ~~~ ApplicationContextAware接口:“Aware”前面的“ApplicationContext”就是我們需要Aware(知道,獲取)的內容。 set方法的形參ApplicationContext applicationContext就用于接收我們需要獲取的那個對象。 會把我們需要Aware的內容,注給set方法的形參,我們需要定義一個成員屬性來保存形參。 (五)代碼示例: //實現BeanNameAware接口,才能獲取bean在IOC容器中的id //還可以實現ApplicationContextAware接口,用于獲取bean所在的IOC容器 ~~~ public class HelloWorld implements BeanNameAware{ private String beanName; @Override public void setBeanName(String name) {//id會被傳給形參name this.beanName=name;//把id保存在成員屬性beanName中 } public String getBeanName(){ return beanName; } } ~~~ 在 bean配置文件中,注冊一個id為“hello”的bean: <bean class="com.HelloWorld" id="hello"></bean> 1 ~~~ public static void main(String[] args) { ApplicationContext context=new ClassPathXmlApplicationContext("applicationContext.xml"); HelloWorld h=(HelloWorld)context.getBean("hello"); System.out.println(h.getBeanName()); } ~~~ 輸出結果: hello Aware系列接口,用于輔助Spring bean訪問Spring容器; Aware系列接口,都定義了一個set 方法,體現了set方法注入的思想; 這些接口的作用與@Autowired、@Resource等注解有點類似; 在Struts2中,也有Aware系列接口:RequestAware;SessionAware;ApplicationAware;ParameterAware等。這些接口的設計思想和Spring里面的Aware系列接口的設計思想是一致的。
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看