Project/Personal Project 9

SpringBoot - JPA / 일정관리프로그램(트러블 슈팅)

배경User(회원) 수정기능 개발 완료 후Postman 사용해서 테스트 중 상태코드 200으로 정상 작동 하였는데DB값이 수정되지 않는 현상 발견발단 및 전개1. entity, requestDto, responseDto, controller, service의 코드를 면밀하게 살펴보았으나 문제없음2. 디버깅 모드로 controller와 service에 Postman으로 요청한 값이 전달되는지 확인 -> 정상절정LLM 모델 중 perplexity URL : https://www.perplexity.ai/ 사용하여 해당 상황을 설명위와 같이 상황을 설명하였더니이렇게 답변해 주었고 천천히 읽어 내려가다 "트랜잭션 관리"에서 아차 싶었고바로 코드를 확인해 보니 @Transactional이 빠져있는 것을 확인수정 ..

일정 관리 프로그램 (트러블 슈팅)

설계(API 명세서)더보기1. 배경처음으로 api 명세서를 작성해 보았다.json에 익숙하지 않아 요구사항에 제시된 예시를 보면서도이해가 가지 않아서 당황하였다. 2. 결말구글링으로 api명세 관련해서 많은 자료가 있어다른 사람이 작성한 내용을 토대로요구사항에 맞게 진행하려면 어떤 기능이 필요한지 먼저 정리하고Method 방식은 예시와 같게값을 넣어 생성하는 경우에는 POST값을 조회하는 경우 GET값을 수정하는 경우 PUT값을 삭제하는 경우 DELETE로 작성하고필요 값을 json형태로 작성하였다.  개발더보기배경요구사항 중 수정 및 삭제의 경우 해당 일정의 비밀번호를 확인하여 일치할 경우만 수정 및 삭제하기 위해기존에 비밀번호와 관계없이 수정 및 삭제하던 코드에 매개변수로 "String passwor..

야구게임 만들기 (3. 트러블 슈팅)

배경더보기랜덤 한 세 자리 숫자를 어떻게 만들어야 하는 거지?발단더보기요구 사항 중 Hint부분에서 Random, Hashset 힌트를 확인하고 Random으로 도전하였으나Random, Hashset에 대한 이해도 부족으로 구글링해온 내용에 대한 코드를 요구사항에 맞게 수정하거나 응용이 부족계속 세 자리 숫자가 아닌 한자리 숫자가 세 번 나오는 형태로 출력됨ex) 257출력결과 :257전개더보기Chat GPT를 통해 현재 코드의 문제점과 요구사항 전달위기더보기Random 방식하나만 사용하는 것이 아닌 Hashset과 random을 같이 활용해야 한다는 것을 인지하였으나Chat GPT가 제공해 준 코드를 이해하지 못하고 사용하였음절정더보기제공받은 코드를 이해하지 못해 내 것으로 만들지 못하니 이후 코드도 ..

야구게임 만들기 (1. RFP)

개발환경 및 셋팅더보기1. IntelliJ IDEA 설치 및 실행2. 새 Java 프로젝트 생성 IntelliJ IDEA를 열고, Welcome Screen에서 New Project를 클릭합니다.- 기존 프로젝트가 열려 있다면, File 메뉴에서 New -> Project...를 선택합니다.프로젝트 타입 선택 : 왼쪽 사이드바에서 Java를 선택합니다.JDK 선택: Project SDK 드롭다운에서 사용할 JDK 버전을 선택합니다. JDK가 설치되어 있지 않다면,Add SDK를 클릭하여 설치된 JDK 경로를 지정합니다.프로젝트 템플릿 선택: 기본적으로 Create project from template은 선택하지 않고 진행합니다.프로젝트 이름 및 위치 설정: Project name 필드에 프로젝트 이름을..

계산기 만들기 (4. 트러블 슈팅)

배경더보기계산기 프로젝트를 진행하면서 코드가 종료되지 않고 반복되는 현상 발견발단더보기요구사항 중 사용자가 "exit"를 입력하면 코드를 종료하도록 하는 부분에서exit를 입력하기 전에 while문 초반으로 돌아가 반복되는 현상을 발견전개더보기종료 문구인 "exit"를 입력받는 위치가 잘못되었나 생각하면서위치를 변경해 가면서 코드를 실행하고 디버깅 시도하였으나 해결되지 않음위기더보기구글링을 시도 하려고 하였으나 "코드 종료 문구 무한반복"등의 키워드식 검색을 하여도 해당되는 내용을 찾지 못함이게 모르는게 뭔지 몰라서 뭐라고 물어봐야 할지 모르는 상태인가 하고 다른 방법을 모색절정더보기Chat GPT 를 사용하여 현재 내 코드 전문과 문제점을 질문결말더보기 스캐너 사용시 버퍼에 남아있는 줄바꿈으로 인하여 ..

계산기 만들기 (3. Lv02 개발)

Lv 02 클래스를 적용해 기본적인 연산을 수행할 수 있는 계산기 만들기 요구사항더보기사칙연산을 수행 후, 결과값 반환 메서드 구현 & 연산 결과를 저장하는컬렉션 타입 필드를 가진 Calculator 클래스를 생성Lv 1에서 구현한 App 클래스의 main 메서드에 Calculator 클래스가 활용될 수 있도록 수정App 클래스의 main 메서드에서 Calculator 클래스의 연산 결과를 저장하고 있는컬렉션 필드에 직접 접근하지 못하도록 수정 (캡슐화)Calculator 클래스에 저장된 연산 결과들 중 가장 먼저 저장된 데이터를 삭제하는 기능을 가진메서드를 구현한 후 App 클래스의 main 메서드에 삭제 메서드가 활용될 수 있도록 수정소스코드더보기Calculator 클래스package com.exam..

계산기 만들기 (2. Lv01 개발)

Lv 01 클래스 없이 기본적인 연산을 수행할 수 있는 계산기 만들기요구사항더보기양의 정수를 입력받기 (0포함)사칙연산 기호를 입력받기(+, -, *, /)위에서 입력받은 양의 정수 2개와 사칙연산 기호를 사용하여 연산을 진행한 후 결과값을 출력하기반복문을 사용하되, 반복의 종료를 알려주는 "exit" 문자열을 입력하기 전까지 무한으로 계산을 진행할 수 있도록 하기소스코드더보기package com.example.calculator;import java.util.Scanner;// Lv 01 클래스 없이 기본적인 연산을 수행할 수 있는 계산기 만들기public class App { public static void main(String[] args) { Scanner sc = new Sc..

계산기 만들기 (1. RFP)

개발환경 및 셋팅더보기1. IntelliJ IDEA 설치 및 실행2. 새 Java 프로젝트 생성 IntelliJ IDEA를 열고, Welcome Screen에서 New Project를 클릭합니다.- 기존 프로젝트가 열려 있다면, File 메뉴에서 New -> Project...를 선택합니다.프로젝트 타입 선택 : 왼쪽 사이드바에서 Java를 선택합니다.JDK 선택: Project SDK 드롭다운에서 사용할 JDK 버전을 선택합니다. JDK가 설치되어 있지 않다면, Add SDK를 클릭하여 설치된 JDK 경로를 지정합니다.프로젝트 템플릿 선택: 기본적으로 Create project from template은 선택하지 않고 진행합니다.프로젝트 이름 및 위치 설정: Project name 필드에 프로젝트 이름..