JUnit에서 자동 연결 : 다른 클래스가 아닌 테스트 클래스의 필드 만 바인딩

마크 길 센 드라

다음 테스트 클래스가 있습니다.

@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration("/**/context.xml")
public class HAD_Test extends TestCase {

    @Autowired
    private UgcService ugcService;

    @Test
    public void test() {
        // this binding works fine
        Ugc ugc = ugcService.getRegistro(138355);
        ...
        HAD_Data dData = new HAD_Data(ugc);
        data.init();
        ...
    }
}

그런 다음 다른 클래스가 있습니다.

public class HAD_Data {
    @Autowired
    private ClimaService climaService;

    public void init() {
        ...
        // at this point, climaService is null
        climaService.getRegistro(556)
        ...
    }
}

내가 가진 문제는 Test 클래스의 바인딩이 완벽하게 적용되고 있지만 HAD_Data와 같이 다른 자동 연결 필드가있는 클래스에서 바인딩되지 않는다는 것입니다. 항상 null 값이 있습니다.

이 바인딩이 할당되지 않은 이유를 모르겠습니다. 아무도 제발 도와 줄 수 있습니까? 다른 정보가 필요하면 포함 할 수 있지만 context.xml이 정확하다고 생각합니다. 일부 바인딩이 제대로 적용 되었기 때문입니다.

고마워, 마크

Sotirios Delimanolis

객체를 생성하는 사람이라면 Spring이 필드를 어떻게 주입 할 것으로 예상합니까?

HAD_Data dData = new HAD_Data(ugc);

Spring은 관리 Bean 만 자동으로 연결할 수 있습니다.

context.xmlfor에 빈 선언을 추가 HAD_Data하고 사용 하십시오 . 당신은 또한 사용할 수있는 @PostConstructinit()봄 초기화 후 호출을 담당하도록하는 방법.


또한 Java 규칙 _은 클래스 이름에서 사용을 권장하지 않습니다 .

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

자바, 슈퍼 클래스가 아닌 서브 클래스의 인스턴스

분류에서Dev

자바에서 객체를 만드는 방법. 테스트 클래스가 있지만 생성자가 아닙니다.

분류에서Dev

->의 기본 피연산자에 클래스 배열을 만들 때 포인터가 아닌 유형 오류가 있습니다.

분류에서Dev

TypeError : 클래스 메서드가 함수가 아닙니다. 바인딩에 대해 혼동합니다.

분류에서Dev

다른 클래스의 자바 편집 텍스트 필드

분류에서Dev

메서드에서 필요할 때 클래스가 다른 클래스의 여러 인스턴스를 만들어야하는 경우 종속성 주입

분류에서Dev

메서드에서 필요할 때 클래스가 다른 클래스의 여러 인스턴스를 만들어야하는 경우 종속성 주입

분류에서Dev

동일한 클래스가 아닌 다른 Java 클래스에서 문자열 정보 가져 오기

분류에서Dev

GetElementBy는 클래스가 아닌 ID에서만 작동합니다.

분류에서Dev

자체 JVM의 각 테스트 클래스와 병렬로 모든 junit 테스트를 수집하고 실행합니다 (메서드가 아닌 클래스별로 병렬화).

분류에서Dev

Python에서 인스턴스 메서드를 클래스 (클래스 인스턴스가 아님)에 동적으로 바인딩

분류에서Dev

자바 스크립트에서 다른 클래스의 인스턴스를 통해 다른 클래스 내부의 메소드에 액세스하는 방법

분류에서Dev

자바에서 다른 클래스 객체의 스레드

분류에서Dev

한 필드가 다시 다른 클래스의 개체 인 datagridview에 클래스의 개체 목록을 바인딩하는 방법은 무엇입니까?

분류에서Dev

테스트 된 클래스의 Spring JUnit 테스트 자동 연결 변수

분류에서Dev

다른 클래스 내에서 모의 클래스의 인스턴스를 만드는 방법

분류에서Dev

추상 클래스의 하위 클래스가 아닌 인터페이스 구현자가 해당 인터페이스의 추상 클래스처럼 동작하도록 만드는 방법은 무엇입니까?

분류에서Dev

클래스 바인딩을 기반으로 다른 유형의 개체를 만드는 단일 공급자

분류에서Dev

자바 : 하위 클래스가 아닌 필드와 메서드에 액세스 할 수있을 때 클래스를 확장해야하는 이유

분류에서Dev

클래스를 다른 클래스의 인스턴스에 바인딩

분류에서Dev

Java 문제 : 한 하위 클래스의 생성자가 다른 하위 클래스 인스턴스의 필드에 영향을주는 계산

