结构:
HelloWorld.java:
package com.spring.test.helloWorld;public interface HelloWorld {public void sayHello();}
HelloWorldService.java:
package com.spring.test.helloWorld;public class HelloWorldService {private HelloWorld helloWorld;public HelloWorldService() {}public void setHelloWorld(HelloWorld helloWorld) {this.helloWorld = helloWorld;}public HelloWorld getHelloWorld() {return this.helloWorld;}}
SpringHelloWorld.java:
package com.spring.test.helloWorld.impl;import com.spring.test.helloWorld.HelloWorld;public class SpringHelloWorld implements HelloWorld {@Overridepublic void sayHello() {System.out.println("Spring Say Hello!!");}}
StrutsHelloWorld.java:
package com.spring.test.helloWorld.impl;import com.spring.test.helloWorld.HelloWorld;public class StrutsHelloWorld implements HelloWorld {@Overridepublic void sayHello() {System.out.println("Struts Say Hello!!");}}
beans.xml:
<?xml version="1.0" encoding="UTF-8"?><beans xmlns="/schema/beans"xmlns:xsi="/2001/XMLSchema-instance"xsi:schemaLocation="/schema/beans/schema/beans/spring-beans.xsd"><bean id="springHelloWorld"class="com.spring.test.helloWorld.impl.SpringHelloWorld"></bean><bean id="strutsHelloWorld"class="com.spring.test.helloWorld.impl.StrutsHelloWorld"></bean><bean id="helloWorldService"class="com.spring.test.helloWorld.HelloWorldService"><property name="helloWorld" ref="springHelloWorld"/></bean></beans>
pom.xml
<project xmlns="/POM/4.0.0" xmlns:xsi="/2001/XMLSchema-instance" xsi:schemaLocation="/POM/4.0.0 /xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><groupId>com.spring</groupId><artifactId>Spring</artifactId><version>0.0.1-SNAPSHOT</version><dependencies><!-- Spring Core --><!-- /artifact/org.springframework/spring-core --><dependency><groupId>org.springframework</groupId><artifactId>spring-core</artifactId><version>4.1.4.RELEASE</version></dependency><!-- Spring Context --><!-- /artifact/org.springframework/spring-context --><dependency><groupId>org.springframework</groupId><artifactId>spring-context</artifactId><version>4.1.4.RELEASE</version></dependency></dependencies></project>
HelloProgram.java:
package com.spring.test;import org.springframework.context.ApplicationContext;import org.springframework.context.support.ClassPathXmlApplicationContext;import com.spring.test.helloWorld.HelloWorld;import com.spring.test.helloWorld.HelloWorldService;public class HelloProgram {public static void main(String[] args) {ApplicationContext context =new ClassPathXmlApplicationContext("beans.xml");//读取beans.xml 文件来创建一个应用程序上下文对象HelloWorldService service =(HelloWorldService) context.getBean("helloWorldService");HelloWorld hw= service.getHelloWorld();hw.sayHello();}}
运行HelloProgram.java
修改beans.xml:
<?xml version="1.0" encoding="UTF-8"?><beans xmlns="/schema/beans"xmlns:xsi="/2001/XMLSchema-instance"xsi:schemaLocation="/schema/beans/schema/beans/spring-beans.xsd"><bean id="springHelloWorld"class="com.spring.test.helloWorld.impl.SpringHelloWorld"></bean><bean id="strutsHelloWorld"class="com.spring.test.helloWorld.impl.StrutsHelloWorld"></bean><bean id="helloWorldService"class="com.spring.test.helloWorld.HelloWorldService"><property name="helloWorld" ref="strutsHelloWorld"/><!-- IoC容器创建strutsHelloWorld对象并通过setter方法注入依赖 --></bean></beans>
运行HelloProgram.java:
如果觉得《Spring-IOC》对你有帮助,请点赞、收藏,并留下你的观点哦!