Java 275

Spring Boot 8강 - JPA 리포지토리와 메서드 쿼리로 데이터 조회하기

JPA에서는 데이터베이스에 직접 쿼리문을 작성하지 않고도인터페이스만 정의하면 자동으로 CRUD(조회, 생성, 수정, 삭제) 메서드를 사용할 수 있습니다.또한, 메서드 이름만 잘 지어주면 원하는 조건으로 데이터를 검색할 수도 있습니다.📌 예제 코드package com.mysite.sbb.question;import java.util.List;import org.springframework.data.jpa.repository.JpaRepository;public interface QuestionRepository extends JpaRepository { Question findBySubject(String subject); Question findBySubjectAndContent(String..

[ 51일차 1~7 ] 수업 정리 - Spring boot

📌 1. 프로젝트 환경 설정Spring Boot 버전: Spring Initializr 기반의존성 설정 (build.gradle 일부):implementation 'org.springframework.boot:spring-boot-starter-web'developmentOnly 'org.springframework.boot:spring-boot-devtools'compileOnly 'org.projectlombok:lombok'annotationProcessor 'org.projectlombok:lombok'runtimeOnly 'com.h2database:h2'implementation 'org.springframework.boot:spring-boot-starter-data-jpa'📌 2. ap..

국비 2025.06.30

Spring Boot 7강 - JPA 엔티티와 관계 매핑(Question & Answer 예제)

JPA에서는 데이터베이스의 테이블을 클래스(엔티티)로 매핑해서자바 객체처럼 다룰 수 있습니다.이번 강의에서는 Question과 Answer 두 엔티티를 설계하고,1:N(일대다) 관계를 어떻게 표현하는지 예제로 알아봅니다.📌 예제 코드Answer.javapackage com.mysite.sbb;import java.time.LocalDateTime;import jakarta.persistence.Column;import jakarta.persistence.Entity;import jakarta.persistence.GeneratedValue;import jakarta.persistence.GenerationType;import jakarta.persistence.Id;import jakarta.persi..

Spring Boot 5강 - 컨트롤러에서 HTML 코드 직접 반환하기

스프링 부트에서는 컨트롤러 메서드에 @ResponseBody를 붙이면,문자열을 그대로 브라우저에 출력할 수 있습니다.이때 HTML 태그가 포함된 문자열을 반환하면,브라우저에서 해당 HTML이 실제 태그로 해석되어 화면에 렌더링됩니다.📌 예제 코드package com.mysite.sbb;import org.springframework.stereotype.Controller;import org.springframework.web.bind.annotation.GetMapping;import org.springframework.web.bind.annotation.ResponseBody;@Controllerpublic class HelloController { @GetMapping("/hello")..

Spring Boot 4강 - @RequiredArgsConstructor로 생성자 자동 생성하기

클래스를 만들 때, final 필드나 @NonNull 필드를 반드시 초기화해야 할 때가 많습니다.이럴 때 Lombok의 @RequiredArgsConstructor를 사용하면,필요한 필드만 받아서 초기화하는 생성자(constructor)를 자동으로 만들어줍니다.📌 예제 코드import lombok.Getter;import lombok.RequiredArgsConstructor;@Getter@RequiredArgsConstructorpublic class HelloLombok { private final String hello; private final String lombok; public static void main(String[] args) { HelloLombok h..

JDK 21을 설치하고 STS4(Spring Tool Suite 4)까지 설치해보자

이번 글에서는 JDK 21 버전 설치 후 환경 변수를 설정하고 STS4까지 설치하는 것을 진행해보고자 합니다만,JDK 21 설치 및 환경 변수 설정의 경우 먼저 포스팅이 되어있어 이쪽을 참고해주시기 바랍니다.STS4(Spring Tool Suite 4) 설치(1) STS4 다운로드공식 사이트에서 다운로드STS4 다운로드(2) 설치 및 실행운영체제에 맞는 설치 파일(zip 또는 installer) 다운로드압축 해제 또는 설치 파일 실행 후 설치설치 경로는 한글/공백 없는 경로 추천 (예: C:\dev\sts-4.23.0.RELEASE)실행 파일(SpringToolSuite4.exe) 더블클릭하여 실행STS4에서 JDK 21 설정STS4 실행 후,Window → Preferences → Java → Inst..

Spring Boot 2강 - Lombok 설치 및 Gradle 설정법

Lombok은 자바 코드를 더 간결하게 만들어주는 라이브러리입니다.반복적으로 작성하는 getter, setter, 생성자, toString 같은 코드를 자동으로 생성해주기 때문에,개발자는 핵심 로직에 집중할 수 있고, 코드도 훨씬 깔끔해집니다.📌 설치 및 build.gradle 설정 방법https://projectlombok.org/download위 주소에서 lombok.jar 파일을 다운로드합니다.build.gradle 파일의 dependencies 블록에 아래 두 줄을 추가합니다.compileOnly 'org.projectlombok:lombok'annotationProcessor 'org.projectlombok:lombok'💬 왜 이런 작업을 해야 할까?Lombok의 주요 목적자바에서는 필드가..

자동 서버 재시작을 위한 developmentOnly : spring-boot-devtools

1. spring-boot-devtools란?Spring Boot DevTools는 스프링 부트 개발을 더 쉽고 빠르게 도와주는 개발용 툴입니다.주로 개발 환경에서만 사용하며, 프로덕션(운영) 환경에서는 사용하지 않습니다.주된 기능은 자동 재시작, 라이브 리로드, 속성 캐시 비활성화 등입니다.2. 왜 developmentOnly로 지정할까?developmentOnly는 개발환경에서만 해당 라이브러리가 적용되도록 하는 Gradle의 플러그인(구성 방식)입니다.이 옵션을 사용하면, 빌드해서 배포할 때(jar, war 생성 시) 이 라이브러리가 포함되지 않습니다.즉, 운영 환경에 DevTools가 포함되지 않도록 방지하는 것이죠.3. 주요 기능(1) 자동 재시작(Automatic Restart)소스코드, 설정..

Spring Boot 1강 - HelloController로 첫 번째 웹 응답 만들기

이번 강의에서는 Spring Boot를 이용해 가장 기본적인 웹 요청 처리(Hello, World! 출력)를 구현해봅니다.클래스와 애너테이션의 역할을 이해하며, 실제로 브라우저에 "Hello, World!"가 출력되는지 확인합니다.📌 예제 코드package com.mysite.sbb;import org.springframework.stereotype.Controller;import org.springframework.web.bind.annotation.GetMapping;import org.springframework.web.bind.annotation.ResponseBody;@Controllerpublic class HelloController { @GetMapping("/hello") @..

Spring 강의 15강 - ViewResolver와 HandlerMapping을 활용한 컨트롤러 구조 개선

이번 시간에는 Spring 웹 애플리케이션에서 ViewResolver와 HandlerMapping을 적용해 컨트롤러의 역할을 세분화하고, 각 기능을 담당하는 클래스를 구조화하는 과정을 다룹니다.📌 ViewResolver.javapackage com.springbook.controller;public class ViewResolver { public String prefix, suffix; public String getView(String viewName) { return prefix + viewName + suffix; } public void setPrefix(String prefix) { this.prefix = prefix; } public void setSuffix(String suffi..

반응형