본문 바로가기
프로그래밍/JAVA

[SpringBoot]스프링부트 소개 및 기본 설정 🌟📝

by 다다면체 2024. 12. 19.
728x90
반응형
반응형

스프링부트란 무엇인가? 🤔

스프링부트(Spring Boot)는 스프링 프레임워크를 더욱 간편하게 사용할 수 있도록 만든 도구입니다! 🎉 스프링 프레임워크는 강력한 기능을 제공하지만, 설정이 복잡하고 초기 설정에 시간이 많이 걸리는 단점이 있었죠. 🛠️ 이를 해결하기 위해 등장한 스프링부트는 복잡한 설정을 자동으로 처리하고, 개발 속도를 비약적으로 향상시키는 데 중점을 둡니다. 🚀

스프링부트의 주요 특징 📝

1. 자동 설정 (Autoconfiguration)

스프링부트는 애플리케이션에서 필요한 설정을 자동으로 감지하고 적절히 구성해줍니다. 🪄 예를 들어, 데이터베이스 설정, 웹 서버 설정 등이 자동으로 이루어지므로 개발자가 직접 설정할 필요가 없습니다. 👍

2. 내장 서버 (Embedded Server)

스프링부트는 Tomcat, Jetty, Undertow와 같은 웹 서버를 내장하고 있어, 별도의 서버 설치 없이 애플리케이션 실행이 가능합니다. 💻 이 덕분에 개발과 배포 과정이 간소화됩니다. 🙌

3. 스타터 패키지 (Starter Packages)

스프링부트는 자주 사용되는 라이브러리들을 쉽게 포함할 수 있도록 다양한 스타터 패키지를 제공합니다. 📦 예를 들어, spring-boot-starter-web은 웹 개발에 필요한 모든 의존성을 포함합니다.

스프링부트를 사용하면 얻을 수 있는 이점 💡

  • 개발 속도 향상: 복잡한 설정 작업을 줄이고, 필요한 기능을 빠르게 구현할 수 있습니다. ⚡
  • 단순화된 설정: XML 설정 파일을 작성할 필요 없이, 간단한 애노테이션과 프로퍼티 파일만으로 설정이 가능합니다. 🤗
  • 유연한 확장성: 기본 제공 기능을 사용하면서도 커스터마이징이 용이합니다. 🔧

스프링부트 프로젝트 시작하기 🛠️

1. Spring Initializr로 프로젝트 생성

스프링부트 프로젝트를 시작하는 가장 간단한 방법은 Spring Initializr를 사용하는 것입니다! 🌐

Spring Initializr 사용 방법 🚀

  1. Spring Initializr에 접속합니다.
  2. 프로젝트 옵션을 설정합니다:
    • Project: Maven 또는 Gradle 선택 ✅
    • Language: Java 선택 ☕
    • Spring Boot Version: 최신 버전 선택 🆕
    • Dependencies: 필요한 의존성을 추가 (예: Spring Web, Spring Data JPA 등) 📚
  3. 설정을 완료한 후, Generate 버튼을 눌러 프로젝트를 다운로드합니다. ⬇️
  4. 프로젝트를 IDE(Eclipse, IntelliJ 등)에 임포트합니다. 💻

2. 기본 디렉터리 구조 이해 📂

스프링부트 프로젝트는 다음과 같은 기본 디렉터리 구조를 가집니다:

src/main/java  // 애플리케이션의 주요 코드가 위치
src/main/resources  // 설정 파일 및 리소스 파일이 위치
    ├── application.properties  // 주요 설정 파일
    ├── application.yml  // YAML 형식의 설정 파일 (선택)
src/test/java  // 테스트 코드가 위치

주요 파일 설명 🧐

  • Application Class: @SpringBootApplication 애노테이션이 포함된 메인 클래스. 애플리케이션의 진입점입니다. 🎯
  • application.properties / application.yml: 애플리케이션 설정 파일로, 데이터베이스 연결 정보, 포트 번호 등을 정의합니다. 🛠️

3. application.properties 및 application.yml 설정 ✍️

스프링부트의 설정 파일은 application.properties와 application.yml 두 가지 형식을 지원합니다. 이 파일들은 환경 설정과 외부 설정을 관리하는 데 사용됩니다. 📑

application.properties 예제:

# 서버 포트 설정
server.port=8080

# 데이터베이스 연결 설정
spring.datasource.url=jdbc:mysql://localhost:3306/mydb
spring.datasource.username=root
spring.datasource.password=1234
spring.jpa.hibernate.ddl-auto=update

application.yml 예제:

server:
  port: 8080

spring:
  datasource:
    url: jdbc:mysql://localhost:3306/mydb
    username: root
    password: 1234
  jpa:
    hibernate:
      ddl-auto: update

YAML 형식은 계층 구조를 명확히 표현할 수 있어 가독성이 좋습니다. 👀


마무리 🎉

스프링부트는 복잡한 설정을 간소화하고 개발 생산성을 크게 향상시키는 강력한 도구입니다! 💪 이제 스프링부트의 기본 설정과 특징을 이해했으니, 직접 프로젝트를 생성하고 다양한 기능을 탐험해보세요. 🌟 스프링부트와 함께라면 더욱 효율적이고 빠르게 애플리케이션을 개발할 수 있습니다! 🚀

728x90
반응형