Spring通过构造方法依赖注入
Posted Wit_tang
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Spring通过构造方法依赖注入相关的知识,希望对你有一定的参考价值。
使用Spring进行依赖,通过构造函数注入一个bean。1. IOutputGenerator
接口和实现类package com.yiibai.output; public interface IOutputGenerator public void generateOutput();
package com.yiibai.output.impl; import com.yiibai.output.IOutputGenerator; public class JsonOutputGenerator implements IOutputGenerator public void generateOutput() System.out.println("This is Json Output Generator");
2. Helper类
一个辅助类,之后使用Spring 通过构造方法注入 IOutputGenerator。package com.yiibai.output; import com.yiibai.output.IOutputGenerator; public class OutputHelper IOutputGenerator outputGenerator; public void generateOutput() outputGenerator.generateOutput(); //DI via constructor public OutputHelper(IOutputGenerator outputGenerator) this.outputGenerator = outputGenerator;
3. Spring配置
请参阅下面的 Spring bean 配置,Spring 将通过构造函数注入上面的 “JsonOutputGenerator” 到 “OutputHelper” 类,“public OutputHelper(IOutputGenerator outputGenerator)“.
<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-2.5.xsd"> <bean id="OutputHelper" class="com.yiibai.output.OutputHelper"> <constructor-arg> <ref bean="JsonOutputGenerator" /> </constructor-arg> </bean> <bean id="JsonOutputGenerator" class="com.yiibai.output.impl.JsonOutputGenerator" /> </beans>
4.执行结果
载入一切东西,并运行它。package com.yiibai.common; import org.springframework.context.ApplicationContext; import org.springframework.context.support.ClassPathXmlApplicationContext; import com.yiibai.output.OutputHelper; public class App public static void main(String[] args) ApplicationContext context = new ClassPathXmlApplicationContext( "applicationContext.xml"); OutputHelper output = (OutputHelper)context.getBean("OutputHelper"); output.generateOutput();
输出结果
This is Json Output Generator
以上是关于Spring通过构造方法依赖注入的主要内容,如果未能解决你的问题,请参考以下文章