1. 程式人生 > >xml配置javaBean的IOC實現示例

xml配置javaBean的IOC實現示例

自己 實現 val sna xsd 編譯器 uil 復制 build

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 項目的結構

2.2 項目各文件內容
2.2.1 pom.xml
加入了spring核心庫和設置了jdb版本為1.8

<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)

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)

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解析與反射

xml配置javaBean的IOC實現示例