이전 포스팅에서 applicationContext를 통해서 bean을 넣는것이랑 Bean에 대한 개념을 다룬글이 있다.
자세한 내용은 아래 참고 포스팅을 참고 바란다.
이번 포스팅은 Springboot에서 서버를 기동 시키게 될때 Spring container는 bean을 모두 등록하는데
그 리스트를 출력을 하는방법을 다뤄보려고 한다.
SpringBoot 프로젝트를 starter 를 통해서 생성을 할 경우
Project명Application.java 파일이 자동으로 생성이 된다.
그 안에는 package랑 기본적인 main 메서드가 들어가있다.
아래와 같다.
package com.명; import org.springframework.boot.autoconfigure.SpringBootApplication; @SpringBootApplication public class TestProjectApplication { public static void main(String[] args) { SpringApplication.run(TestProjectApplication.class, args); } } |
이 main메서드가 실행이되면서 springboot 프로젝트가 기동이 되는데,
이때 bean이 등록되는것을 추출해볼수 있다.
public static void main(String[] args) { // SpringApplication.run(TestProjectApplication.class, args); ApplicationContext applicationContext = SpringApplication.run(TestProjectApplication.class, args); String[] beanNames = applicationContext.getBeanDefinitionNames(); for (String beanName : beanNames) { System.out.println(beanName); } } |
이렇게 하면 출력이 되고 특정 패키지 안에 있는것만 출력하도록 조건을 걸면 내가 만든 패키지, 특정 패키지 내의 bean만 출력해볼수도 있다.
참고 포스팅
https://thenicesj.tistory.com/517
ApplicationContext(스프링 컨테이너)
ApplicationContext를 스프링 컨테이너라고 한다. ApplicationContext는 BeanFactory 인터페이스의 하위 인터페이스이고, ApplicationContext는 BeanFactory에 부가기능을 추가한 것이다. 자세한 기능에 대해서는 공식
thenicesj.tistory.com
https://thenicesj.tistory.com/320
Spring Bean 등록
이전 포스팅에서 스프링에서 DI 와 IoC를 사용하기 위해서는 스프링에 Bean을 등록해줘야하고 그에 대한 내용은 아래 참고포스팅에서 알아볼수 있다. 하지만 스프링을 다루기 위해서는 가장 중요
thenicesj.tistory.com
'IT > Java' 카테고리의 다른 글
kafka 실습 (springboot에서 활용) (31) | 2023.06.05 |
---|---|
custom annotation 활용 (51) | 2023.06.02 |
mybatis 에서 dto camel case 적용 (59) | 2023.05.29 |
@Data annotation 과 getter 의 관계(23.05.24) (30) | 2023.05.25 |
aop pointcut 정리(추가 정리) (62) | 2023.05.15 |
댓글