[03] Spring "Hello World"
阿新 • • 發佈:2018-04-15
solver Coding odi 裝配 get ati pattern dea str
使用maven建立項目,按Spring官方提供的dependency,IDE自動會下載關聯Spring的相關核心包,如下圖:
然後配置Java類的bean:
BeanFactory:
ApplicationContext:
0、寫在前面的話
本篇以一個簡單的示例,描述了Spring通過容器對於Java類的裝載和獲取。在以下我們可以看到,有一個Java類Coder,我們全程並沒有手動調用new來進行實例化,而是從Spring的容器ApplicationContext中去獲取到了該類的實例化對象。1、使用Maven建立Spring項目
<dependencies>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>4.3.16.RELEASE</version>
</dependency>
</dependencies>
使用maven建立項目,按Spring官方提供的dependency,IDE自動會下載關聯Spring的相關核心包,如下圖:
2、建立一個簡單的Java類
public class Coder {
private String name;
private int age;
public void print(){
System.out.println("Hello World"
);}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
}
3、建立Spring的配置文件
對於IDEA而言,pom.xml已經配置了Spring的依賴,那麽在新建Spring的配置文件時,可以直接通過IDEA創建最基礎的配置文件:
<?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 id="coder" class="dulk.learn.spring.Coder"></bean>
</beans>
4、初始化容器,獲取實例
Spring提供了多種初始化容器的方式,其中最常見的有兩種:- BeanFactory,早期的JavaBean工廠類實現(不推薦)
- ApplicationContext,對BeanFactory的擴展,提供了更多的功能,如國際化處理、Bean自動裝配等
BeanFactory:
public class Test {
public static void main(String[] args) {
- //BeanFactory
ResourcePatternResolver rpt = new PathMatchingResourcePatternResolver();
Resource resource = rpt.getResource("/applicationContext.xml");
BeanFactory bf = new XmlBeanFactory(resource);
Coder coder = (Coder) bf.getBean("coder");
coder.print();
}
}
ApplicationContext:
public class Test {
public static void main(String[] args) {
- //ApplicationContext
ApplicationContext ac = new ClassPathXmlApplicationContext("/applicationContext.xml");
Coder coder = (Coder) ac.getBean("coder");
coder.print();
}
}
[03] Spring "Hello World"