JPA

Mustache는 거의 로직이 없는 템플릿 엔진으로, 다양한 프로그래밍 언어에서 사용할 수 있으며, 간단하고 유지보수가 용이한 템플릿을 만드는 데에 유용합니다. Spring Boot와 Mustache를 결합함으로써 개발자는 백엔드 로직과 프론트엔드 표현을 분리하여 더 효율적이고 관리하기 쉬운 웹 어플리케이션을 구축할 수 있습니다.Mustache의 주요 특징로직을 최소화한 템플릿(Logic-less templates): Mustache 템플릿은 복잡한 로직을 최소화하여, 템플릿 내에서 간단한 조건문과 반복문을 지원합니다. 이는 데이터를 표시하는 데에 집중하도록 설계되었습니다.{{#users}} {{name}} 님이 로그인했습니다.{{/users}}{{^users}} 로그인한 사용자가 없습니다.{{/us..
💡학습 목표1. 템플릿 엔진에 대한 개념을 말할 수 있다. 2. SSR, CSR에 대한 개념을 설명할 수 있다. 템플릿 엔진이란?템플릿 엔진(Template Engine)은 정적 파일(예: HTML, XML 등)을 동적으로 변환할 수 있는 도구입니다. 서버에서 데이터를 받아, 동적인 콘텐츠를 생성하기 위해 템플릿 파일에 변수나 표현식을 삽입해 처리하는 역할을 합니다. 이를 통해 서버가 클라이언트에 동적 웹 페이지를 응답할 수 있게 됩니다.역할동적 웹 페이지 생성: 서버에서 HTML 템플릿 파일을 가져와, 서버에서 처리된 데이터를 삽입하여 클라이언트에게 동적인 웹 페이지를 전송합니다.코드 재사용성: 여러 웹 페이지에서 동일한 구조나 디자인을 사용하는 경우, 템플릿 엔진을 사용하면 공통된 레이아웃을 쉽게 ..
💡 학습 목표트랜잭션 처리에 대한 개념을 설명할 수 있다.더티 체킹 개념과 영속성 컨텍스트에 특징을 설명할 수 있다. Article 클래스(엔티티) 코드 추가 하기 - 1package com.example.demo._domain.blog.entity;import com.example.demo.common.errors.Exception400;import jakarta.persistence.Column;import jakarta.persistence.Entity;import jakarta.persistence.GeneratedValue;import jakarta.persistence.GenerationType;import jakarta.persistence.Id;import lombok.Builder;im..
💡 학습 목표Optional 에 대한 개념을 숙지 한다.경로 변수(Path variable)에 대한 개념을 이해하고 사용할 수 있다. BlogService 파일에 게시글 조회 로직 추가 - 1package com.example.demo._domain.blog.service;import java.util.List;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.stereotype.Service;import com.example.demo._domain.blog.dto.ArticleDTO;import com.example.demo._domain.blog.entity.Article;import com..
💡 학습 목표글 전체 조회 기능을 만들 수 있다.응답 처리시 공통 DTO를 설계할 수 있다.ExceptionHandler 개념을 이해하고 코드를 구성할 수 있다. BlogService 파일에 게시글 전체 조회 기능 추가 하기 - 1package com.example.demo._domain.blog.service;import java.util.List;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.stereotype.Service;import com.example.demo._domain.blog.dto.ArticleDTO;import com.example.demo._domain.blog.ent..
💡 학습 목표DTO 에 대한 개념을 설명 할 수 있다.애플리케이션 컨텍스트에 대해서 설명 할 수 있다.서비스 계층, 컨트롤러 계층을 코드로 작성할 수 있다.   작업 1DTO(Data Transfer Object) 클래스 만들기 (게시글 저장)DTO는 데이터 전송을 위한 객체로, 주로 계층 간 데이터 교환을 목적으로 사용됩니다. 예를 들어, 클라이언트에서 서버로, 혹은 서비스 계층에서 프레젠테이션 계층으로 데이터를 전달할 때 사용됩니다. package com.example.demo._domain.blog.dto;import com.example.demo._domain.blog.entity.Article;import lombok.AllArgsConstructor;import lombok.Getter;im..
💡 중요레포지토리 인터페이스를 만들 수 있다.인터페이스 선언 방법과, 기본적인 CRUD 기능을 자동으로 제공받기 위한 JpaRepository 상속 구조를 이해한다.JpaRepository의 역할과 계층 구조를 이해하고 설명할 수 있다.JpaRepository의 상속 계층(Repository → CrudRepository → PagingAndSortingRepository → JpaRepository)과 각 인터페이스의 역할을 이해한다.스프링이 레포지토리 구현체를 자동으로 생성하는 개념을 설명할 수 있다.스프링이 JpaRepository 인터페이스의 구현체를 런타임 시에 자동으로 생성하여 제공하는 방식에 대해 설명할 수 있다.  PostRepository 에 사용 package com.example.d..
💡 중요점기존의 MVC 레이어 기반 패키지 구조와 최근 도메인 중심 패키지 구조에 대한 개념을 말 할 수 있다.JPA로 엔티티를 생성시킬 수 있다.  블로그 테이블 구조 확인 컬럼명자료형null 허용키설명idBIGINTN기본키일련번호, 기본키titleVARCAR(255)N 게시물 제목contentVARCAR(255)N 내용  스프링 부트와 JPA 프로젝트에서 패키지 구조를 구성하는 트렌드는 도메인 주도 설계(Domain-Driven Design, DDD)의 원칙을 사용하는 사례가 많이 보인다. 이는 애플리케이션의 구조를 기능이나 역할에 따라 나누기보다는, 도메인 중심으로 나누어 애플리케이션의 유지보수성과 확장성을 높이려는 의도나 방식이다.(여기서 도메인은 애플리케이션이 해결하려는 특정 비즈니스 문제나 ..
프로젝트 생성   빌드 그래들 의존성 주입 확인 bulid.gradle에 해당 코드 주석 처리 후, mysql 상에서 db생성plugins { id 'java' id 'org.springframework.boot' version '3.2.10' id 'io.spring.dependency-management' version '1.1.6'}group = 'com.example'version = '0.0.1-SNAPSHOT'java { toolchain { languageVersion = JavaLanguageVersion.of(21) }}configurations { compileOnly { extendsFrom annotationProcessor }}repositories { mavenCentral(..
빌드 시스템이란?빌드 시스템은 소프트웨어 개발에서 소스 코드를 실행 가능한 프로그램으로 변환하는 일련의 과정을 자동화하는 도구 또는 프로세스를 말합니다.컴파일:개발자가 작성한 소스 코드를 기계가 이해할 수 있는 바이트 코드 또는 기계어로 변환하는 과정입니다. ( 자바 소스 파일(.java)을 컴파일하여 .class 파일로 변환)의존성 관리:프로젝트에서 사용하는 외부 라이브러리(예: JUnit, Spring 등)를 자동으로 다운로드하고, 적절한 버전을 유지하며, 이를 프로젝트에 포함시킵니다. (Gradle, Maven 같은 도구 사용)패키징:컴파일된 소스 코드와 함께 필요한 파일(리소스, 설정 파일 등)을 하나로 패키징하여 배포 가능한 형태로 만듭니다. (자바 프로젝트의 경우 JAR(Java ARchive..
CNOW
'JPA' 카테고리의 글 목록