SpringBoot으로 웹 출시까지 #4

springboot logo

4. thymeleaf를 이용해 레이아웃 만들기

1 myhome 만들기

https://start.spring.io/

 

project : maven

springboot :  최대한 낮은 버전 / SNAPSHOT X로 선택

group : godcoder

artifact, name : myhome

java: 8

dependencies : Thymeleaf / Spring Web / Spring Boot DevTools / Lombok

2 IntelliJ와 git 연동하기

https://github.com/

깃허브 계정이 없으신분들은 회원가입을 진행합니다.

그 뒤 강의 내용대로 진행하시면 됩니다.

저는 이번 클론 코딩을 진행하는 모든 코드를 한 번에 관리하기 위해 강의와 다르게 연동하였습니다.

git repository 생성 및 로컬 폴더 연결

을 누르시면 모든 프로젝트를 하나의 리포지토리로 관리 하실 수 있습니다.

3 bootstrap 적용

부트스트랩 스타터 탬플릿 적용

https://getbootstrap.kr/docs/5.0/getting-started/introduction/

– 강의 시점과 시간이 달라 버전이 업그레이드 되었습니다.

    코드가 달라지고, 명령어가 수정되었습니다.

    최대한 유사한 코드를 사용해서 작성했습니다.

<!doctype html>
<html lang="en">
  <head>
    <!-- Required meta tags -->
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1">

    <!-- Bootstrap CSS -->
    <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.0.2/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-EVSTQN3/azprG1Anm3QDgpJLIm9Nao0Yz1ztcQTwFspd3yD65VohhpuuCOmLASjC" crossorigin="anonymous">

    <title>Hello, world!</title>
  </head>
  <body>
    <h1>Hello, world!</h1>

    <!-- Optional JavaScript; choose one of the two! -->

    <!-- Option 1: Bootstrap Bundle with Popper -->
    <script src="https://cdn.jsdelivr.net/npm/bootstrap@5.0.2/dist/js/bootstrap.bundle.min.js" integrity="sha384-MrcW6ZMFYlzcLA8Nl+NtUVF0sA7MsXsP1UyJoMp4YLEuNSfAP+JcXn/tWtIaxVXM" crossorigin="anonymous"></script>

    <!-- Option 2: Separate Popper and Bootstrap JS -->
    <!--
    <script src="https://cdn.jsdelivr.net/npm/@popperjs/core@2.9.2/dist/umd/popper.min.js" integrity="sha384-IQsoLXl5PILFhosVNubq5LC7Qb9DXgDA9i+tQ8Zj3iwWAwPtgFTxbJ8NT4GN1R8p" crossorigin="anonymous"></script>
    <script src="https://cdn.jsdelivr.net/npm/bootstrap@5.0.2/dist/js/bootstrap.min.js" integrity="sha384-cVKIPhGWiC2Al4u+LWgxfKTRIcfu0JTxR+EQDz/bgldoEyl4H0zUF0QKbrJ0EcQF" crossorigin="anonymous"></script>
    -->
  </body>
</html>

Visual Studio Code 연결

컴퓨터에 자동 설치된 비주얼스튜디오를 실행시켜 프로젝트 파일(myhome – main – resources)을 열어줍니다.

template 폴더 아래 “index.html” 파일을 만들고 복사한 내용을 붙여넣습니다.

<html lang=“en”> -> <html>으로 수정합니다.

[intelliJ] HomeController 만들기

myhome 아래 “controller” 폴더를 생성하고,  “HomeController” 클래스를 작성합니다.

package com.godcoder.myhome.controller;

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

@Controller
public class HomeController {
@GetMapping
public String index(){
return "index";
}
}

[VSCode]starter-template.css 작성

myhome – src – main – resources – static 아래 “starter-template.css” 파일을 생성합니다.

body {
padding-top: 5rem;
}
.starter-template {
padding: 3rem 1.5rem;
text-align: center;
}

“SpringBoot으로 웹 출시까지 #4”의 48,041개의 댓글

  1. Эта публикация посвящена актуальным вопросам современной медицины и здравоохранения. Мы обсудим новейшие технологии диагностики и лечения, а также их влияние на продолжительность и качество жизни. Читатель найдет здесь информацию о научных исследованиях и перспективных разработках, доступно изложенную для широкой аудитории.
    Углубить понимание вопроса – [url=https://infodeti.com/adviсe/lechenie-razdrazhitelnosti-professionalnyj-podhod-k-normalizaczii-emoczionalnogo-sostoyaniya]euro-clinic.ru[/url]

  2. В данной статье рассматриваются физиологические и эмоциональные аспекты зависимости. Мы обсудим, как организм реагирует на зависимое поведение, и какие методы помогают восстановить здоровье и внутреннее равновесие.
    Ознакомиться с теоретической базой – [url=https://www.ruonc.ru/reabilitaciya-21-den-effektivnyj-start-k-trezvoj-zhizni/]Реабилитация по программе 12 шагов[/url]

  3. Доброго времени суток!
    Автоподбор в Санкт-Петербурге — надежный выбор вашего следующего автомобиля с полной юридической и технической проверкой.
    Более 1 000 подобранных автомобилей с юридической и технической гарантией.
    [url=https://expert812.ru/]https://expert812.ru/[/url]
    Если интересуют автоподбор в СПб, автоподбор в Санкт-Петербурге, подбор авто с гарантией, то это в ЭКСПЕРТ812 https://expert812.ru/ .
    Проверка по 105+ параметрам, сэкономим до 35%, в 98% случаев услуги автоподбора бесплатно за счёт аргументированного торга.
    Реальные данные диагностики, гарантия возврата денег, юридическая чистота.
    Звоните: +7 (964) 333-45-75 и записывайте адрес сайта.
    Всем пока!

  4. Если вам нужен вывод из запоя на дому круглосуточно, наши специалисты готовы прийти на помощь в любое время суток. Выезд организуется по районам Красноярска и отдельным населенным пунктам Красноярского края. Нарколог проводит тщательный осмотр, определяет объем медицинской помощи и назначает только те препараты, которые соответствуют потребностям пациента. Для каждого обращения используется индивидуальная схема, а медицинская деятельность осуществляется в соответствии с действующими требованиями РФ.
    Ознакомиться с деталями – https://vyvod-iz-zapoya-v-kkrasnoyarske17.ru/

  5. Рекомендации строятся вокруг состояния человека, а не по универсальному шаблону для всех случаев.
    Узнать больше – [url=https://vyvod-iiz-zapoya-v-krasnoyarske17.ru/]скорая вывод из запоя в Красноярске[/url]

  6. Этот обзор сосредоточен на различных подходах к избавлению от зависимости. Мы изучим традиционные и альтернативные методы, а также их сочетание для достижения максимальной эффективности. Читатели смогут открыть для себя новые стратегии и подходы, которые помогут в их борьбе с зависимостями.
    Открыть полностью – [url=https://invmoney.ru/pages/vyvod-iz-zapoya-na-halturina-lechenie-alkogolizma-lechenie/]частная наркологическая клиника в Екатеринбурге[/url]

  7. При таких признаках звонок в клинику позволяет быстрее определить дальнейшие действия. Дежурный специалист уточняет основные жалобы, а доктор приедет домой либо предложит лечение в клинике. В Москве выезд нарколога организуется круглосуточно. При угрожающих проявлениях может потребоваться скорая помощь и лечение в профильном стационаре.
    Ознакомиться с деталями – [url=https://vyvod-iz-zapoya-moskva15-2.ru/]нарколог вывод из запоя[/url]

댓글 달기

이메일 주소는 공개되지 않습니다.