xml配置javaBean的IOC實現
1。開發步驟介紹
建立java項目(項目能夠是Maven項目),
加入spring相關架包,
建立javaBean
使用xml配置javaBean
管理/使用JavaBean
2.示例:helloWorld
(1)建立maven的java項目
(2)在dom.xml中配置依賴
(3)建立javaBean---Teacher.java類
(4)建立Spring配置文件spring.xml,並在spring.xml中配置Teacher類(即把Teacher類交給IOC容器管理)
(5)建立測試類Test.java
<1>建立JavaBean工廠對象
<2>經過工廠獲取Teacher對象
<3>打印Teacher對象
2.1 項目的結構java
2.2 項目各文件內容
2.2.1 pom.xml
加入了spring核心庫和設置了jdb版本爲1.8spring
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.xx</groupId>
<artifactId>spring1</artifactId>
<version>0.0.1-SNAPSHOT</version>
<dependencies>
<!-- 加入spring核心庫 -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>4.2.9.RELEASE</version>
</dependency>
</dependencies>
<!-- 將編譯器的版本指定爲1.8 -->
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.1</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
</configuration>
</plugin>
</plugins>
</build>
</project>
2.2.2 被管理的javaBean類Teacher.java
(這個類就是即將被配置到IOC容器中的javaBean)apache
package com.test.po;
public class Teacher {
private String name;
private int age;
public Teacher() {
System.out.println("Teacher()....");
}
@Override
public String toString() {
return "Teacher [name=" + name + ", age=" + age + "]";
}
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;
}
}
2.2.3 spring配置文件-spring.xml
(注意beans的屬性), 配置javaBean com.test.po.Teacher類到IOC容器
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:context="http://www.springframework.org/schema/context"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-4.0.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-4.0.xsd">
<bean id="teacher" class="com.test.po.Teacher">
<property name="name" value="王光榮" />
<property name="age" value="33" />
</bean>
</beans>
2.2.4 測試 (管理/使用javaBean)
com.test.po.Test.java (管理/使用 IOC中的JavaBean, 建立Bean工廠時,使用了spring的配置文件spring.xml)app
package com.test.po;
import org.springframework.beans.factory.BeanFactory;
import org.springframework.context.support.ClassPathXmlApplicationContext;
public class Test {
public static void m1() {
//建立Bean工廠,同時本步驟就已經會建立Teacher類的對象了
ApplicationContext applicationContext
= new ClassPathXmlApplicationContext("config/spring.xml");
//獲取Bean工廠中的Teacher對象
Teacher teacher = (Teacher) applicationContext.getBean("teacher");
System.out.println(teacher);
}
public static void main(String[] args) {
Test.m1();
}
}
--------------------------------------------------------------------------------
運行結果爲Teacher()....Teacher [name=王光榮, age=33]
--------------------------------------------------------------------------------
2.3 小節
使用java maven項目, 也能夠不使用java的 maven項目。這樣只不過要本身下載spring的架包
注意spring.xml配置文件中beans標籤的頭,能夠照着複製便可,這是xml的格式化文件
applicationContext是IOC專門用來管理Bean的接口
底層技術是xml解析與反射dom