본문으로 바로가기

SpringBoot - @SpringBootApplication annotation


스프링은 기본적으로 프레임웍이다보니까 기본적으로 Java를 알아야 하고, 해당 프레임웍 작동 원리 등을 알고 쓸 필요가 있어서 관련된 자료가 너무 많고 스프링 사이트에도 잘 정리가 되어 있고 한데 메뉴얼을 하나씩 읽어보자니 인내심이 부족해서 자꾸 검색해보고 그런 상황이다.

일단 코드 베이스로 익히려면 'Hello World'를 찍어야 하는데 스프링 부트는 핼로 월드 찍는것도 일이라서 하나씩 찾아보고 있다.


자바는 Main.java에 pubilc static void main으로 보통 시작을 하는데

스프링은 Application.java라는 네이밍을 주로 쓰는 것 같다.

그리고 java와 마찬가지로 public static void main을 쓰긴 쓰는데 @SpringBootApplication 이라는 annotation(어노테이션)을 붙여주어서 처음에 헷갈린다.


@SpringBootApplication 이게 뭐냐면

@Configuration + @EvableAutoConfiguration + @ComponentScan 이거 세가지를 한번에 묶어놓은거라고 한다.

스프링 개발자들이 위에 세가지 어노테이션을 대부분 반드시 쓰다보니까 이걸 쉽게 줄여놓은 것이라고 한다.


사용법

build.gradle

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
apply plugin: 'java'
 
sourceCompatibility = 1.8
 
repositories {
    mavenCentral()
}
 
dependencies {
    testCompile group: 'junit'name'junit', version: '4.11'
 
    // https://mvnrepository.com/artifact/org.springframework.boot/spring-boot-starter
    compile group: 'org.springframework.boot'name'spring-boot-starter', version: '1.4.3.RELEASE'
 
}
cs


Application.java

1
2
3
4
5
6
7
8
9
10
11
12
13
14
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
 
/**
 * Created by kyeongrok.kim on 2017-01-13.
 */
@SpringBootApplication
public class Application {
    public static void main(String[] args) {
        SpringApplication app= new SpringApplication();
        app.run(Application.class, args);
    }
}
 
cs


실행 방법

Application.java 에서 main()을 실행


실행 결과


end.




댓글을 달아 주세요