【笔记——Spring】初次接触,简介

我个人觉得Spring就是把程序分成各个小块,根据书本的知识,现列举一个最简单的例子:

首先,定义两个接口:

第一个接口为水果,包括一个吃的方法。

public interface Frult{
    public void eat();
}

第二个接口为人,包括一个买的方法。

public interface Person{
    public void buy();
}

其次,创建接口的实现类:

继承Fruit接口的类

public class Apple implements Frult{
    @Override
    public void take(){
        System.out.println("吃了苹果");
    }
}

继承Person接口的实现类:

public class Chinese implements Person{
  private Frult frult;
  public void setFrult(Frult frult){
    this.frult = frult;
  }

    @Override
    public void eat(){
        frult.take();
    }
}

 

然后通过配置文件(Xml),把这几个接口和类关联起来:

<?xml version = "1.0" encoding="utf-8"?>
<beans xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns="http://www.springframework.org/schema/beans"
    xsi:schemaLocation="http://www.springframework.org/schema/beans
    http://www.springframework.org/schema/beans/spring-beans-3.0.xsd">

    <!--以下是配置内容-->
    <bean id="chinese" class="Chinese">
        <property name="frult" ref="apple" />
    </bean>
    <bean id="apple" class="Apple" />
</beans>

 

然后,主方法,也就是如何使用

public static void main(String[] args){
   //获取Spring容器,也就是一个巨大的工厂。 
    ApplicationContext app = ClassPathXmlApplicationContext("bean.xml");
    //让这个工厂制造一个Person对象,第一个参数是选择实例化接口的哪个实现类
    Person p = app.getBean("chinese", Person.class);
    //有了对象,就能调用这个对象的方法
    p.eat();
}

 

程序的执行是这样的,首先,获取spring工厂,这个工厂可以自动帮你创建对象,需要一个对象,你只需要向上述一样通过

app.getBean("chinese",Peron.class);

第一个参数是需要的对象在xml配置文件里面的id属性名,第二个参数就是接口类。

更具xml里面的这行代码

<property name="frult" ref="apple" />

spring会自动寻找id为apple的那个项,并实例化他,然后把实例化的对象根据name属性传给相应的setter方法,也就是相当于调用了setFrult();

于是乎调用p.eat();

就能顺理成章的出现结果

吃了苹果

 

 

 

posted @ 2014-04-14 00:54  cirno_9  阅读(158)  评论(0)    收藏  举报