1.下载spring-framework-3.2.0
完整包下载路径:
https://repo.spring.io/webapp/#/artifacts/browse/tree/Properties/libs-release-local/org/springframework/spring/3.2.0.RELEASE
或者,本Sample只需要四个包,下载路径:
https://files.cnblogs.com/files/xueyuangudiao/Spring_IoC.zip
2.下载Commons Logging
依赖Commons Logging,所以需要下载。
下载路径:
http://commons.apache.org/proper/commons-logging/download_logging.cgi
或者:https://files.cnblogs.com/files/xueyuangudiao/commons-logging-1.2-bin.zip
3.创建普通java项目

4.将下载的jar导入到项目中

5.编写一个model,这个model后面经通过依赖注入的方式来实例化。
1 public class User {
2
3 private String userName;
4 private int age;
5
6 public String getUserName() {
7 return userName;
8 }
9 public void setUserName(String userName) {
10 this.userName = userName;
11 }
12 public int getAge() {
13 return age;
14 }
15 public void setAge(int age) {
16 this.age = age;
17 }
18
19 @Override
20 public String toString() {
21 return "User [userName=" + userName + ", age=" + age + "]";
22 }
23 }
6.创建xml文件(springTest.xml),Spring将读取xml文件中的内容来明确类型与注入内容的对应关系
1 <?xml version="1.0" encoding="UTF-8"?> 2 <beans xmlns="http://www.springframework.org/schema/beans" 3 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 4 xmlns:p="http://www.springframework.org/schema/p" 5 xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd"> 6 7 <!-- id:作为bean的代号,在代码中会用到;class:类名 --> 8 <bean id="user" class="com.test.model.User"> 9 <!-- User类中的属性名,通过Spring实例化User时,会将value赋值给userName这个属性 --> 10 <property name="userName" value="李四"></property> 11 <property name="age" value="21"></property> 12 </bean> 13 14 </beans>
7.创建HelloSpring类,其中main函数演示了依赖注入的方法与普通对象实例化方法的对比
1 package com.test;
2
3 import org.springframework.beans.factory.BeanFactory;
4 import org.springframework.context.support.ClassPathXmlApplicationContext;
5
6 import com.test.model.User;
7
8 public class HelloSpring {
9
10 public static void main(String[] args) {
11
12 // Spring写法
13 BeanFactory bf = new ClassPathXmlApplicationContext("springTest.xml");
14 User user2 = (User) bf.getBean("user");
15 System.out.println(user2);
16
17 // 普通写法
18 User user1 = new User();
19 user1.setUserName("张三");
20 user1.setAge(20);
21 System.out.println(user1);
22
23 }
24 }
执行结果:
User [userName=李四, age=21]
User [userName=张三, age=20]
8.整个代码结构

9.完整代码
https://files.cnblogs.com/files/xueyuangudiao/SpringTest2.zip
来源:https://www.cnblogs.com/xueyuangudiao/p/8723697.html