240103

한라봉봉·2024년 1월 3일
0

기업연계 BE 교육 TIL

목록 보기
44/58
post-thumbnail

스프링부트 환경설정 시작

https://cafe.naver.com/hamminglab/21702


->static: 정적리소스. html등
->templates: 동적리소스. 타임리프등

그런데 template에서는 jsp를 지원하지 않으므로 따로 추가 설정이 필요

jsp 설정

build.gradle 파일 수정

1) id 'war' - 추가하지 않으면 톰캣 연동 오류 발생함.

2) implementation 'org.projectlombok:lombok' - 롬복 기본 설정

3) providedRuntime 'org.springframework.boot:spring-boot-starter-tomcat' - 인텔리제이와 톰캣 연동 설정

4) implementation 'org.apache.tomcat.embed:tomcat-embed-jasper' - JSP 엔진 사용

   implementation 'javax.servlet:jstl'  - JSTL 사용

※ 기본적으로 스프링부트는 내장톰캣을 가지고 있지만, jsp 엔진이 존재하지 않기 때문에

jasper와 jsp의 라이브러리 jstl을 사용할 수 있는 의존성 추가해야 함.

※ DevTool를 설치하면 매번 실행할때 마다 서버를 재 실행하지 않아도 됨.

  1. 스프링부트는 기본적으로 JSP를 지원하지 않음.

  1. 스프링부트는 XML 사용을 배제하기 때문에 Gradle과 JPA 사용을 권장함.

  1. build.gradle 파일 수정

    1) id 'war' - 추가하지 않으면 톰캣 연동 오류 발생함.

    2) implementation 'org.projectlombok:lombok' - 롬복 기본 설정

    3) providedRuntime 'org.springframework.boot:spring-boot-starter-tomcat' - 인텔리제이와 톰캣 연동 설정

    4) implementation 'org.apache.tomcat.embed:tomcat-embed-jasper' - JSP 엔진 사용

    implementation 'javax.servlet:jstl'  - JSTL 사용

※ 기본적으로 스프링부트는 내장톰캣을 가지고 있지만, jsp 엔진이 존재하지 않기 때문에

jasper와 jsp의 라이브러리 jstl을 사용할 수 있는 의존성 추가해야 함.

plugins {
id 'java'
id 'war'
id 'org.springframework.boot' version '2.7.18'
id 'io.spring.dependency-management' version '1.1.4'
}

group = 'kr.co.chunjae'
version = '0.0.1-SNAPSHOT'

java {
sourceCompatibility = '11'
}

repositories {
mavenCentral()
}

dependencies {
implementation 'org.springframework.boot:spring-boot-starter-web'
implementation 'org.projectlombok:lombok'

providedRuntime 'org.springframework.boot:spring-boot-starter-tomcat'

testImplementation 'org.springframework.boot:spring-boot-starter-test'

implementation 'org.apache.tomcat.embed:tomcat-embed-jasper'
implementation 'javax.servlet:jstl'

}

tasks.named('test') {
useJUnitPlatform()
}
4. application.properties 설정

server.port=8094

spring.mvc.view.prefix=/WEB-INF/views/
spring.mvc.view.suffix=.jsp

  • .yml인 경우

server:
port: 8094

spring:
mvc:
view:
prefix: /WEB-INF/views/
suffix: .jsp
5. TestController.java 생성

package kr.co.chunjae.controller;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;

@Controller
public class TestController {
@RequestMapping(value = "/")
public String home() {
System.out.println("TestController home");
return "index";
}
}
6. main 하위폴더 webapp/WEB-INF/views 를 한번의 입력으로 만들고 index.jsp 파일 생성

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

JSP 테스트 JSP 테스트 7. 프로젝트를 실행할때 스프링부트는 서버를 선택하지 않고 Java 처럼 main( ) 함수를 실행
  • 톰캣과 히카리CP는 내장되어 있음
profile
백엔드 개발공부 로그를 기록합니다

1개의 댓글

comment-user-thumbnail
2024년 1월 3일

https://open.kakao.com/o/sJqBuqif 보실지는 모르겠지만,,, 천재 교육 관련 궁금한 점이 있어 연락 드립니다!

답글 달기