과거의나야도와줘
Spring 05. Spring 환경 설정 1 본문
주의!
공부하면서 제가 이해한 대로 쓰는거라 잘못된 부분이 있을 수 있습니다
만약 잘못된 부분이 있다면 댓글로 가르쳐주시면 감사합니다
01. 자바 프로젝트 만들기
스프링에서 컨테이너에 객체를 등록하고 의존관계를 설정한 뒤 객체를 회수하는 일련의 과정을 연습하기 위해서
프로젝트를 하나 만들어 볼건데요 포켓몬으로 만들어볼게요
자바 프로젝트를 하나 만드시고 아래를 참고해서 인터페이스와 클래스를 만들어봐요
public interface Pokemon {
public String getInfo();
}
포켓몬 인터페이스
public class Pikachu implements Pokemon{
@Override
public String getInfo() {
return "피카피카 피카츄";
}
}
피카츄 클래스
public class Squirtle implements Pokemon {
@Override
public String getInfo() {
return "꼬북꼬북 꼬부기";
}
}
꼬부기 클래스
public class Trainer {
// 인터페이스로 결합하는 느슨한 결합
private Pokemon pokemon;
public Trainer() {
}
public void setPokemon(Pokemon pokemon) {
this.pokemon = pokemon;
}
}
트레이너 클래스
public class Test {
}
테스트 클래스는 빈 껍데기만 만들어 놓고 나중에 쓸게요
02. 메이븐 프로젝트로 변환
자 여기까지는 익숙한 작업이실거고
이제부터는 스프링을 사용하기 위해
이 프로젝트를 메이븐 프로젝트라는 것으로 바꿀 겁니다.
메이븐은 빌드관리도구이며 라이브러리 세팅을 엄청 쉽게 해주는 친구에요
한 번 위에서 만든 프로젝트를 메이븐 프로젝트로 바꿔 볼까요?
메이븐 프로젝트로 변환 방법
프로젝트 우클릭 -> Configure 클릭 -> Convert to Maven Project 클릭
Create new POM 창이 뜨면 Finish를 누르면 끝!
이렇게 자바 프로젝트를 메이븐 프로젝트로 변환 하시고 나면
원래는 없던 bin폴더 target폴더 pom.xml 이런 것들이 생기는데요
위 화면처럼 나오면 됩니다.
그런데 메이븐 프로젝트에는 한 가지 아쉬운 점이 있는데요
고장이 자주 납니다 (ex.객체 인식을 못한다던가(당해봄) )
따라서 내 코드는 분명히 틀린게 없는데 메이븐이 고장난 것 같다 싶으시면
다음의 세 가지 방법을 1번 부터 한 번 사용해보세요
1번 해보고 코드 돌려보고 안 되면 2번 해보고 코드 돌려보고 안되면
내 코드에 문제가 있는지 다시 한 번 확인해보고 정 안되면 3번을 해보세요
(3번까지 해도 해결이 안 될 수가 있는데요 구글님께 물어보시는게 빠르실수도)
메이븐에 문제 있을시 해결방법 3가지
1. alt + F5 update project. (프로젝트 우클릭 -> Maven 클릭 -> Update Project 클릭)
2. 상단메뉴 project > clean
// 이 3번은 정말 뭘해도 안 될때만 하세요 좋은 방법은 아닙니다
3. 이클립스 끄고 user(사용자) 폴더의 m2폴더내의 repository 폴더 삭제
03. 메이븐으로 라이브러리 가져오기
이제 친숙해져야 할 사이트 한 곳을 소개해 드리겠습니다.
Maven Repository: Search/Browse/Explore (mvnrepository.com)
바로 Maven Repository라는 사이트 인데요
이 사이트에서 여러 외부 라이브러리를 순식간에 내 프로젝트로 가져올 수 있습니다
우리는 스프링을 한 번 가져와 볼께요
검색창에 spring을 검색하고 맨 위에 있는 Spring Context를 클릭 하세요
클릭 하시면 여러 버전이 쫙 나오는데요
위에 있는 최신 버전들 중에 Usages가 가장 많은 버전을 선택 하시면 됩니다
(다른 사람들이 많이 사용한다는 거는 그만큼 믿을만 하다는 것이겠죠?)
우리는 5.3.18버전으로 가져와 볼게요
5.3.18을 클릭하면 이 밑의 화면이 나오는데요 화살표의 저 부분을 클릭하면 자동으로 클립보드에 복사가 됩니다
밑에 빨갛게 복사 되었다고 친절하게 안내도 해주는데요
정 못 믿으시겠다면 전체 드래그하고 Ctrl+C 하시는게 마음이 편하실 수도?
복사를 했으니 이제 붙여 넣으면 끝입니다
아까 새로 생긴 pom.xml을 누르시고 아래를 보시면
</build>
</project>
요렇게 생긴 부분이 있는데요 이 사이에 이제 붙여넣을겁니다
저기에 붙여 넣기전에 <dependencies></dependencies>도 추가해 줘야 합니다
저기에 직접 써주시면 돼요
이제 진짜 붙여 넣기전에 자기의 프로젝트를 한 번 보시고 어떻게 변화하는지 한 번 볼까요
이제 진짜 붙입시다
붙이고나니까 프로젝트 부분에 Maven Dependencies라는게 생겼네요 뭐가 들었나 한 번 볼까요
Maven Repository 사이트에서 검색 한 번, 클릭 두 번, 복사 한 번 하고
pom.xml에 붙여 넣으니까 우리가 필요한 jar 파일들이 세팅이 완료되었습니다.
저 jar들이 무엇을 하는지는 몰라도 일단은 편리하죠?
이렇게 라이브러리 세팅까지 완료하면 이제 스프링 설정 파일을 만들고 객체(bean)을 등록하고
그 설정파일을 매개삼아 스프링 컨테이너 객체를 빌드하고 사용하는 것 까지 이제 하실 수 있습니다.
뭘 한다는건지 아직 감은 안오시겠지만
일단 우리가 지금부터 할 일은
스프링이라는 편리한 프레임워크를 사용하기 위해 규칙을 배운다고 생각하시면 돼요
처음에는 낯선 규칙과 용어에 어려움을 겪으실 수 있지만
스프링이 지키라는 규칙만 잘 지키면
저와 여러분들이 하는것에 따라 스프링은 천사가 될수도 악마가 될수도 있습니다?
저도 사실 실시간으로 배우고 있는 중이라 스프링이 아직 많이 낯선데요
언제쯤 천사가 될지 궁금하긴 하네요
다음 포스트에서 만나요~
'개발공부노트 > Spring' 카테고리의 다른 글
Spring 07. Spring 환경 설정 3 (0) | 2022.10.20 |
---|---|
Spring 06. Spring 환경 설정 2 (0) | 2022.10.18 |
Spring 04. Spring 개발 환경 구축 (0) | 2022.10.12 |
Spring 03. Strategy Pattern - 디자인패턴 & 제어 역전 & 의존성 주입 (0) | 2022.10.12 |
Spring 02. Template Method Pattern - 디자인패턴 (0) | 2022.10.12 |