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

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

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

    溫故知新:spring_01IOC整體感受

    IOC(inverse of control)控制反轉,是spring提供的非常優秀的一種特性,這種特性使得在項目中,所有對象的實例都交由spring去創建,管理。為什么要這么做呢,假使我們脫離spring,在開發的過程中,需要新建實例的時候自己去new,那么組件之間的耦合度會非常高,在一個業務處理類中,某個對象就寫死引用某個實例,一旦有較大的業務變更,需要修改的地方可能會多的不敢想象,如果文檔,代碼和注釋的維護較差,那么業務變更簡直就是噩夢。spring的IOC特性就助力實現了“高內聚,低耦合”的這種設計理念。
    記錄一下平時在使用spring時的一些技巧和心得,先說明一下測試環境。

    環境如下
    系統:64位win7


    測試環境:



    先從一個helloworld的簡單案例開始吧
    新建一個maven項目,選擇


    其實不論使用哪個框架技術,都無非三步走,import,config,run,首先,我們import
    因為使用maven來管理項目,所以直接添加spring的依賴到pom.xml
     1         <dependency>
     2             <groupId>org.springframework</groupId>
     3             <artifactId>spring-core</artifactId>
     4             <version>3.0.5.RELEASE</version>
     5         </dependency>
     6 
     7         <dependency>
     8             <groupId>org.springframework</groupId>
     9             <artifactId>spring-context</artifactId>
    10             <version>3.0.5.RELEASE</version>
    11         </dependency>
    之后,我們開始config,作為一個基本IOC演示,只需要定義工廠的配置。定義一個beans.xml文件,置于src下。其中bean標簽就是定義beanId和待注入對象實例之間的映射。
    就是“用這個id取對象實例,你會取到class的對象實例”
    1 <?xml version="1.0" encoding="UTF-8"?>
    2 <beans xmlns="http://www.springframework.org/schema/beans"
    3     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    4     xsi:schemaLocation="http://www.springframework.org/schema/beans 
    5                         http://www.springframework.org/schema/beans/spring-beans-3.0.xsd">
    6 
    7     <bean id="helloSpring" class="demo.model.Demo"/>
    8 
    9 </beans>
    演示類
     1 package demo.model;
     2 
     3 public class Demo {
     4     
     5     public Demo() {
     6     }
     7 
     8     public void hello(){
     9         System.out.println("hello");
    10     }
    11 }
    12 
    測試類
     1 package org.duyt.test;
     2 
     3 import org.duyt.model.Demo;
     4 import org.junit.Test;
     5 import org.springframework.beans.factory.BeanFactory;
     6 import org.springframework.context.support.ClassPathXmlApplicationContext;
     7 
     8 public class SpringDemo {
     9 
    10     //讀入指定的工廠配置文件到spring的容器,文件名可自定義
    11     private BeanFactory factory = new ClassPathXmlApplicationContext("beans.xml");
    12     
    13     @Test
    14     public void test(){
    15         //根據bean的key獲取對象的實例
    16         Demo d = (Demo) factory.getBean("helloSpring");
    17         //或者直接使用重載的getBean方法,設定好需要返回的類型
    18         //Demo dd =  factory.getBean("helloSpring", Demo.class);
    19         d.hello();
    20         //dd.hello();
    21     }
    22     
    23 }
    24 
    以上,就是spingIOC最簡易的使用。

    posted on 2014-11-03 17:19 都較瘦 閱讀(134) 評論(0)  編輯  收藏 所屬分類: containerFramework

    <2025年5月>
    27282930123
    45678910
    11121314151617
    18192021222324
    25262728293031
    1234567

    導航

    統計

    公告

    博客定位:囿于目前的水平,博客定位在記錄自己的學習心得和隨手的練習

    常用鏈接

    留言簿

    隨筆分類

    隨筆檔案

    文章分類

    文章檔案

    搜索

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 4338×亚洲全国最大色成网站| 国产精品成人免费综合| 亚洲综合在线另类色区奇米| 国产精品日本亚洲777| 国产免费观看视频| 国产AV无码专区亚洲AV琪琪| 四虎影视永久免费观看地址 | 四虎精品亚洲一区二区三区| 亚洲人成无码网站在线观看| 国产高清在线免费视频| 丰满亚洲大尺度无码无码专线| 国产三级电影免费观看| EEUSS影院WWW在线观看免费| 亚洲国产AV无码专区亚洲AV| 91精品全国免费观看含羞草| 亚洲卡一卡2卡三卡4麻豆| 大地资源免费更新在线播放| 国产精品亚洲片在线花蝴蝶| 伊伊人成亚洲综合人网7777| 久久99热精品免费观看牛牛| 亚洲精品第一国产综合野| 国产免费人成视频在线观看| 国产免费一级高清淫曰本片| 亚洲色成人网一二三区| 午夜两性色视频免费网站| 国产精品美女久久久免费| 亚洲情a成黄在线观看动漫尤物| 成人免费无码大片a毛片| 一级毛片免费观看不收费| 五月天网站亚洲小说| 好吊妞视频免费视频| 中国黄色免费网站| 77777亚洲午夜久久多喷| 亚洲av午夜精品一区二区三区| 亚洲A∨午夜成人片精品网站| 中文在线日本免费永久18近| 99热亚洲色精品国产88| 久久久久一级精品亚洲国产成人综合AV区 | 一级毛片在线免费视频| 精品日韩亚洲AV无码| 日本午夜免费福利视频|