Spring框架的IOC开发的两种模式,包括XML开发与注解开发的比较
Spring的简介
什么是Spring
Spring是一个开源框架,于2003年兴起的轻量级java开发框架,简单而言,Spring是一个分层的JAVASE/EEfull-stack(一站式)开源框架
Spring入门(IOC)
一、什么是IOC
- IOC(Inversion of Control):控制反转。
控制反转:将对象的控制权反转交给Spring
- 导包 (官网:http://SPring.io/)
- 引入约束文件
在spring的解压路径下spring-framework-4.2.4.RELEASE\docs\spring-framework-reference\html\xsd-configuration.html
<?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">
</beans>
- Spring底层实现原理:
- Spring学习路线
- 把类交给Spring处理,有两种方式
1 . 通过XML配置方式
package Spring.demo1;
/**
* 业务管理层的接口
* @author rong
*
*/
public interface UserService {
public void add();
}
package Spring.demo1;
/**
* 业务管理层的实现类
* @author rong
*
*/
public class UserServiceImp implements UserService {
private String name;
public void setName(String name) {
this.name = name;
}
@Override
public void add() {
// TODO Auto-generated method stub
System.out.println("UserServiceImp被执行了"+name);
}
}
package Spring.demo1;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import org.springframework.context.support.FileSystemXmlApplicationContext;
public class Test {
@org.junit.Test
public void demo1(){
// UserService user=new UserServiceImp();
UserServiceImp user=new UserServiceImp();
user.setName("张三");
user.add();
}
/**
* Spring 方式的调用
*/
@org.junit.Test
public void demo2(){
/**
* 创建Spring工厂
*/
ApplicationContext applicationContext=new ClassPathXmlApplicationContext("application.xml");
UserService User = (UserService) applicationContext.getBean("UserService");
User.add();
}
@org.junit.Test
public void demo3(){
/**
* 加载磁盘上的配置文件
*/
ApplicationContext applicationContext=new FileSystemXmlApplicationContext("D:\\111\\application.xml");
UserService user = (UserService) applicationContext.getBean("UserService");
user.add();
}
}
XM