一、
Spring 是一个开源框架.是一个 IOC(DI) 和 AOP 容器框架.
具体描述 Spring:
轻量级:Spring 是非侵入性的 - 基于 Spring 开发的应用中的对象可以不依赖于 Spring 的 API
依赖注入(DI — dependency injection、IOC)
面向切面编程(AOP — aspect oriented programming)
容器: Spring 是一个容器, 因为它包含并且管理应用对象的生命周期
框架: Spring 实现了使用简单的组件配置组合成一个复杂的应用. 在 Spring 中可以使用 XML 和 Java 注解组合这些对象
一站式:在 IOC 和 AOP 的基础上可以整合各种企业应用的开源框架和优秀的第三方类库 (实际上 Spring 自身也提供了展现层的 SpringMVC 和 持久层的 Spring JDBC)
二、
搭建Spring开发环境(myeclipse可以导入本身带有的spring架包)
1、加入基本jar架包
2、Spring 的配置文件: 一个典型的 Spring 项目需要创建一个或多个 Bean 配置文件, 这些配置文件用于在 Spring IOC 容器里配置 Bean. Bean 的配置文件可以放在 classpath 下, 也可以放在其它目录下。
applicationContext.xml
三、
编写Hello world实例
//HelloWorld.java
public class HelloWorld {
private String name;
public void setName(String name){
this.name = name;
}
public void hello(){
System.out.println("hello" + name);
}
}
A、传统方式调用方式
//Run.java
public class Run {
public static void main(String[] args) {
//new 一个 HelloWorld 对象
HelloWorld helloWorld = new HelloWorld();
//set 对象属性
helloWorld.setName("World");
//调用 hello 方法
helloWorld.hello();
}
}
B、Spring方式调用
配置文件applicationContext.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: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/context http://www.springframework.org/schema/context/spring-context-4.1.xsd">
<!-- Spring创建一个对象,id唯一标识这个类对象 -->
<bean id="helloWorld" class="com.spring.HelloWorld" >
<!-- 用setter方法注入来定义风格色属性名,设置hello对象的name属性
注意property的name值为set方法名去掉set并小写的值,如setName1 则这边对应的name为name1-->
<property name="name" value="world"></property>
</bean>
</beans>
//Run.java
public class Run {
public static void main(String[] args) {
//ApplicationContext 代表IOC容器接口
//ClassPathXmlApplicationContext:是ApplicationContext的实现类,该实现类从类路径下加载配置文件
//ApplicationContext ctx = new ClassPathXmlApplicationContext("applicationContext.xml");
// 1、创建Spring 的IOC 容器对象
ApplicationContext ctx = new ClassPathXmlApplicationContext("applicationContext.xml");
//2、从IOC容器中获取bean实例
HelloWorld helloWorld = (HelloWorld) ctx.getBean("helloWorld");
//调用 hello 方法
helloWorld.hello();
}
}
总结:跟传统的调用方式比起来,spring是直接在配置文件中配置对象和对象的属性,所以不需要再new 和 set,而是直接获取bean 对象,调用方法即可。