版权声明

  笔记出自《Spring 开发指南》一书。

Spring 初探

  前面我们简单介绍了 Spring 的基本组件和功能,现在我们来看一个简单示例:

  1. Person接口
    Person接口定义了一个 say 的方法,在其不同的实现中实现了各自的 say 逻辑。

     /**
      * @author X
      */
     public interface Person {
    
         public void say();
     }
  2. Person接口的两个实现
     /**
      * @author X
      */
     public class Man implements Person {
    
         private String word;
    
         public String getWord() {
             return word;
         }
    
         public void setWord(String word) {
             System.out.println("执行了Set");
             this.word = word;
         }
    
         @Override
         public void say() {
             System.out.println("一个男人委屈的说:" + word);
         }
     }
     /**
      * @author X
      */
     public class Woman implements Person {
    
         private String word;
    
         public String getWord() {
             return word;
         }
    
         public void setWord(String word) {
             this.word = word;
         }
    
         @Override
         public void say() {
             System.out.println("一个女人委屈的说:" + word);
         }
     }
  3. Spring配置文件(bean.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"
            xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">
    
         <bean id="TheAction" class="Man">
             <property name="word">
                 <value>一百块钱都不给我还打我</value>
             </property>
         </bean>
     </beans>
  4. 调用代码
     import org.springframework.context.ApplicationContext;
     import org.springframework.context.support.FileSystemXmlApplicationContext;
    
     /**
      * @author X
      */
     public class Run {
         public static void main(String[] args) {
    
             ApplicationContext ac = new FileSystemXmlApplicationContext("D:\\Study\\study-spring\\src\\main\\resources\\bean.xml");
    
             Person action = (Person) ac.getBean("TheAction");
             action.say();
         }
     }

    运行结果如下图所示:

     Spring学习笔记(二) 初探Spring-LMLPHP

  怎么样,是不是很简单?通过这个简单的例子,我们可以看到,我们在实例化Person的时候,根本无需知道它是如何实现的。在编码中,我们只需要去关心接口就可以了,而无需关心它的创建过程,因为这件事 Spring 已经帮我们做掉了。如果你想了解更多,推荐你去了解控制反转(IOC)和依赖注入(DI)的概念。

04-24 17:02
查看更多