Spring 프로젝트 환경설정 섹션01 by 김영한

공부한것 다 기록해·2023년 5월 8일
0
post-thumbnail

Web Server 실행

Welcome Page 기능

  • static/index.html로 Welcome page 기능을 제공한다.

웹 서버를 실행해주는 코드

package hello.hellospring;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

@SpringBootApplication
public class HelloSpringApplication {

	public static void main(String[] args) {
		SpringApplication.run(HelloSpringApplication.class, args);
	}

}

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>

실행시 터미널에 스프링이 보인다.

내장 서버인 톰켓 서버를 이용해서 8080포트로 서버를 시작


localhost:8080에 접속을 하면 static의 index.html이 실행된다.

GET 요청하기

  • controller에서 return 값으로 문자를 반환하면 뷰 리졸버(viewResolver)가 화면을 찾아서 처리
  • Spring boot 템플릿엔진 기본 ViewName 매핑 방법
  • resource:templates/+{ViewName} + '.html'
package hello.hellospring.controller;

import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.GetMapping;

@Controller
public class HelloController {

    @GetMapping("hello") // request hello가 들어올시 선언한 hello메소드 호출해준다.
    public String hello(Model model){ // model : mvc
        model.addAttribute("data", "hello!!");
        return "hello"; // resources/templates/hello.html을 스프링을 찾기
    }
}

hello.html

<!DOCTYPE html>
<html xmlns:th="http://www.thymeleaf.org">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
    <p th:text="'안녕하세요. ' + ${data}">안녕하세요. 손님</p>
</body>
</html>

localhost:8080/hello 접속

빌드

  • mac 기준 ./gradlew build 명령어 실행

  • 빌드 완료

  • build/libs/hello-spring-0.0.1-SNAPSHOT.jar 발견

  • 빌드한것 실행하기 ( 배포시에는 이 파일만 실행시켜주면 된다)

잘 동작한다!!

0개의 댓글