본문 바로가기
[Spring Boot]

[Spring Boot] 스프링 부트 시작하기( 기초 설정 방법)

by 북방바다코끼리표범 2023. 10. 6.

복습

https://shins99.tistory.com/96

 

[Spring Boot] 스프링 부트 기초

스프링(Spring) 이란? - 자바 기반의 웹 어플리케이션을 만들 수 있는 프레임워크 (spring.io 사이트에서 확인하면 스프링 프레임워크는 현대 자바 기반의 엔터프라이즈 어플리케이션을 위한 프로그

shins99.tistory.com


 

 - 이클립스, 인텔리 제이 등을 통해 쉽게 스프링, 스프링 부트 프로젝트 생성 가능

 - 스프링 이니셜라이즈로 쉽게 스프링 부트 프로젝트 생성 가능

# SpringBoot 프로젝트 생성법
1) 웹 제작(Spring initializer) : http://start.spring.io
    - Project 빌드     : Gradle - Groovy
    - spring boot 버전 : 2.7.16 선택
    - spring Metadata : Artifact : 프로젝트 명 넣기 (예: helloworld)
    - Packaging       : War 선택
    - Java            : jdk 11 선택 // 현재 본인 11 사용중 이라 11 설정한 것
    - (오른쪽화면) Dependencies : ADD Dependencies 버튼 클릭 : 라이브러리 추가
      (1) Spring Boot DevTools
      (2) Lombok
      (3) Spring Web
    - GENERATE 버튼 클릭 : zip 압축된 spring 프로젝트 파일 다운로드 됨
2) 인텔리제이 Ultimate(상용) : 위의 기능이 내장되어 있음
    - 이름 : 프로젝트명 넣기 (예: helloworld)

# SpringBoot 환경 설정 :
1) 인텔리제이 툴 설정 : 에디터 - 파일 인코딩 - (우측화면) 프로퍼티 파일 인코딩 : UTF-8
   명확한 Native에서 ASCII로 변환(체크)
2)                    빌드,실행,배포 - 컴파일러 - (우측화면) 프로젝트 자동빌드(체크)
3)                    고급 설정 - (우측화면) 컴파일러 - 개발된 애플리케이션이 현재...(체크)

 GroupId  GroupId는 자신의 프로젝트를 식별해주는 고유 아이디.

                  'com.godDaeHee.web' 과 같이 인터넷 주소를 뒤집어 써놓은 형태.

★ ArtifactId : ArtifactId는 버전 정보를 생략한 이름(jar).

                  보통 프로젝트 ID와 동일하게 작성.

 

Generate - Ctrl + Enter 를 클릭하면 프로젝트 파일이 압축되어 다운로드 된다.

이를 압축 해제 하도록 하자.

1. 스프링 이니셜라이즈 사이트 접속

 - https://start.spring.io/

- 아래 사진과 같이 기본 설정

 

2. 기본 설정 후 GENERATE 클릭해서 압축파일 다운로드 받은 후 압축 해제 후 실행

- build.gradle에 밑에 코드 추가하고 코끼리 버튼 클릭

   //    jsp 라이브러리 추가
   implementation 'org.apache.tomcat.embed:tomcat-embed-jasper' // 추가
   implementation 'javax.servlet:jstl' // 추가

3. 디폴트 인코딩 UTF-8 설정 확인

글자 깨짐 현상 방지

4. application.properties에 밑에 글 붙여넣기

# 서버 포트
server.port=8000
# jsp 파일 경로
spring.mvc.view.prefix=/WEB-INF/views/
# jsp 파일 확장자 정의
#spring.mvc.view.suffix=.jsp
# 자바 소스 수정시 자동 재시작
spring.devtools.restart.enabled=true

- hello 파일만들고 밑에 코드 붙여넣고 tab + !

<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %>

5. jdk 버전 현재 사용하고 있는 11로 변경

- 결과 화면

2. 인텔리제이로 스프링 프로젝트 생성하기

1. 새 프로젝트 생성

2. 기본 설정

- 설치 완료

- 파일 수정

package com.example.controllerexam.controller;
 
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.GetMapping;
 
 
/**
 * packageName : com.example.helloworld.controller
 * fileName : HelloWorldController
 * author : GGG
 * date : 2023-10-04
 * description : Hello World Controller
 * 요약 :
 *      url 에 해당하는 jsp 파일로 연결하기
 *      @명칭 : 자바의 어노테이션이라고 하고, 주로 함수/클래스/변수 위에 붙여서 사용함
 *        작은 기능이 함수에 추가됨
 *        목적 : 사용하면 코딩량이 획기적으로 줄어듬
 *      @Controller : 클래스에 컨트롤러 기능을 부여하는 어노테이션
 *      @GetMapping("url")함수(){ return "jsp페이지명"; }
 *      => url이 웹브라우저 주소창에 입력되면 -> jsp페이지가 화면에 출력됨
 * <p>
 * ===========================================================
 * DATE            AUTHOR             NOTE
 * —————————————————————————————
 * 2023-10-04         GGG          최초 생성
 */
@Controller
public class HelloWorldController {
 
    @GetMapping("/exam00/hello")
    public String Hello(Model model) {
        return "/exam00/hello.jsp";
    }
 
    @GetMapping("/exam00/hello2")
    public String Hello2(Model model) {
        return "/exam00/example01.jsp";
    }
 
//  TODO: 연습) url : "/exam00/hello2
//          => jsp : "/exam00/example01.jsp" : 화면에 Hello JSP & Spring boot 출력
//         함수를 만들어 주세요
}

- 결과