先简单说下控制反转(文中所需jar包可以网上下载也可以到:http://download.youkuaiyun.com/download/six_666666/9959800这里下载)
其实就是相当于你要调用一个类里的方法的时候需要我们自己创建对象去调用,而现在spring帮我们去创建对象,我们只需要去操作bean就可以完成对象的创建然后用bean去操作调用方法即可。看下面简单的例子
java文件架构(控制反转主要用到Ioc.java、User.java文件和主配置文件spring.xml)
User.java
package ioc;
public class User {
public void mm(){
System.out.println(123);
}
}
这个里面只有一个mm的方法,用于测试bean的调用
spring.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" xmlns:mvc="http://www.springframework.org/schema/mvc"
xmlns:context="http://www.springframework.org/schema/context"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc.xsd
http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd">
<bean id="user" class="ioc.User"></bean>//除了这个是我们配置的,其他都是固定的
</beans>
Ioc.java测试类
package ioc;
import org.springframework.context.support.ClassPathXmlApplicationContext;
public class Ioc {
public static void main(String[] args) {
ClassPathXmlApplicationContext ac = new ClassPathXmlApplicationContext("spring.xml");
User ubean =(User)ac.getBean("user");
ubean.mm();
}
}
可以看到我并没有在测试类Ioc里面创建User对象,只有bean,现在看输出结果是不是调用到了mm方法
简单的spring控制反转就是这样,欢迎大神指正。