zoukankan      html  css  js  c++  java
  • 使用注解的方式来定义bean的作用域 即实现单例或原型

    第一步:新建工程   SecondSpring

    文件目录结构如下:

    第二步:导入相应的spring  jar包

    略...

    第三步: 新建类

    AnnotationTest.java

    package com.xuzhiwen.spring4;
    
    import org.springframework.context.annotation.Scope;
    import org.springframework.stereotype.Service;
    
    
    @Service
    @Scope("singleton")
    public class AnnotationTest {
        public String name;
    
        public String getName() {
            return name;
        }
    
        public void setName(String name) {
            this.name = name;
        }
    }

    第四步: 新建配置文件

    common.xml

    <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-2.5.xsd">
    <import resource
    ="xmlfolder/app1.xml" /> <import resource="xmlfolder/innerbean.xml" /> <import resource="xmlfolder/singleton.xml" /> <import resource="xmlfolder/annotation.xml" />
    </beans>

    第五步:新建配置文件

    annotation.xml

    <beans xmlns="http://www.springframework.org/schema/beans"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xmlns:context="http://www.springframework.org/schema/context"
        xsi:schemaLocation="http://www.springframework.org/schema/beans
        http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
        http://www.springframework.org/schema/context
        http://www.springframework.org/schema/context/spring-context-2.5.xsd">
        
        <context:component-scan base-package="com.xuzhiwen.spring4" />
        
    </beans>    

    第六步: 编写测试类

    package com.xuzhiwen.spring4;
    
    import org.springframework.context.ApplicationContext;
    import org.springframework.context.support.ClassPathXmlApplicationContext;
    
    public class Test {
        public static void main(String[] args) {
            ApplicationContext app = new ClassPathXmlApplicationContext("common.xml");
            AnnotationTest test1 = (AnnotationTest) app.getBean("annotationTest");
            test1.setName("helloworld");
            
            
            AnnotationTest test2 = (AnnotationTest) app.getBean("annotationTest");
            System.out.println(test2.getName());
        }
    }

    第七步:运行结果如下

    注: 同理可实现原型

  • 相关阅读:
    (转)AS3中实现卡马克卷轴算法
    (转)flash位图缓存cacheAsBitmap
    (转)addFrameScript函数的纠结
    (转)flash安全策略文件
    (转)脏矩形技术学习
    (转)stopImmediatePropagation 和stopPropagation的区别
    (转)flash对象池技术
    揭开嵌入式C面试题背后的玄机
    一次遍历找链表倒数第n个节点
    N!的尾部连续0的个数
  • 原文地址:https://www.cnblogs.com/beibidewomen/p/7389437.html
Copyright © 2011-2022 走看看