전체 글 (374) 썸네일형 리스트형 완성 코드 STEP 02 - 연관 관계 매핑: User와 Board 엔티티 ( JPA API , JPQL 쿼리 사용, 인증(세션 로직 추가 ) Board 엔티티에 User와의 연관 관계를 설정수정된 Board 엔티티 코드package com.tenco.blog_v1.board;import com.tenco.blog_v1.user.User;import jakarta.persistence.*;import lombok.Builder;import lombok.Data;import lombok.NoArgsConstructor;import java.sql.Timestamp;@NoArgsConstructor@Entity@Table(name = "board_tb")@Datapublic class Board { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) // 기본키 전략 db 위임 pri.. 완성 코드 STEP 02 - 사용자 관리 기본 코드 추가 및 설정( JPA API , JPQL 쿼리 사용, 인증(세션 로직 추가 ) Spring에서 템플릿 엔진을 사용할 때 데이터를 뷰로 전달하는 방식HttpServletRequest 객체 사용HttpServletRequest는 기본 서블릿 개념에서 사용된다.모든 HTTP 요청에 대한 데이터를 관리할 수 있으며, 세션이나 쿠키 같은 정보도 함께 처리할 수 있다.서블릿 API와 연관되어 있어 구조가 약간 복잡할 수 있다.Model 객체 사용Model은 Spring MVC에서 데이터 전달 전용으로 만들어졌다.컨트롤러에서 뷰로 데이터를 간편하게 전달할 수 있다.코드가 간결하며, Spring 프레임워크와 깊이 연관되어 있어 유지보수나 코드 가독성핵심 정리Model: 간단하고 Spring MVC에서 자주 사용되는 방식입니다. 일반적인 데이터 전달에 적합하다.HttpServletRequest: .. 완성 코드 STEP 01 - 익명 게시판 만들기 application.ymlspring: profiles: active: - dev #활성화할 프로필 설정 application-dev.ymlserver: servlet: encoding: charset: utf-8 force: true port: 8080spring: mustache: servlet: expose-session-attributes: true # Mustache 템플릿에서 세션 속성에 접근할 수 있도록 허용 expose-request-attributes: true # Mustache 템플릿에서 요청 속성에 접근할 수 있도록 허용 datasource: driver-class-name: org.h2.Driver.. 완성 코드 STEP 01 - 프로젝트 생성 의존성 확인plugins { id 'java' id 'org.springframework.boot' version '3.2.10' id 'io.spring.dependency-management' version '1.1.6'}group = 'com.tenco'version = '0.0.1-SNAPSHOT'java { toolchain { languageVersion = JavaLanguageVersion.of(17) }}configurations { compileOnly { extendsFrom annotationProcessor }}repositories { mavenCentral()}dependencies { implementation 'org.springframework.boot:spring-b.. Mustache 란 뭘까? Mustache 란?Mustache는 거의 로직이 없는 템플릿 엔진으로, 다양한 프로그래밍 언어에서 사용할 수 있으며, 간단하고 유지보수가 용이한 템플릿을 만드는 데에 유용하다. Spring Boot와 Mustache를 결합함으로써 개발자는 백엔드 로직과 프론트엔드 표현을 분리하여 더 효율적이고 관리하기 쉬운 웹 어플리케이션을 구축할 수 있다. Mustache의 주요 특징 로직을 최소화한 템플릿(Logic-less templates)Mustache 템플릿은 복잡한 로직을 최소화하여, 템플릿 내에서 간단한 조건문과 반복문을 지원한다. 이는 데이터를 표시하는 데에 집중하도록 설계되었다.{{#users}} {{name}} 님이 로그인했습니다.{{/users}}{{^users}} 로그인한 사용자가 없습니다.. 템플릿 엔진이란 뭘까? 템플릿 엔진이란?템플릿 엔진 (Template Engine)은 정적 파일(예: HTML, XML 등)을 동적으로 변환할 수 있는 도구이다. 서버에서 데이터를 받아, 동적인 콘텐츠를 생성하기 위해 템플릿 파일에 변수나 표현식을 삽입해 처리하는 역할을 한다. 이를 통해 서버가 클라이언트에 동적 웹 페이지를 응답할 수 있게 된다. 1. 역할동적 웹 페이지 생성 서버에서 HTML 템플릿 파일을 가져와 서버에서 처리된 데이터를 삽입하여 클라이언트에게 동적인 웹페이지를 전송한다.코드 재사용성여러 웹 페이지에서 동일한 구조나 디자인을 사용하는 경우, 템플릿 엔진을 사용하면 공통된 레이아웃을 쉽게 재사용할 수 있다. 2. 템플릿 엔진의 종류서버사이드 템플릿 엔진(SSR)서버에서 HTML을 렌더링하고, 데이터가 삽입된.. 인텔리제이 설치 및 세팅 1. 환경변수 JAVA_HOME 에서 JDK버전 확인 2. path에서 jdk17 버전 추가 3. cmd 창 열고 java -version / javac 1. spring initalizr 접속 후 아래와 같이 세팅 / 다운로드https://start.spring.io/ 1. 인텔리제이 다운로드 접속https://www.jetbrains.com/ko-kr/idea/download/?section=windows 최고의 Java 및 Kotlin IDE인 IntelliJ IDEA를 다운로드하세요 www.jetbrains.com 2. 다운로드 클릭 -> 자동 다운로드 3. 다운로드가 완료되면 더블클릭 설치 4. 인텔리제이에서 확장 프로그램 설치 [Blog] 블로그 프로젝트 만들기 - 7 (글 수정 API 만들기) 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;import lombok.Data;import lombok.NoArgsConstructor;// 반드시 기본 생성자가 있어야.. 이전 1 ··· 8 9 10 11 12 13 14 ··· 47 다음