본문 바로가기
728x90

스프링부트5

Spring Boot Thymeleaf 간단 정리(백엔드개발/자바/Java/backend) Spring Boot와 Thymeleaf는 웹 애플리케이션을 만들 때 자주 사용되는 조합입니다. Thymeleaf는 Java 기반의 서버 사이드 템플릿 엔진으로, HTML을 동적으로 생성할 수 있게 해줍니다. 1. Thymeleaf 개요서버 사이드 템플릿 엔진: HTML 파일 내에서 데이터를 동적으로 교체하고, 조건부 로직 및 반복문 등을 사용할 수 있습니다.HTML5 호환 : Thymeleaf는 HTML5 문법을 준수하며, 브라우저에서 직접 열어도 유효한 HTML로 보입니다.Spring 통합 : Spring MVC와 자연스럽게 통합되어, 모델 데이터를 쉽게 템플릿에 전달할 수 있습니다.2. 주요 기능변수 표현 : ${} 문법을 사용하여 모델 데이터를 표현합니다.조건부 평가 : th:if, th:unle.. 2024. 11. 20.
스프링 부트(Spring Boot) Thymeleaf 반복문(백엔드 개발/Java/제어문) Thymeleaf단순 반복문 사용(특정 숫자 범위 반복문) 예시) 1월~12월 출력하기ol class="list_month">    th:block th:each="month : ${#numbers.sequence(1,12,1)}">        li>a href="#">span th:text="${month}">span>월a>li>    th:block>ol>#numbers.sequence는 Thymeleaf에서 제공하는 유틸리티 함수로, 특정 범위의 숫자 시퀀스를 생성하는 데 사용됩니다. 이 함수는 주로 반복문에서 원하는 범위의 숫자를 쉽게 생성할 수 있도록 도와줍니다.#numbers.sequence(start, end, step): 숫자 시퀀스를 생성하는 Thymeleaf 함수.→ start : 시.. 2024. 11. 16.
스프링 부트(Spring Boot)에서 파일 생성시 web(html, jsp 등) 관련 파일 항목이 없을때 해결방법 STS4를 설치 후 프로젝트를 만들고 작업을 시작하기 위해 html 파일을 만들기 위해 [templates] 폴더에서 마우스 우클리 후 New 로 들어가봤는데 html, css, jsp 등 과 같은 web 관련 파일 형식이 검색돼지 않았다.  이를 해결하기 위해서는 MarketPlace에서 추가적인 Tools 설치가 필요하다. 해결방법상단 메뉴바에서 help > Eclipse MarketPlace 클릭 > 검색창에 'java and web' 검색 > Eclipse Enterprise Java and Web Developer Tools 다운로드 이렇게 동의 후 finish 버튼까지 누르면 창이 종료되는데, 이것이 끝난것이 아니기 때문에 방심하면 안되고, 실제 화면 우측 하단에 설치되는 과정이 완료되는지를 .. 2024. 11. 13.
맥북 스프링 부트 세팅 - STS4(Spring Boot/Spring/백엔드개발/Java/자바/Backend) https://spring.io/tools 접속[4.26.0 - macOS x86_64] 다운로드 프로그램 실행Spring Starter Project 생성참고로 라이브러리 선택할때 DB의 경우 자신에게 맞는 DB를 선택해서 사용하면 된다. (나는 Oracle을 사용하기 때문에 Oracle Driver 선택) 기본적으로 생성된 컨트롤러에서 프로그램을 실행해본다→ 그런데 처음 프로그램을 실행해보면 에러가 난다→ 에러가 나는 이유는 얘가 실행될때 오라클 드라이버를 먼저 읽어들이는데, 오라클 드라이버를 쓰겠다고 처음 스타터 프로젝트 만들때 라이브러리 설정 해놓고 그에 대한 정보를 제공하지 않아서 그런거다.내장 톰캣이 실행될때 [application.properties]의 정보를 제공받아 실행되는데, 이 [ap.. 2024. 11. 9.
Spring IoC(Spring/Spring Boot/Java/IoC/backend/제어의역행/자바/스프링/스프링부트) 스프링(Spring) IoC(제어의 역행)IOCIoC(Inversion Of Control) : 제어의 역행IoC의 개념을 적용함으로 인해 얻을 수 있는 장점 : Container 기능을 제공하여 객체간의 결합도를 떨어뜨릴 수 있다.xyz.itwill01.old(패키지) ⇒ 결합도 높은 버전helloMessageObject(클래스)  //  MessagePrintObject(클래스)  //  MessagePrintApp(클래스)HiMessageObject(클래스)클래스 하나가 바뀌니 그 클래스와 관계있는 다른 클래스도 모두 바꾸어줘야 한다.결합도가 높아서 유지보수가 힘들어진다.결합도를 낮추기위해 인터페이스를 이용하거나 팩토리 클래스를 이용하는거다.xyz.itwill02.factory(패키지) ⇒ 결합도 .. 2024. 8. 30.
728x90