首先那些安装JDK、eclipse就不说了~
其次是classpath 问题:
Spring框架的官方网站:
http://projects.spring.io/spring-framework/
官网首页就是这行字~
可以在github上找到下载内容,我的版本是3.1.0 还有一个commons logging我也不知道真有用还是假有用~哈哈~
然后创建一个工程SpringTest
接下来就需要导入一些Spring框架的文件了....
工程SpringTest下属创建一个名叫 :com.springinaction.knights的包
首先弄一个BraveKnight(勇敢的骑士)类
package com.springinaction.knights;
public class BraveKnigth implements Knight{
private Quest quest;
public BraveKnigth(Quest quest){
this.quest = quest;//Quest被注入进来
}
@Override
public void embarkOnQuest(){
quest.embark();
}
}
当然骑士类是这样的:
package com.springinaction.knights;
public interface Knight {
void embarkOnQuest();
}
然后有个SlayDragonQuest类继承的是Quest接口
长成这样
package com.springinaction.knights;
public class SlayDragonQuest implements Quest{
@Override
public void embark() {
System.out.println("SlayDragonQuest play~");
}
}
Quest接口这样
package com.springinaction.knights;
public interface Quest {
public void embark();
}
利用XML文件的方式进行注入哈~
名字叫knights.xml
<?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-3.0.xsd">
<bean id="knight" class="com.springinaction.knights.BraveKnigth">
<constructor-arg ref="quest" />
</bean>
<bean id="quest" class="com.springinaction.knights.SlayDragonQuest" />
</beans>
接下来就可以测试一下了:
KnightMain.java
package com.springinaction.knights;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
public class KnightMain {
public static void main(String[] args) {
ApplicationContext context =
new ClassPathXmlApplicationContext("knights.xml");
Knight knight = (Knight) context.getBean("knight");
knight.embarkOnQuest();
}
}
我的运行结果如下:
以上红色的是Spring的提示信息。