1.入门例子
开发环境
JDK7+
Eclipse 4.5
Spring framework 4.0+
Spring核心开发包介绍
Spring Core:基本核心。Spring 其它组件要都要使用到这个包里的类,是其它组件的基本核心,当然你也可以在自己的应用系统中使用这些工具类。外部依赖Commons Logging, (Log4J)。
Spring Beans:这个jar 文件是所有应用都要用到的,它包含访问配置文件、创建和管理bean 以及进行Inversion of Control / Dependency Injection(IoC/DI)操作相关的所有类。如果应用只需基本的IoC/DI 支持,引入spring-core.jar 及spring-beans.jar 文件就可以了。
外部依赖spring-core,(CGLIB)。
Spring Aop: 这个jar 文件包含在应用中使用Spring 的AOP 特性时所需的类和源码级元数据支持。使用基于AOP 的Spring特性,如声明型事务管理(Declarative Transaction Management),也要在应用里包含这个jar包。外部依赖spring-core, (spring-beans,AOP Alliance, CGLIB,Commons Attributes)。
Spring Context: 这个jar 文件为Spring 核心提供了大量扩展。可以找到使用Spring ApplicationContext特性时所需的全部类,JDNI 所需的全部类,instrumentation组件以及校验Validation 方面的相关类。
外部依赖spring-beans, (spring-aop)。
示例程序
示例说明
部门的程序员中有做C++开发,有做Java开发。通过工牌可以快速了解该程序员所使用的开发语言。
Programmer:类表示程序员。
IWorkCard:工牌接口。
JavaProgrammer:表示Java程序员
CProgramme:表示C++程序员
Main类程序入口。
类关系图如下:

工牌的具体内容有spring的配置所决定。
maven依赖
<!-- spring-core -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
<version>4.3.5.RELEASE</version>
</dependency>
<!-- spring-beans -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-beans</artifactId>
<version>4.3.5.RELEASE</version>
</dependency>
<!-- spring-aop -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-aop</artifactId>
<version>4.3.5.RELEASE</version>
</dependency>
<!-- spring-context -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>4.3.5.RELEASE</version>
</dependency>
<!-- commons-logging -->
<dependency>
<groupId>commons-logging</groupId>
<artifactId>commons-logging</artifactId>
<version>1.2</version>
</dependency>
实现代码
Programmer类代码
package com.maven.study.mavenstudy; public class Programmer { private IWorkCard work; public IWorkCard getWork() { return work; } public void setWork(IWorkCard work) { this.work = work; } public String getWorkCard(){ return this.work.getWorkCard(); } }
接口类代码
package com.maven.study.mavenstudy; public interface IWorkCard { String getWorkCard(); }
JavaProgrammer类代码
package com.maven.study.mavenstudy; public class JavaProgrammer implements IWorkCard { public String getWorkCard() { // TODO Auto-generated method stub return "Java程序员"; } }
CProgramme类代码
package com.maven.study.mavenstudy; public class CProgramme implements IWorkCard { public String getWorkCard() { // TODO Auto-generated method stub return "C++程序员"; } }
Spring配置文件
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE beans PUBLIC "-//SPRING/DTD BEAN/EN"
"http://www.springframework.org/dtd/spring-beans.dtd">
<beans>
<bean id="Java" class="com.maven.study.mavenstudy.JavaProgrammer"></bean>
<bean id="Cplus" class="com.maven.study.mavenstudy.CProgramme"></bean>
<bean id="programmer" class="com.maven.study.mavenstudy.Programmer">
<property name="work" ref="Java"/>
</bean>
</beans>
运行结果:

浙公网安备 33010602011771号