spring注解不支持靜態變量注入


spring注解不支持靜態變量注入:今天敲代碼  自動配置 配置:

Animal.java
 1 package study01_autoconfig.beanConfig;
 2 
 3 import org.springframework.stereotype.Component;
 4 
 5 @Component
 6 public class Person implements Animal{
 7     private String name;
 8     
 9     public void talk() {
10         name="linhua";
11         System.out.println("hi I'm "+name);
12     }
13 }
Person.java繼承Anima
 1 package study01_autoconfig.beanConfig;
 2 
 3 import org.springframework.context.annotation.ComponentScan;
 4 import org.springframework.context.annotation.Configuration;
 5 
 6 @ComponentScan
 7 @Configuration
 8 public class PersonConfig {
 9     
10 }
配置類

測試類:

package study01_autoconfig.beanConfig;

import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.test.context.ContextConfiguration;
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
@RunWith(SpringJUnit4ClassRunner.class)  //不寫這個會報錯。。。。。
@ContextConfiguration(classes=PersonConfig.class)
public class PersonTest {
    @Autowired
    //spring annotation不支持靜態變量注入

    static  Person per; //當為靜態變量注入時,會報Autowired annotation is not supported on static fields
    @Test
    public  void test1() {
        per.talk();
    }
    //不能在main方法里面,否則會報空指針
    /*public static void main(String[] args) {
        per.talk();
    }*/
    
}

然后發現  ,spring注解不支持靜態變量注入

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM