1. 程式人生 > 其它 >spring-快速上手

spring-快速上手

spring快速上手

HelloSpring

  1. 匯入依賴

    <dependency>
       <groupId>org.springframework</groupId>
       <artifactId>spring-webmvc</artifactId>
       <version>5.1.10.RELEASE</version>
    </dependency>
        
    <dependency>
    	<groupId>junit</groupId>
    	<artifactId>junit</artifactId>
    	<version>4.12</version>
    </dependency>    
    
  2. 編寫程式碼

  • 編寫一個Hello實體類
public class Hello {
    private String name;

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public void show(){
        System.out.println("hello," + name);
    }
}
  • 編寫spring配置檔案,這裡我們命名為beans.xml
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xsi:schemaLocation="http://www.springframework.org/schema/beans
       http://www.springframework.org/schema/beans/spring-beans.xsd">

    <!--bean就是java物件 , 由Spring建立和管理-->
    <bean id="hello" class="com.dingcd.pojo.Hello">
        <property name="name" value="Spring"/>
    </bean>

</beans>
  • 編寫一個測試類
public class MyTest {

    @Test
    public void test(){
        //解析beans.xml檔案 , 生成管理相應的Bean物件
        ApplicationContext context = new ClassPathXmlApplicationContext("beans.xml");
        //getBean : 引數即為spring配置檔案中bean的id .
        Hello hello = context.getBean("hello", Hello.class);
        hello.show();
    }
}

思考

  • Hello 物件是誰建立的 ? 【hello 物件是由Spring建立的】

  • Hello 物件的屬性是怎麼設定的 ? 【hello 物件的屬性是由Spring容器設定的,這個過程就叫控制反轉 】

  • 控制 : 誰來控制物件的建立 , 傳統應用程式的物件是由程式本身控制建立的 , 使用Spring後 , 物件是由Spring來建立的

  • 反轉 : 程式本身不建立物件 , 而變成被動的接收物件 .

依賴注入 : 就是利用set方法來進行注入的.

IOC是一種程式設計思想,由主動的程式設計變成被動的接收

可以通過newClassPathXmlApplicationContext去瀏覽一下底層原始碼 。