전체 글 221

데이터베이스 연동 - 레포지토리 인터페이스 설계와 DAO 연동을 위한 컨트롤러 설계

데이터베이스 연동에 있어 레포지토리 인터페이스와 컨트롤러의 설계는 중요한 부분입니다. 레포지토리는 DAO와 유사하게 데이터 액세스 로직을 추상화하고, 컨트롤러는 사용자 요청을 처리하여 서비스 레이어와 레포지토리와의 연동을 담당합니다. 레포지토리 인터페이스 설계 레포지토리 인터페이스는 Spring Data JPA를 사용하여 엔터티와 관련된 CRUD 작업을 단순화하게 해줍니다. 인터페이스만 정의하면 Spring Data JPA가 런타임에 구현체를 자동으로 생성합니다. public interface PersonRepository extends JpaRepository { // 추가적인 쿼리 메서드를 정의할 수 있습니다. List findByName(String name); } 컨트롤러 설계 컨트롤러는 HTTP..

BACKEND/SPRING 2023.08.06

데이터 베이스 연동 - 엔티티 설계와 DAO 설계

엔터티 설계 엔터티는 데이터베이스 테이블을 자바 클래스로 표현하는 것입니다. 이를 통해 데이터베이스와 객체 지향 프로그래밍 간의 간극을 줄일 수 있습니다. @Entity public class Person { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) private Long id; @Column(name = "name", nullable = false) private String name; @Column(name = "age") private int age; // 기본 생성자 public Person() { } // Getter와 Setter // ... } DAO 설계 DAO는 데이터베이스와의 CRUD 작업을 캡슐화하는 객체입니다. DAO를 통해..

BACKEND/SPRING 2023.08.06

데이터 베이스 연동 - ORM, JPA

ORM (객체 관계 매핑) 스프링 부트(Spring Boot)에서 ORM(Object-Relational Mapping)은 객체 지향 프로그래밍 언어의 객체와 관계형 데이터베이스의 데이터를 매핑하는 프로그래밍 기술입니다. 스프링 부트에서는 JPA(Java Persistence API)를 주로 사용해 ORM을 구현하고, Hibernate는 JPA의 대표적인 구현체 중 하나입니다. 객체와 RDB(Relational Database)의 테이블을 자동으로 매핑하는 방법을 의미하며 데이터 베이스와 애플리케이션 클래스와의 불일치와 제약사항을 해결해 줄 수 있는 역할입니다. 장점 개발 생산성 향상: SQL 쿼리를 직접 작성하지 않아도 되므로 개발 속도가 빨라집니다. 대부분의 ORM 프레임워크는 CRUD 연산을 위한 ..

BACKEND/SPRING 2023.08.06

230804 STUDY LOG.

오늘 공부. [FE] HTML + 자바스크립트 HTML 튜토리얼 - HTML id Attribute JavaScript Operators [BE] 2차 프로젝트 피드백 반영 및 수정 진행 [과제 및 미션] 4차 미션 진행하기 오늘 후기. 지난 여러 실습 클론코딩 프로젝트 + 추가 기능 구현 프로젝트 한것을 떠올려보며 4차, 5차 과제를 수행하려 했건만 왜이렇게 에러가 잦은지 눈물이 또르르르르르르르르르 프론트에 대한 이해도 아직 한창 남은것 같고 sql 쿼리도 좀더 해야될것같고 주말 동안 우짜던동 완성해서 제출해야지! 할 수 있다 가즈아ㅏㅏㅏㅏㅏㅏㅏㅏㅏㅏㅏㅏㅏㅏㅏㅏㅏㅏㅏㅏ

STUDY LOG 2023.08.04

JavaScript Operators

JavaScript Assignment JavaScript에서 변수에 값을 할당하는 것은 가장 기본적인 연산 중 하나입니다. 이를 위해 = 연산자를 사용합니다. JavaScript Operators The Assignment (=) Operator x = 5, y = 2 일 때 x + y 의 값은? HTML 삽입 미리보기할 수 없는 소스 // 여러 변수 동시에 값을 할당하는 것도 지원 let a = 5, b = 6, c = 7; // 연속적인 할당도 가능, 모든 변수의 값은 5 let a = b = c = 5; JavaScript Arithmetic Operators(산술 연산자) 더하기 (+), 빼기(-), 곱하기(*), 나누기(/), 나머지연산자(%), 증가 연산자(++), 감소 연산자(--), 지수..

FRONTEND/JAVASCRIPT 2023.08.04

HTML 튜토리얼 - HTML id Attribute

HTML id Attribute HTML의 id 속성은 웹 페이지 내의 특정 요소를 고유하게 식별하는 데 사용됩니다. id 속성의 값은 전체 페이지에서 유일해야 합니다. 이것은 CSS와 JavaScript에서 해당 요소에 접근하는 데 매우 중요하게 사용됩니다. Using The id Attribute 고유성 페이지 내에서 id의 값은 고유해야 합니다. 즉, 같은 id를 가진 두 개 이상의 요소가 있어서는 안 됩니다. CSS에서 사용하기 id를 사용하여 특정 HTML 요소에 스타일을 적용할 수 있습니다. CSS에서 id는 해시(#) 기호를 이용해 참조됩니다. The id Attribute CSS를 사용하여 ID가 "myHeader"인 요소의 스타일을 지정합니다 My Header HTML 삽입 미리보기할 수..

FRONTEND/HTML 2023.08.04

230803 STUDY LOG.

오늘 공부. [BE] 스프링 강의 수강 및 정리 01_주제 선정 02_기능 단위로 게획하기 03_만들면 좋은 결과물들 01_브랜치 전략 02_리뷰를 통해 함께 성장하기 03_Micro_Service_Architecture 소개 04_docker 소개와, docker로 database 만들기 01_구현해야 할 것들 [코딩테스트] 코딩테스트 진행 + 단계별 문제 풀기 [과제 및 미션] 4차 미션 파일 확인 및 진행하기 오늘 후기. 추가 과제 시작하자마자 마주하는 에러 JDK 버전 에러는 이제 익숙 호호 org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'entityManagerFactory' 에러 때문에..

STUDY LOG 2023.08.03

230801 STUDY LOG.

오늘 공부. [BE] 스프링 강의 수강 및 정리 [코딩테스트] 코테 문제 풀기 및 정리 프로그래머스 - 다항식 더하기 [과제 및 미션] 3차 과제 제출 오늘 후기. 세번째 과제 완료. 세번째 프로젝트 과제 진행하면서 웹 스크래핑부터 Redis 서버 및 Cache 구현, JWT 인증, Docker 개념 등등 처음 접한게 많아 좀 힘들었는데 그래도 다하고 나니까 뿌듯 머리에 오래 남을 수 있도록 또 복기해야지. 일단 잡니다 ㅂㅂㅂㅂㅂㅂㅂ 오늘도 끗 내일도 힘힘힘!

STUDY LOG 2023.08.02

프로그래머스 - 다항식 더하기

나의 풀이. - polynomial 문자열을 "+" 기준으로 분리해 배열로 만들기 - "+"는 정규 표현식의 메타 문자이므로, 이 문자를 그대로 인식시키기 위해 이스케이프 문자를 추가 - x의 계수와 일반 숫자항을 담을 변수를 각각 0으로 선언하고 - for each 문으로 polynomial 로 만든 배열을 순회 - "\\+" 기준으로 나누면 앞뒤로 공백이 있을 수 있어 trim() 으로 공백 제거 - foreach 문자열 변수 s가 "x" 를 포함할 때 -> x 를 ""로 교체하면 숫자만 남음 - 빈 값이면 1x이기 때문에 x의 계수 변수에 += 1, 아니면 += 남은 숫자 - x가 포함되지 않은 숫자라면 숫자항 변수에 += 숫자 - StringBuilder를 하나 만들어서 x계수 변수가 1일 때는 ..

CODING TEST 2023.08.01

230730 STUDY LOG.

오늘 공부 [BE] 스프링 강의 수강 및 정리 / 스프링 북스터디 05. API를 작성하는 다양한 방법 - POST, PUT API 만들기 05. API를 작성하는 다양한 방법 - GET API 만들기 05. API를 작성하는 다양한 방법 - DELETE API 만들기 05. REST API 명세를 문서화 하는 방법 - Swagger 05. 로깅 라이브버리 - Logback 오늘 정리 1. 자바의 Garbage Collection (GC, 가비지 컬렉션) 개념 자바의 Garbage Collection (GC, 가비지 컬렉션)은 자동 메모리 관리의 한 부분입니다. 자바에서 객체를 생성하면, JVM(Java Virtual Machine)의 Heap 영역에 메모리가 할당됩니다. 프로그램이 이러한 객체들을 더 ..

STUDY LOG 2023.07.31