码迷,mamicode.com
首页 > 编程语言 > 详细

8 -- 深入使用Spring -- 2...3 使用@Resource配置依赖

时间:2017-02-11 12:13:35      阅读:144      评论:0      收藏:0      [点我收藏+]

标签:component   实例   set   frame   规范   div   not   ring   --   

      8.2.3 使用@Resource配置依赖

        @Resource 位于javax.annotation包下,是来自Java EE规范的一个Annotation,Spring直接借鉴了该Annotation,通过使用该Annotation为目标Bean指定协作者Bean。

        @Resource 有一个name属性,在默认情况下,Spring将这个值解释为需要被注入的Bean实例的id。换句话说,使用@Resource与<property.../>元素的ref属性相同的效果。

        Class : 修饰setter方法package edu.pri.lime._8_2_3.bean.impl;

import org.springframework.stereotype.Component;

import edu.pri.lime._8_2_3.bean.Axe;
import edu.pri.lime._8_2_3.bean.Person;

@Component
public class Chinese implements Person {

    private Axe axe;
    
    /*指定将容器中的steelAxe作为setAxe方法的参数。*/
   /*当省略name属性时,name属性值默认为该setter方法去掉前面的set字串、首字母小写后得到的字串*/
@Resource(name="steelAxe") public void setAxe(Axe axe) { this.axe = axe; } public void useAxe() { System.out.println(axe.chop()); } public Axe getAxe() { return axe; } }

        Class : 修饰Field

package edu.pri.lime._8_2_3.bean.impl;

import edu.pri.lime._8_2_3.bean.Axe;
import edu.pri.lime._8_2_3.bean.Person;

public class French implements Person {

    /*此时Spring将会直接使用Java EE规范的Field注入,此时连setter方法都可以不要。*/
    /*当省略name属性时,name属性值默认与该实例变量同名*/
    @Resouce(name="steelAxe")
    private Axe axe;
    
    public void useAxe() {
        System.out.println(axe.chop());
    }

}

啦啦啦

啦啦啦

8 -- 深入使用Spring -- 2...3 使用@Resource配置依赖

标签:component   实例   set   frame   规范   div   not   ring   --   

原文地址:http://www.cnblogs.com/ClassNotFoundException/p/6388790.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!