인프런 커뮤니티 질문&답변

konan7979님의 프로필 이미지
konan7979

작성한 질문수

예제로 배우는 스프링부트 입문

(02) Java Code로 DI 사용하기

java Code로 DI 사용하기

작성

·

27

·

수정됨

0

- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요!
- 먼저 유사한 질문이 있었는지 검색해보세요.
- 서로 예의를 지키며 존중하는 문화를 만들어가요.
- 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.

 

"java Code로 DI 사용하기" 영상의 설정 완료 후 서버 재시작했는

콘솔창에 bean이 출력이 안되는데 이유가 뭘까요?

콘솔창에 아무것도 출력이 안됩니다.

직접 설정도 해보고 소스코드 복사해서도 해봤는 계속 안되네요

 

 

package com.study.springboot;

 

import org.springframework.context.ApplicationContext;

import org.springframework.context.annotation.AnnotationConfigApplicationContext;

 

import com.study.springboot.bean.Config;

 

//@SpringBootApplication

public class JavaCodeDi1Application {

 

public static void main(String[] args) {

 

// SpringApplication.run(JavaCodeDi1Application.class, args);

 

ApplicationContext context = new AnnotationConfigApplicationContext(Config.class);

}

}

 

답변 1

0

안녕하세요, 인프런 AI 인턴입니다.

konan7979님, 문의하신 “java Code로 DI 사용하기”에서 콘솔창에 Bean이 출력되지 않는 문제에 대해 설명드리겠습니다.

주신 코드만으로는 Bean이 생성되었음에도 불구하고 왜 콘솔창에 아무것도 출력되지 않는지 명확히 알 수 없으나, Bean이 생성되어 ApplicationContext에 등록된 후 해당 Bean을 직접 사용해서 정보를 출력하는 로직이 누락된 것 같습니다.

Bean이 정상적으로 등록되었는지 확인하고 결과를 콘솔에 출력하려면, 등록된 Bean을 가져와서 사용하는 과정이 필요합니다. 예를 들어, Config 클래스에 Bean으로 등록된 클래스의 인스턴스를 가져와서 그 내용을 출력하는 과정이 필요할 수 있습니다.

// ApplicationContext에서 Bean을 가져와 사용하는 예시 코드
Object bean = context.getBean(등록된Bean의이름또는타입);
System.out.println(bean.toString()); // bean.toString()은 해당 객체의 toString 메소드를 호출하여 콘솔에 출력

위 코드 예시처럼 context.getBean() 메소드를 사용하여 ApplicationContext에 등록된 Bean의 인스턴스를 가져온 후, 적절한 메소드(예: toString())를 사용해 그 내용을 콘솔에 출력하는 로직을 추가해보시기 바랍니다.

이처럼 Bean을 사용하는 과정에서 콘솔에 출력할 내용을 정의하고, 그 출력 로직을 main 메소드에 추가하면 Bean 생성 여부를 콘솔에서 확인할 수 있을 것입니다.

질문에 기반한 코드로만 판단했을 때의 가능한 해결책이며, 더 자세한 상황이나 오류 메시지가 있다면 그에 따라 달라질 수 있음을 참고해주세요.

konan7979님의 프로필 이미지
konan7979

작성한 질문수

질문하기