Hello

5. 의존성 설정

by 볼빵빵오춘기

 

https://www.youtube.com/watch?v=rpcoHCXgGnQ&list=PL93mKxaRDidECgjOBjPgI3Dyo8ka6Ilqm&index=5 

 

STS에서 새프로젝트를 만들면서 의존성 설정을 하였으나

나는 기존에 자바11과 인텔리제이를 사용하고 있어서 

https://start.spring.io/에서 아래와 같이 설정

 

 

Project

Maven

 

Language

Java

 

Spring Boot

2.7.13

(더 높은 버전도 있었지만 프로젝트 오픈할 때 의존성때문인건지 모르겠는데 충돌이나서 2.버전을 이용)

(버전 뒤에 SNAPSHOT은 정식버전이 아닌 아직 개발 중인 버전, 아직 릴리즈 되지 않은 버전이라 하여 선택 SNAPSHOT 안붙은 2.7.13버전을 선택하였는데 강의를 듣는 10일동안 새 버전 출시)

 

Project Metadata

Group : com.cos

Artifact : blog

Name : blog

Description : My First Blog Project

Package name : com.cos.blog

Packaging : Jar

Java : 11

 

Dependencies

Spring Web

톰캣 내장 서버와 Spring MVC를 통해 REST API를 구축할 수 있게 도와준다.

웹 서버를 구축할 때 거의 무조건 포함되는 라이브러리라고 생각하면 된다.

 

Spring Boot DevTools

코드 수정 시 브라우저에서 수정 내용을 확인하려면 재시작을 해야한다.

이 때, 브라우저에서 자동으로 적용되지않아 불편한 점이 있는데 이 부분을 해결해주는 툴

즉, 소스변경이 발생할때마다 자동 빌드해줘서 바로 반영 결과를 확인할 수 있도록 도와주는 툴이다.

 

Spring Data JPA

JPA는 Java Persistence API 자바 어플리케이션에서 관계형 데이터베이스를 사용하는 방식을 정의한 인터페이스이다.

JPA는 말 그대로 인터페이스이고  특정 기능을 하는 라이브러리가 아니지만

Spring Data JPA는 Spring에서 제공하는 모듈로 JPA를 더 쉽고 편하게 사용할 수 있도록 도와준다.

인터페이스에 정해진 규칙대로 메소드를 입력하면, Spring이 알아서 메소드 이름에 적합한 쿼리를 날려서 구현체를 만들어 Bean으로 등록해준다.

 

H2 Database

Java  작성된 관계형 데이터베이스 관리 시스템이다.

 

Spring Security

스프링 기반 애플리케이션의 인증과 권한을 담당하는 스프링의 하위 프레임워크이다.

 

pom.xml

pom.xml : 프로젝트 내 빌드 옵션을 설정하는 파일

<!--추가 시작-->
<!-- 시큐리티 태그 라이브러리 -->
<!-- 
<dependency>
    <groupId>org.springframework.security</groupId>
    <artifactId>spring-security-taglibs</artifactId>
</dependency>
 -->

<!-- JSP 템플릿 엔진 -->
<dependency>
    <groupId>org.apache.tomcat.embed</groupId>
    <artifactId>tomcat-embed-jasper</artifactId>
</dependency>

<!-- JSTL -->
<dependency>
    <groupId>javax.servlet</groupId>
    <artifactId>jstl</artifactId>
</dependency>
<!--추가 종료-->

 

pom.xml을 열어<dependencies>안에 위에 코드를 추가해준다.

(시큐리티 태그 라이브러리는 바로 사용할 것은 아니라 강의 후반부에 시큐리티부분 강의할 것이기에 우선 주석처리 해놓음)

강의에서는 시큐리티와 jsp를 사용할 것이기에 시큐리티 태그, JSP 템플릿, JSTL 추가해준다. 

 

시큐리티는 말 그대로 보안(인증과 권한) 부분에 사용되는 라이브러리이고,

JSP는 템플릿엔진의 하나이며, JSTL은 JSP Standard Tag Library의 약자로 JSP의 기본 태그가 아닌 JSP 확장 태그이다.

 

여기서 JSP 라이브러리를 추가하는 이유는 Spring에서 지원하는 기본적인 템플릿엔진이 아니기 때문이다.

기본적으로 지원하는 템플릿 엔진은 Thymeleaf, Apache Freemarker, Mustache, Groovy Templates 이다.

따라서 JSP를 사용하기 위해서는 pom.xml에 내가 사용할 것이라고 알려줘야 사용이 가능한것이다. 

 

기본 템플릿 엔진

그리고 추가로 얘기하자면 기본적으로 지원해주는 템플릿이라면 src > main > resources > templates에 넣으면 자동으로 스프링이 읽어주지만 jsp는 지원하지많으므로 따로 폴더 구조와 나 여기서 jsp 사용할꺼라는 경로 설정을 해줘야한다. 

'강의 따라하기 > blog' 카테고리의 다른 글

18 lombok 세팅 및 사용해보기  (0) 2024.01.01
17 maven이란  (0) 2024.01.01
15,16 http요청 실습  (0) 2023.07.27
6. 프로젝트 실행해보기  (0) 2023.07.26
Springboot - 나만의 블로그 만들기  (0) 2023.07.26

블로그의 정보

Hello 춘기's world

볼빵빵오춘기

활동하기