카테고리 없음

Spring boot 빠르게 시작해보자

머룽 2023. 4. 18. 12:31

Spring boot를 이용하여 API 서버를 개발해보자!

start.spring.io 에서 설정해서 시작해도 된다. maven을 이용하여 시작해보자. 일단 메이븐 프로젝트를 생성한다. 그럼 pom.xml 파일이 있을 것이다. pom파일에 아래와 같이 추가한다.
    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>1.3.3.RELEASE</version>
        <relativePath/>
    </parent>
위의 아이는 버전관리 및 플러그인, 인코딩 자바 버전 등이 설정 되어있다. 참으로 좋은 녀석이다. 다음으론 아래와 같이 dependencies 들을 추가한다.

<dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> </dependency> </dependencies>
첫 번째 있는 spring-boot-starter 에는 스프링 부트의 핵심인?(필자기준 아닐수도 있음) autoconfigure가 포함되어 있다. 그리고 스프링 부트는 기본으로 logback을 사용하고 있다. 그런데 가만보면 이상한점이 있다. 버전을 정보가 없다. 그 이유는 parent에서 관리는 해주기 때문이다. 니가 뭔데 버전을 관리하냐 나는 내가 할거다 하는 사람은 버전을 명시적으로 써주면 된다. 흠. 설정이 끝났다. 메인 클래스 만들자.
@SpringBootApplication
public class Application {

    public static void main(String[] args) {
        SpringApplication.run(Application.class, args);
    }
}
메인 클래스 작성도 끝났다. 실행시켜보자. 아무 에러가 없다면 준비는 끝났다. 이 클래스에 중요한건 @SpringBootApplication 어노테이션이다. 저 안에는 @Configuration ,@EnableAutoConfiguration,@ComponentScan 애노테이션이 있다. 아주 쓸모있는 아이다. 이제 API를 서버를 만들자. 서버를 띄우기 위해선 아래와 같이 추가를 한다.
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-web</artifactId>
    </dependency>
이놈도 무시무시한놈이다. 내장톰캣을 사용하고 웹에 필요한 라이브러리들을 추가해준다. 다음으론 메인 클래스를 조금 수정하자. 아니 추가하자.
@SpringBootApplication
@RestController
public class Application {

    public static void main(String[] args) {
        SpringApplication.run(Application.class, args);
    }

    @RequestMapping("hello")
    public String hello(){
        return "hello world";
    }
}

이제 모든 준비는 끝났다. 메인 클래스를 실행시키자! 서버가 시작되었면 http://localhost:8080/hello로 접속을 해보자 hello world가 웹페이지에 있다면 성공적으로 API서버를 만들었다.

참고 : Starter POMs