깡뇽

[Spring] 스프링 입문 - 프로젝트 환경설정(2) 본문

Web/Spring

[Spring] 스프링 입문 - 프로젝트 환경설정(2)

깡뇽 2021. 12. 23. 23:11
반응형

인프런 "스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술" 강의를 수강하면서 정리하는 글.

 

View 환경설정

src -> main -> resources -> static에서 "index.html" 파일을 만들어준다. 해당 html이 웰컴 페이지가 될 것이다.

 

생성된 index.html 코드 그대로 두고 실행하면, 아래와 같이 아무것도 없는 패이지가 뜬다.

index.html 코드를 수정하고 실행해보자.

<!DOCTYPE HTML>
<html>
<head>
 <title>Hello</title>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
</head>
<body>
Hello
<a href="/hello">hello</a>
</body>
</html>

원하는 대로 코드를 수정해서 웰컴패이지를 만들 수 있다.

 

- spring 문서 (https://docs.spring.io/spring-boot/docs/current/reference/html/)

 

- thymeleaf 템플릿 엔진 : 웹에 동작을 만들 수 있음

(thymeleaf 말고도 FreeeMarker, Groovy, Mustache 등을 사용하기도 함)

 

main -> java -> hello.hellospring에 controller 패키지를 만든다.

만든 controller 패키지에 HelloController 자바 클래스를 만든다.

해당 클래스에 Controller 어노테이션(springframework에 해당)을 추가하고, 클래스 내부에도 코드를 작성한다.

src -> main -> resources -> templates에 "hello.html"을 생성한다.

위처럼 코드를 작성하면 html에 있는 ${data}에 컨트롤러 클래스에 attriuteName이 data이 가지는 attributeValue인 hello!!가 들어가고 localhost:8080/hello에 접속하면 html의 text가 웹에서 보인다.

강의 자료

스프링 부트는 tomcat을 내장하고 있으므로 localhost:8080/hello를 받아서 스프링에게 물어본다. @GetMapping 안에 hello와 매핑이 되면, 컨트롤러의 해당 메서드가 실행된다. 스프링이 모델을 만들어서 넣어주고, 모델에 키는 data고 값은 hello!!인 어트리뷰트를 추가한다. 그리고 리턴 받는 hello는 templates에 있는 불러올 html의 이름이므로 templates/hello.html이 찾아서 실행되는 것이다.

 

- 컨트롤러에서 리턴 값으로 문자를 반환하면 'viewResolver'가 화면을 찾아서 처리한다.

   스프링 부트 템플릿엔진 기본 viewName 매핑

   'resource:templates/' + {ViewName} + '.html'

 

+) 'spring-boot-devtools' 라이브러리를 추가하면 html 파일만 컴파일해주어도 서버 재시작 없이 View 파일 변경이 가능하다. => IntelliJ 컴파일 방법 : 메뉴 build -> Recompile

 

빌드 & 실행

cmd에서 'dir'을 입력했을 때, gradlew 파일이 있는 위치까지 이동. 나는 hello-spring파일.

'gradlew build'(빌드 폴더 생성 코드)를 입력하여 빌드를 한다.

빌드가 완료되고, 'cd build'를 해서 빌드 폴더에 들어가 보면 libs로 들어간다.

'java -jar hello-spring-0.0.1-SNAPSHOT.jar'를 입력해서 실행한다.

 

잘 안된다면 'gradlew clean build'(빌드 폴더 삭제 코드)를 한 후에 다시 진행한다.

 

순서대로 다시 정리하면

1. dir 코드와 cd 코드를 사용해서 gradlew가 있는 디렉터리로 이동

2. "gradlew build" 코드를 사용해서 build폴더 생성

3. dir 코드로 build폴더 생성 확인

4. cd build 코드를 통해서 build폴더로 이동

5. dir 코드로 libs가 있는지 확인

6. "cd libs" 코드로 libs로 이동

7. java - jar~ 코드로 자바 실행 

 

=> 이렇게 자바 파일을 가지고 실행시키면 된다!

 

잘 안되면 "gradlew clean build" 라고 해서 build 폴더를 삭제한 후에 다시 할 수 있다.

반응형