Spring框架:
官方网站: http://spring.io
官方网站的开发包下载: http://repo.spring.io/release/org/springframework/spring/
spring框架主要包含:
核心技术:
inversion of control 简称IOC 控制反转
dependency injection 简称DI 依赖注入
AOP 面向切面的编程
数据访问:
transaction事务管理
spring jdbc spring给提供的jdbc的框架
案例步骤:
1.创建项目(java项目,web项目)
2.导入 jar包
最基本的5个jar包不能少:
commons-logging-1.2.jar
spring-beans-4.3.7.RELEASE.jar
spring-context-4.3.7.RELEASE.jar
spring-core-4.3.7.RELEASE.jar
spring-expression-4.3.7.RELEASE.jar
3.创建java类
package com.enda.ioc;
public class Hello {
public void sayHello(String name){
System.out.println("你好"+name);
}
}
4.创建清单文件(列出哪些类创建对象,以及对象名称相关)
清单文件可以从文档中复制出来
Spring框架开发参考手册:Spring Framework
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-2.5.xsd">
<bean id="hello" class="com.enda.ioc.Hello"></bean>
<!-- more bean definitions go here -->
</beans>
上面一个简单的spring项目就搭建好了
现在编写一个测试类测试下
package com.enda.test;
import org.junit.Test;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import com.enda.ioc.Hello;
public class TestIOCClass {
@Test
public void testMethod1(){
//不用spring容器,程序员具备new对象的控制权
Hello hello = new Hello();
hello.sayHello("张三");
}
/**
* 用spring容器来创建和管理对象,借助第三方spring框架
* new控制权交给spring容器框架
*/
@Test
public void testMethod2(){
//启动spring容器 不是从src/conf/spring.xml读取和加载,而是从类路径bin/conf/spring.xml
ApplicationContext context = new ClassPathXmlApplicationContext("conf/spring.xml");
//--从spring容器取出对象
Hello hello = (Hello) context.getBean("hello");
//--使用取出来的对象
hello.sayHello("张三");
}
}
手动new对象和把对象交给spring容器去创建得到的结果是一样的测试打印结果:
你好张三
项目结构图:


被折叠的 条评论
为什么被折叠?



