SpringBoot란?
- 스프링 프레임워크 프로젝트를 간편하게 설정하여 사용할 수 있게 하는 아이
- Spring Boot makes it easy to create stand-alone.
- Most Spring Boot applications need very little Spring configuration.
- 웹 컨테이너를 내장하고 있어 최소한의 설정으로 쉽게 웹 어플리케이션을 만들 수 있다.
SpringBoot 사용 이유 및 장점
※ SpringFramework와 비교해보자.
- SpringFramework는 XML 설정파일 작성 등 설정하는 방법이 어렵지만 , SpringBoot는 반복되는 개발환경 구축을 위한 노력을 줄이고, 쉽고 빠르게 프로젝트를 설정할 수 있다.
- 프로젝트 환경 구축에서의 비기능적인 기능(내장형 서버, 시큐리티, 측정, 상태 점검, 외부 설정)들을 기본적으로 제공한다.
프로젝트 생성
우선 New -> Spring Starter Project를 선택한다.
다음아래 설명내용을 참고하여 원하는 설정값을 입력한다.
- Type : Maven - 프로젝트 빌드 및 의존성 관리에 Maven 을 사용 (Gradle을 선택가능)
- Packaging: Jar - 패키징을 Jar로 하도록 설정 (War로도 설정 가능)
- Java Version: 8 - 자바는 1.8을 사용
- Language: Javav - 언어는 Java 사용
- Group com.won.test - 보통 도메인을 사용합니다.
- Artifact: spring-boot-test - Maven 아티팩트명 => 프로젝트명
- Version: 0.0.1-SNAPSHOT - 프로젝트의 버전
- Description: Demo project for Spring Boot - 프로젝트 설명
- Package : com.won.test - 초기 소스들이 만들어질 기본 패키지명
다입력 한 후 Next를 눌러 다음 설정으로 넘어간다.
여기서 원하는 Dependency를 선택하여 추가할수있다.
본인은 일단 프로젝트 공부하면서 만들고 있기 때문에 , Spring Web만 추가하여 생성하였다.
추가적으로 Maven이나 여러가지 원하는 Dependency를 추가할 수 있으니 검색하여 참고하면 된다.
이제 프로젝트가 생성되고,
가장먼저 pom.xml을 살펴보자.
간단하게 설명 되어있으니, 참고하면 될것같다. parent부분 외 나머지는 SpringFramework와 비슷한것 같다.
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<!--프로젝트의 계층 정보-->
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.4.3</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<groupId>com.example</groupId>
<artifactId>spring-boot-test</artifactId>
<version>0.0.1-SNAPSHOT</version>
<name>spring-boot-test</name>
<description>Demo project for Spring Boot</description>
<properties>
<java.version>1.8</java.version>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
<build>
<!--빌드에 사용할 플러그인 목록-->
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
</project>
Application.java
아래 코드와 함께 설명된것처럼 @SpringBootApplication Annotation의 의미를 알수있다.
ComponentScan도 하기 때문에 해당 클래스가 있는 package를 최상위 패키지로 인식하기 때문에 이 Annotation의 위치를 유의하여야 한다.
@SpringBootApplication //@EnableAutoConfiguration, @ComponentScan, @Configuration을 하나로 묶어 놓은 것
public class SpringBootTestApplication {
public static void main(String[] args) {
SpringApplication.run(SpringBootTestApplication.class, args);
}
}
서버를 띄울수있는 준비가 완료되어 Spring Boot Run을 실행하여 서버를 띄워보자.
아직은 어떠한 페이지도 없기때문에 예시로 index.html을 작성하여 localhost:8080/index.html으로 접속하여보자.
index.html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<h1>Hello World</h1>
</body>
</html>
문제없이 Hello World가 띄워지는것을 확인할 수 있다.
'SpringBoot' 카테고리의 다른 글
[SpringBoot] Spring Batch 개념과 간단 예제 -1 (0) | 2022.07.12 |
---|---|
[SpringBoot] DI 주입하는 방법 + 롬복 이용 (0) | 2021.08.24 |
[SpringBoot] Spring boot에서 간단한 Redis 설정 및 사용 예제 (0) | 2021.08.06 |
[SpringBoot] Filter 설정 및 개념 (0) | 2021.07.13 |
[SpringBoot] Driver 오류 Failed to configure a DataSource (0) | 2021.05.31 |