使用Eclipse,开涛老师安装了一个插件,SpringSource Tool Suite,不知道实际是干什么的,先不安装了。
开发环境:jdk1.8,Eclipse Oxygen(新版的eclipse),spring-framework-4.3.10.RELEASE
核心包,比开涛老师的少了一个asm,貌似又跟core合并了。
还需要几个其它的包
- 创建一个java project项目
- 新建一个文件夹(Folder),lib
- 把这几个包复制到lib文件夹下
- 右键项目名,选择最下面的Properties,选择Java Build Path,选择Libraries,
- 选择Add JARs,找到创建的项目,选择lib文件下的那几个包,保存。
- 选择Add Library,选择JUnit,选择JUnit 4,保存
在src下写java代码,照着开涛老师的写。
先写接口
package shuai.spring.study;
public interface HelloApi {
public void sayHello() ;
}
实现类
package shuai.spring.study;
public class HelloImlpl implements HelloApi {
@Override
public void sayHello() {
System.out.println("Hello World!");
}
}
项目名右键创建一个Folder,resources
右键项目名,选择最下面的Properties,选择Java Build Path,选择Source,选择Add Folder,把刚才新建的resources选上,保存
在resources文件夹下编写配置文件HelloWorld.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.xsd">
<bean id="hello" class="shuai.spring.study.HelloImpl"></bean>
</beans>
编写一个测试类
package shuai.spring.test;
import static org.junit.Assert.*;
import org.junit.Test;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import shuai.spring.study.HelloApi;
public class HelloTest {
@Test
public void testHelloWorld() {
ApplicationContext context = new ClassPathXmlApplicationContext("HelloWorld.xml") ;
HelloApi helloApi = context.getBean("hello",HelloApi.class) ;
helloApi.sayHello();
}
}
完成。
自己的疑问:ClassPathXmlApplicationContext("HelloWorld.xml") 会扫描哪个文件夹?我在HelloWorld.xml外面添加一个夹spring,会提示找不到,需要改成ClassPathXmlApplicationContext("spring/HelloWorld.xml")才能找到。