검색결과 리스트
개발자에 해당되는 글 2건
- 2021.02.03 org.springframework.beans.factory.BeanCreationException 에러 이유
- 2021.01.15 @ComponentScan 이란?
글
org.springframework.beans.factory.BeanCreationException 에러 이유
오늘은 Spring boot 프로젝트를 기본설정 하던중 org.springframework.beans.factory.BeanCreationException 이라는 에러에 부딪혔다.
처음에는 어딘가 부족한 라이브러리가 있다던가 properties 파일에서 설정이 잘못된줄 알고 있엇다.
※ 시도해본 방법 ※
1. odbc8에서 부족한 라이브러리 있는거 같아서 구글링을 한 후 [ osdt_core.jar ] 같은 라이브러리를 추가해주었다.
하지만 문제의 이유는 이것이 아니였다.
2. properties 파일에서 설정이 잘못 됫나 하고 애꿎은 설정만 건드렷엇다.
에러의 이유를 찾아서 이곳 저곳 건들다가 Console 창 에러내용의 끝부분을 보았더니.
xml 파일쪽에서 뭔가 에러가 나는 모양이다.
하지만 나는 해당 xml파일에 아무것도 개발한 것이 없었기 때문에 당연히 이 파일에서는 에러의 원인이 아닌줄 알았다.
하지만 에러의 원인은 아무것도 안한 index,xml 이 파일에서 나타나는 것이였다.
에러의 원인은 해당 xml 파일에
<mapper namespace="경로"> </mapper>
이 것을 안만들어 줘서 에러가 나는 것이엿다.
해당 에러의 원인을 알았으니 다음부터는 이러한 비슷한 에러가 나왓을때 실수하지 말아야 겠다.
해당 에러는 여러가지의 이유로 나타날 수 있습니다.
'Error' 카테고리의 다른 글
TypeError: Cannot read property 'msie' of undefined 에러잡기 (0) | 2020.12.31 |
---|
글
@ComponentScan 이란?
스프링 부트에서 공부를 하다보면은 @ComponentScan 이라는 어노테이션을 본적이 있을 것이다.
@ComponentScan 은 어떤 역할을 해주는가?
특정 어노테이션들을 자동으로 스캔을 해주는 아주 유용한 어노테이션이다.
기본적으로 @ComponentScan 어노테이션이 스캔해주는 대상은 5가지로 나뉠수 있다.
- @Component
- @Controller
- @Service
- @Repository
- @Configuration
5가지로 나뉘어 진다.
그리고 @ConponentScan 은 자기가 위치하고 있는곳부터 스캔을 시작한다.
무슨말이냐면은 프로젝트 파일구조가
java / com / spring / boot 라고 가정했을때 @ComponentScan 어노테이션을 가지고 있는 파일 현 위치가 com폴더에 존재고 있다고 하면은 com 위치부터 @Componet 가 붙어있는 녀석들을 찾아주는 것이다.
하지만 스프링 부트에서는 @ComponetScan 의 위치를 조절해야 하는 것들은 기본적으로 제공을 해주고 있다.
어떻게 제공을 해주고 있는가?
스프링 부트에서는
스프링 부트를 시작해주는 메인 메소드가 있다. 사진에 보이는 @SpringbootApplication 해당 어노테이션을 들어가 보면은
스프링 부트를 시작해주는 어노테이션에 우리가 알고싶어 하던 @ConponentScan 어노테이션이 정의 되어 있는 것을 확인 할 수 있다.
그렇다면 당연히 부트를 시작 Run을 하게되면은 우리가 @ComponentScan 으로 하나하나 조절해가야 하는것을 자연스럽게 스프링 부트가 기능을 대신 해주는 것을 확인 할 수 가 있을 것이다.
'Spring & Spring Boot' 카테고리의 다른 글
스프링 @Bean 의 LifeCycle 주기에 대해서 (0) | 2021.01.19 |
---|---|
@Configuration 과 싱글톤의 원리 (0) | 2021.01.10 |
Spring @Bean 등록과 사용 (0) | 2020.12.20 |
Spring 관심사의 분리 (의존관계 주입 개념) (0) | 2020.12.17 |
Spring Project 생성 방법 (0) | 2020.12.13 |