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>


运行结果:

posted on 2017-01-17 00:44  十三公子  阅读(103)  评论(0)    收藏  举报

导航