분류에서Dev

다른 클래스에서 작동하지 않는 바인딩

분류에서Dev

정적 메서드에서 클래스 수준 잠금을 만들고 한 스레드가 실행하면 동일한 클래스의 다른 인스턴스 메서드를 실행하는 다른 스레드를 차단합니까?

분류에서Dev

다른 클래스에서 한 클래스의 인스턴스 만들기

분류에서Dev

다른 클래스 내에서 클래스의 인스턴스 만들기

분류에서Dev

__add__는 서브 클래스가 아닌 슈퍼 클래스의 인스턴스를 반환합니다.

분류에서Dev

메서드를 다른 클래스에 바인딩

분류에서Dev

한 클래스의 값을 다른 클래스의 다른 값에 바인딩

분류에서Dev

Bash 정규식 테스트의 문자 클래스에서 빼기 기호와 문자 클래스 바로 가기를 결합하지 못했습니다.

Related 관련 기사

  1. 1

    자바, 슈퍼 클래스가 아닌 서브 클래스의 인스턴스

  2. 2

    자바에서 객체를 만드는 방법. 테스트 클래스가 있지만 생성자가 아닙니다.

  3. 3

    ->의 기본 피연산자에 클래스 배열을 만들 때 포인터가 아닌 유형 오류가 있습니다.

  4. 4

    TypeError : 클래스 메서드가 함수가 아닙니다. 바인딩에 대해 혼동합니다.

  5. 5

    다른 클래스의 자바 편집 텍스트 필드

  6. 6

    메서드에서 필요할 때 클래스가 다른 클래스의 여러 인스턴스를 만들어야하는 경우 종속성 주입

  7. 7

    메서드에서 필요할 때 클래스가 다른 클래스의 여러 인스턴스를 만들어야하는 경우 종속성 주입

  8. 8

    동일한 클래스가 아닌 다른 Java 클래스에서 문자열 정보 가져 오기

  9. 9

    GetElementBy는 클래스가 아닌 ID에서만 작동합니다.

  10. 10

    자체 JVM의 각 테스트 클래스와 병렬로 모든 junit 테스트를 수집하고 실행합니다 (메서드가 아닌 클래스별로 병렬화).

  11. 11

    Python에서 인스턴스 메서드를 클래스 (클래스 인스턴스가 아님)에 동적으로 바인딩

  12. 12

    자바 스크립트에서 다른 클래스의 인스턴스를 통해 다른 클래스 내부의 메소드에 액세스하는 방법

  13. 13

    자바에서 다른 클래스 객체의 스레드

  14. 14

    한 필드가 다시 다른 클래스의 개체 인 datagridview에 클래스의 개체 목록을 바인딩하는 방법은 무엇입니까?

  15. 15

    테스트 된 클래스의 Spring JUnit 테스트 자동 연결 변수

  16. 16

    다른 클래스 내에서 모의 클래스의 인스턴스를 만드는 방법

  17. 17

    추상 클래스의 하위 클래스가 아닌 인터페이스 구현자가 해당 인터페이스의 추상 클래스처럼 동작하도록 만드는 방법은 무엇입니까?

  18. 18

    클래스 바인딩을 기반으로 다른 유형의 개체를 만드는 단일 공급자

  19. 19

    자바 : 하위 클래스가 아닌 필드와 메서드에 액세스 할 수있을 때 클래스를 확장해야하는 이유

  20. 20

    클래스를 다른 클래스의 인스턴스에 바인딩

  21. 21

    Java 문제 : 한 하위 클래스의 생성자가 다른 하위 클래스 인스턴스의 필드에 영향을주는 계산

  22. 22

    다른 클래스에서 작동하지 않는 바인딩

  23. 23

    정적 메서드에서 클래스 수준 잠금을 만들고 한 스레드가 실행하면 동일한 클래스의 다른 인스턴스 메서드를 실행하는 다른 스레드를 차단합니까?

  24. 24

    다른 클래스에서 한 클래스의 인스턴스 만들기

  25. 25

    다른 클래스 내에서 클래스의 인스턴스 만들기

  26. 26

    __add__는 서브 클래스가 아닌 슈퍼 클래스의 인스턴스를 반환합니다.

  27. 27

    메서드를 다른 클래스에 바인딩

  28. 28

    한 클래스의 값을 다른 클래스의 다른 값에 바인딩

  29. 29

    Bash 정규식 테스트의 문자 클래스에서 빼기 기호와 문자 클래스 바로 가기를 결합하지 못했습니다.

뜨겁다태그

보관