Spring学习(一)

搭建环境

1、创建普通的Java工程

2、添加相应的jar包,下载链接:https://files.cnblogs.com/files/AmyZheng/lib.rar,此外,为了打印信息,我们还需要一个Apache Commons Logging API,在这里下载commons-logging-1.2。

3、jar包

  • Spring核心必须依赖的库:commons-logging-1.1.1.jar
  • Spring IoC部分核心库:

    spring-beans-4.3.9.RELEASE.jar
    spring-context-4.3.9.RELEASE.jar
    spring-context-support-4.3.9.RELEASE.jar
    spring-core-4.3.9.RELEASE.jar
            spring-expression-4.3.9.RELEASE.jar
            spring-web-4.3.9.RELEASE.jar      ------> 支持在Web环境中使用Spring IoC容器

  • Spring AOP部分核心库:

          spring-aop-4.3.9.RELEASE.jar
          spring-aspects-4.3.9.RELEASE.jar

  • Spring AOP需要依赖于aspectj库:    

          aspectjrt.jar
          aspectjweaver.jar

第一个实例

1、新建一个配置文件,用于配置和管理所有的bean。

beans.xml





    
    
    
        
        
    

每一个bean的Id唯一

2、新建Java测试类

package ecut.ioc.ex;

import java.util.Date;
import java.util.Map;

import org.springframework.context.support.AbstractApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;

public class Test {

    public static void main(String[] args) {
        //classpath和classpath下的所有jar包
        System.out.println( System.getProperty( "java.class.path" ) );
        //configLocations为不定参数,classpath当前工程下的bin目录下D:\java_workspace\java\Spring\bin;
        String configLocations = "classpath:ecut/**/ex/beans.xml" ;
        //String configLocations = "classpath:ecut/ioc/ex/beans.xml" ;
        //String configLocations = "classpath:beans.xml" ;//若配置文件在src目录底下
        
        // AbstractApplicationContext 实现了 org.springframework.context.ApplicationContext 接口
        //    ClassPathXmlApplicationContext 继承了 org.springframework.context.support.AbstractApplicationContext
        AbstractApplicationContext context = new ClassPathXmlApplicationContext(configLocations);
        //name 与xml中的bean标签的ID相对应
        Date date = context.getBean( "birthdate", Date.class );
        
        System.out.println( date );
        
        Map map = context.getBean( "map" , Map.class );
        
        System.out.println( map );
        //ApplicationContext没有close方法,AbstractApplicationContext
        context.close();
        
    }

}
package ecut.ioc.ex;

import java.util.Date;
import java.util.Map;

import org.springframework.context.support.AbstractApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;

public class Test {

    public static void main(String[] args) {
        //classpath和classpath下的所有jar包
        System.out.println( System.getProperty( "java.class.path" ) );
        //configLocations为不定参数,classpath当前工程下的bin目录下D:\java_workspace\java\Spring\bin;
        String configLocations = "classpath:ecut/**/ex/beans.xml" ;
        //String configLocations = "classpath:ecut/ioc/ex/beans.xml" ;
        //String configLocations = "classpath:beans.xml" ;//若配置文件在src目录底下
        
        // AbstractApplicationContext 实现了 org.springframework.context.ApplicationContext 接口
        // ClassPathXmlApplicationContext 继承了 org.springframework.context.support.AbstractApplicationContext
        AbstractApplicationContext context = new ClassPathXmlApplicationContext(configLocations);
        //name 与xml中的bean标签的ID相对应
        Date date = context.getBean( "birthdate", Date.class );
        
        System.out.println( date );
        
        Map map = context.getBean( "map" , Map.class );
        
        System.out.println( map );
        //ApplicationContext没有close方法,建议使用AbstractApplicationContext
        context.close();
        
    }

}

因为ApplicationContext没有close方法,建议使用AbstractApplicationContext来创建一个spring 容器, 这个容器读取classpath(当前工程下的bin目录)下的配置文件,并由容器去创建相应的对象,最后提供getBean方法获取name(  与xml中的bean标签的Id相对应)所指定的对象。

转载请于明显处标明出处

https://www.cnblogs.com/AmyZheng/p/9243783.html

你可能感兴趣的:(框架,Spring)