spring boot-1(특징과 기본 설정)

2020. 9. 1. 12:54 Spring Framework/Spring boot

Spring Boot 특징

  • war파일을 사용하지 않고 embed tomcat 또는 jetty 사용가능
  • Spring Boot에서 지원하는 stater POM으로 Maven을 간단하게 사용
  • Spring에 수많은 설정을 자동으로 설정(xml설정이 필요 없음), autoconfigure

Spring Boot 시작하기

1. pom.xml
1
2
3
4
5
6
7
8
9
10
11
<parent>
    <groupid>org.springframework.boot</groupid>
    <artifactid>spring-boot-starter-parent</artifactid>
    <version>1.1.8.RELEASE</version>
</parent>
<dependencies>
    <dependency>
        <groupid>org.springframework.boot</groupid>
        <artifactid>spring-boot-starter-web</artifactid>
    </dependency>
</dependencies>

2. 기본 설정

  Spring은 설정이 꾀나 복잡하고 이해하기 어렵다. xml과 javaConfig를 사용해 설정이 가능하지만 SpringBoot에서는 자동 설정을 지원하기 때문에 간단하게 설정해 사용하기 편리하다. 물론 어떻게 동작하는지 이해는 해야겠지만 처음 Spring 사용에 문턱이 낮아진 느낌이랄까?

아래 @EnableAutoConfiguration 애노테이션이 바로 마법에 애노테이션으로 불리는 자동 설정을 해주는 놈이다.

1
2
3
4
5
6
7
8
9
10
11
12
<p>import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
 
@ComponentScan
@EnableAutoConfiguration
public class Application {
 
    public static void main(String[] args) {
        SpringApplication.run(Application.class, args);
    }
}
</p>

3. Controller

1
2
3
4
5
6
7
8
9
10
11
12
13
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
 
@Controller
@RequestMapping("/")
public class MainController {
 
    @RequestMapping
    public @ResponseBody String index() {
        return "Hello Woniper Spring Boot~";
    }
}

간단하게 http 요청을 날려보기 위한 Controller를 작성해보자.

Controller소스 까지 작성했다면 프로젝트를 시작하고 http://localhost:8080/ 으로 접속해보자.


Starter POMs

  Spring Boot에서 지원하는 Starter POMs는 Boot에서 미리 정의된 maven dependency이다. 

참고 : http://docs.spring.io/spring-boot/docs/current/reference/html/using-boot-build-systems.html#using-boot-maven

모든 dependency는 spring-boot-starter-*로 정의돼 있다.

출처 : https://blog.woniper.net/230?category=699184