반응형

TIL/JAVA 19

[Spring] 노인 객체

노인 객체는 단순하게 1. 이름 2. 핸드폰 번호 만 받기로 했다 그래서 DTO 를 아래와 같이 설정했다 이름과 핸드폰 자리수에 대한 예외 처리도 DTO 에서 처리했다 package com.example.Mind_in_Canvas.dto.user;import java.time.LocalDateTime;import java.util.UUID;import jakarta.validation.constraints.NotBlank;import jakarta.validation.constraints.Pattern;import jakarta.validation.constraints.Size;import lombok.AllArgsConstructor;import lombok.Builder;import lombok.Ge..

TIL/JAVA 2025.01.10

[Spring] DTO 와 Entity 의 개념과 차이

Spring Boot 로 프로젝트를 진행하면서 코드를 작성하고 있는데 DTO 는 데이터 전송을 위한 객체, Entity 는 DB 와 연결하는 객체라고 개념만 알고 있어서이번 기회에 DTO 와 Entity 의 개념과 차이를 정리해본다  DTO, Data Transfer Object 계층 간 데이터를 전달하는 객체 일반적으로 데이터를 캡슐화하고, 필요한 정보만 포함하도록 설계된다 클라이언트에 응답 데이터를 보낼 때, 엔티티의 민감한 정보를 제외하거나 필요한 정보만 전달한다 🐣 예를 들어, 서버와 클라이언트가 통신할 때 데이터를 교환해야 하는데,이 데이터를 하나로 묶어서 전달하는 데 사용된다즉, DTO 는 데이터를 간단하게 포장해서 서버와 클라이언트가데이터를 쉽게 주고 받을 수 있도록 도와주는 도구이다 🐣..

TIL/JAVA 2025.01.08

[Spring] 회원 관리 예제 - 웹 MVC 개발

회원 관리 예제 - 웹 MVC 개발 듣고 있는 강의 - 김영한의 Spring 입문편 1. 회원 웹 기능 - 홈 화면 추가 홈 컨트롤러 추가 package hello.hello_spring.controller;import org.springframework.stereotype.Controller;import org.springframework.ui.Model;import org.springframework.web.bind.annotation.GetMapping;import org.springframework.web.bind.annotation.RequestParam;import org.springframework.web.bind.annotation.ResponseBody;@Controllerpublic c..

TIL/JAVA 2025.01.06

[Spring] 스프링 빈과 의존관계

듣고 있는 강의 - 김영한의 Spring 입문편  컴포넌트 스캔과 자동 의존관계 설정 https://helloahram.tistory.com/195 에서 만들었던 서비스를 화면에 붙이기 위해서는 Controller 와 ViewTemplate 이 필요하다  MemberController 는 MemberService 를 통해서 회원가입을 하고 데이터를 조회할 수 있어야 한다 그런 관계를 의존 관계가 있다고 한다 MemberController 만들고 의존관계 추가  package hello.hello_spring.controller;import hello.hello_spring.service.MemberService;import org.springframework.beans.factory.annotation...

TIL/JAVA 2025.01.01

[Spring] MVC 와 템플릿 엔진, API

듣고 있는 강의 - 김영한의 Spring 입문  MVC - Model View Controller🐣 소프트웨어 디자인 패턴 🐣View - 화면과 관련된 일만 처리Model - 비즈니스 로직과 서버 데이터 관련 처리를 담당 Controller - 사용자 요청을 받아서 Model 과 View 를 연결  Thymeleaf 의 장점 html 을 작성하고 그 파일을 서버 없이 열 수 있다 서버 없이 열 때는 hello! empty 부분이 출력되고 서버에서 열 때는 그 앞에 부분이 출력된다 아래 사진에서 Chrome icon 을 선택하면 서버 없이 열린다 View ViewResolver 를 사용한다  🐣 ViewRosolver 는 Contorller 에서 반환한 View 이름을 기반으로 실제 View 객체에 ..

TIL/JAVA 2024.12.30

[JAVA] Map Interface

Map 데이터를 Key 와 Value 쌍으로 저장하여, Key 를 Value 에 매핑한다 Map Map Interface 의 특징 1. No Duplicates in Keys 키는 고유해야 하고 (중복될 수 없고), 값은 중복될 수 있다 2. Null Handling HashMap 과 LinkedHashMap 과 같은 구현은 하나의 Null 키를 허용하고, 대부분의 구현체는 여러 개의 Null 값을 허용한다, 예외적으로 TreeMap 은 키에 Null 값을 허용하지 않는다 (내부적으로 키를 비교/ 정렬하기 때문) 3. Threard-Safe Alternaitves 기본적인 Map 구현체는 스레드에 안전하지 않기 때문에 멀티스레드 환경에서는 추가 처리가 필요하다  - ConcurrentHashMap 스레드..

TIL/JAVA 2024.12.29

[JAVA] 접근 제어자

접근 제어자 접근 제어자 이해 자바는 public, private 같은 접근 제어자 Access Modifier 를 제공한다 접근 제어자를 사용하면 해당 클래스에서 특정 필드나 메서드에 접근하는 것을 허용하거나 제한할 수 있다  🐣 다른 클래스에서 접근하지 못하도록 하려면 private 을 앞에 선언해 주면 된다 🐣private 접근 제어자는 모든 외부의 호출을 막기 때문에, 해당 클래스 내부에서만 호출할 수 있다 좋은 프로그램은 적절한 제약을 제공하는 프로그램이다 package access;public class Speaker { private int volume; ...}package access;public class SpeakerMain { public static void main..

TIL/JAVA 2024.12.25

[JAVA] 패키지

듣고 있는 강의 - 김영한의 실전 자바 기본편  패키지컴퓨터가 파일을 분류하기 위해 폴더, 디렉토리라는 개념을 제공하는 것처럼자바도 이런 개념을 제공하는데, 이것이 바로 패키지이다 패키지 Package 는 이름 그대로 물건을 운송하기 위한 포장 용기나 그 포장 묶음을 뜻한다 패키지 사용패키지를 사용하는 경우 항상 코드 첫 줄에 package 이름을 적어 주어야 한다 package pack; // 항상 코드 첫 줄에 package 이름을 적어준다 public class Data { public Data() { System.out.println("패키지 pack Data 생성"); }} Package 이름이 없는 경우 아래와 같이 오류가 발생한다 참고 - 생성자에 public 을 사용..

TIL/JAVA 2024.12.19
반응형