@Autowired 어노테이션의 경우 주로 변수 위에 설정하여 해당 타입의 객체를 찾아서 자동으로 할당한다.

그러므로 위의 private UserDAO userDAO의 경우 변수 선언만 했지 객체 할당을 하지않았다.

 

그러므로 위 상태에서 실행을 해버리면 userDAO의 메소드는 실행이 되어지지 않는다.

그러나 우리는 @Autowired 어노테이션으로 해당 변수위의 입력했기 때문에

해당 어노테이션이 해당 변수의 타입을 체크하고 그 타입의 객체가 메모리에 존재하는지 확인 후에 그 객체를 변수에 주입한다.

Client 파일 실행시 위와 같은 오류가 발생하였다

해당 문제의 경우 아래와 같이 applicationContext.xml 파일에서 export 후 다시 import하였으나 이번에는 Cannot find the declaration of element 'beans' 오류가 발생하였다

 

해당 문제의 경우 구글링 진행 후 여러가지 방법을 진행하였으나 동일하여 그냥 깔끔하게 기존 파일 삭제 후 새로 파일을 생성하였다.

 

생성 후 다음과 같이 import하였다

삭제 후 재import시에는 사진과 같이 에러 라인이 없는 것을 확인할 수 있다.

Maven Dependencies에 정상적으로 import하였으나 applicationContext.xml에 해당 부분에서 해당 class를 인식하는 문제가 발생하였다.

 

해당 문제의 경우 해당 class를 정상적으로 import 못하여 발생한 것으로 추측된다.

문제의 해결은 아래와 같이 진행하였다.

 

위와 같이 정상적으로 import하였으나 인식을 못한다.

 

이 경우 pom.xml로 이동한다.

이동 후 기존의 commons-dbcp 1.4를 remove 진행한다.

remove 후 해당 폴더로 이동하여 폴더에서도 dbcp 1.4를 삭제해준다.

그 다음 dbcp 1.4 ver을 추가해준다.

추가 후 저장해주면 정상적으로 load할 수 있게 되어진다.

  용어 정리  
용어 설명 비고
트랜잭션(Transaction)

트랜잭션이란 데이터 베이스 상태를 변화시키기 위해서 수행하는 작업

우측 비고의 명령어들이 대표적인 트랜잭션이다.

ㆍInsert
ㆍDelete
ㆍSelect
ㆍUpdate
AOP(Aspect Oriented Programmin) 관점지향 프로그래밍으로 핵심적인 기능에서 부가 기능을 분리하는 기능 https://namubada.net/79
     
     
     
     

해당 코드를 실행하니 아래와 같은 오류가 발생하였다.

해당 오류의 경우 db쪽 문제로 db를 한번 확인해봐야한다.

 

오류의 원인은 h2 db에 있었다.

다른 db의 경우 별도의 실행없이 db에 저장이 가능하지만, h2 db의 경우 실행 후 저장이 가능하다.

그러므로 db 실행 후 다시 확인해보면 정상 to load가 가능하다.

 

 

 

+ Recent posts