일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- Spring Framework
- STL
- 라인플러스
- 릿코드
- 라인
- dfs
- 모두를 위한 딥러닝
- 알고리즘
- binary search
- Java
- BFS
- 스프링 프레임워크
- C++
- 딥러닝
- DP
- 프로그래머스
- 머신러닝
- 파이썬
- jvm
- 프로그래밍언어론
- 다이나믹프로그래밍
- 시애틀
- spring
- 벤쿠버
- leetcode
- 백준
- Python
- C/C++
- 백트래킹
- 스타벅스
- Today
- Total
케이스윔의 개발 블로그
[Spring] 스프링 프로젝트 생성하기 본문
스프링 프로젝트는 Maven을 이용해서 프로젝트를 생성합니다. 그럼 Maven이 뭔지 간단히 알아보겠습니다.
Maven이란? 자바 프로젝트의 라이브러리를 연결해주고, Build를 자동화해주는 Tool입니다. 필요한 라이브러리를 설정 파일에 명시해준다면 해당 라이브러리를 다운 받아서 사용할 수 있게 해줍니다. Maven 프로젝트를 생성하면 기본적으로 생성되는 설정 파일 pom.xml이 있고, 이 파일을 통해서 설정을 할 수 있게 됩니다.
- pom.xml: POM(Project Object Model)을 설정하는 파일입니다. 프로젝트 내 빌드 옵션을 설정할 수 있습니다.
- Maven 프로젝트의 폴더 구조와 pom.xml
/프로젝트명 |
/src |
/main |
/Java : 자바로 구현한 코드가 존재합니다. |
|
|
|
/resource : 프로젝트에 필요한 xml, properties 파일 등이 존재합니다. |
|
|
/java |
|
|
pom.xml |
|
|
Maven을 이용해서 스프링 프로젝트를 생성하려면 다음과 같은 순서를 따라하면 됩니다.
①이클립스에서 Maven 프로젝트 생성합니다.(또는 위와 같은 디렉토리 구조를 직접 만들어서 import 해줍니다.)
②Resource 폴더에서 스프링 설정파일로 사용할 applicationContext.xml 을 만들어줍니다.
③해당 파일에서 bean을 만들어주면 객체를 new하지 않아도 자동으로 생성됩니다.(이후 스프링 설정파일에서 bean생성하는 법을 다루겠습니다.)
④이후 생성한 객체가 필요한 클래스에서 bean을 가져와서 사용합니다.
간단히 코드를 통해 스프링 컨테이너에서 생성한 bean을 사용해보겠습니다.
GenericXmlApplicationContext ctx = new GenericXmlApplicationContext(“classpath:applicationContext.xml”);
→ 설정파일을 통해서 메모리에 로드된 컨테이너에 접근하기 위해서는 GenericXmlApplicationContext가 필요합니다.
Transportation(설정파일에서 생성된 Bean) trans = ctx.getBean(“twalk”, Transportation.class);
→ 설정파일에서 생성된 Bean을 가져오기 위해서 getBean의 파라매터로 해당 Bean의 id와 클래스를 명시해줍니다. trans를 통해서 원하는 작업들을 할 수 있고 사용 후에는 ctx.close();를 통해서 리소스를 반환해줘야합니다.
스프링 프로젝트를 생성 자체는 간단합니다. 이후 스프링 설정파일을 어떻게 이용하여 스프링에서 제공하는 기능을 구현할 수 있는지 살펴보겠습니다!
'Study > Spring Framework' 카테고리의 다른 글
Swagger 설정하기 (0) | 2021.07.10 |
---|---|
[Spring] Annotation을(Java파일) 통한 스프링 설정 (0) | 2019.01.19 |
[Spring] DI(Dependency Injection, 의존성 주입) (0) | 2019.01.19 |
[Spring] 스프링 프레임워크란? (0) | 2019.01.17 |
[Java] JVM과 JRE, JDK (0) | 2019.01.17 |