本帖最后由 o0caicaihua 于 2014-10-11 19:47:47 编辑

解决方案 »

  1.   

    不太清楚,我猜@Resource应该只对@Repository管用吧!建议你用@Autowire或者把Student的注解使用@Repository看看
      

  2.   

    你既然使用Resource,应该是想用bean name 装载吧,可以如下试一试,@service("类名")@resource(name = "类名")
    或者使用@AutoWare,自动装载...
      

  3.   

    Autowire没用的话你输出放main里面看看
    可能构造方法执行时候还没注入bean
      

  4.   


    你根本就没用过注解楼主你要知道执行的顺序创建一个对象的时候
    ,首先 是 对成员变量初始化
    然后 是 调用构造函数
    构造函数调用完毕后这个对象才算真正的new出来
    然后再通过反射注入对象 public Student student; public Test() {
    System.out.println(student);
    } @Resource
    public void setStudent(Student student) {
    this.student = student;
    System.out.println(student + "--------set");
    }打印
    null
    cn.Student@b8c3679--------set