1. 程式人生 > >Spring核心概念--Spring01

Spring核心概念--Spring01

小生初出程式茅廬,走上程式設計之路,還請各位大佬多多管照。

初學Spring框架:

建立HelloWorldSpring專案

用eclipse開發Web專案,新增jar包:

commons-logging-1.2.jar

log4j-1.2.17.jar

spring-beans-3.2.13.RELEASE.jar

spring-context-3.2.13RELEASE.jar

spring-core-3.2.13.RELEASE.jar

spring-expression-3.2.13.RELEASE.jar

spring配置:applicationContext.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 -->

<bean id="HellowSpring" class="com.projo.bean.Hellow">

<!--聲名屬性並賦值相當於setName("張三") -->

<property name="who">

<value>張三</value>

</property>

</bean>

</beans>

測試:

ApplicationContext context=new ClassPathXmlApplicationContext("applicationContext.xml");

HelloSpring hellowSpring=(HellowSpring)context.getBean(applicationContext.xml);

 

注:

 

 

 

使用id屬性為其指定一個用來訪問的唯一的名稱,如果想為Bean指定更多的別名,可通過name屬性指定,名稱之間使用逗號,分號,或者空格進行分隔。Spring為bean的屬性賦值是通過呼叫屬性的set方法實行的,這種做法稱為“設值注入”。

寫法1:

<property name="who">

<value>張三</value>

</property>

寫法2:

<property name="who" value="張三"/>

 

 

 

ApplicationContext是一個介面。負責讀取spring配置檔案,管理物件的載入,生成,維護Bean與Bean之間的依賴關係,負責Bean的生命週期,ClassPathApplicationContext是ApplicationContext介面的實現類,用於classPath路徑讀取spring配置檔案。而ApplicationContext是BeanFactory的子介面。BeanFactory是spring IoC容器的核心。負責管理元件和他們之間的依賴關係,應用程式通過BeanFactory介面與spring IoC容器互動。

“控制反轉”:個人現在的理解是:

就是不再用new去建立物件,而是把這一個控制權交給了SpringFactoryBean通過配置檔案的方式去完成 。

jar包配置合適: