전체 글 83

9/11 과제를 마치고

이번주 과제는 10단계까지 완료했고 11단계에서 막힌 부분이 있어 아쉽게 완료하지 못했다.우선 된대로부터 설명하겠다. 먼저 BaseEnity 클래스를 만들고 LocalDateTime형태의 createAt, updateAt속성을 추가했다.Game Entity에 상속시켜주었다. GameSummaryResponse와 GameDetailResonse클래스에 createAt, updateAt 속성을 추가하고 생성자 파라미터에도 추가해준다. 생성자로 반환시켜주는 메서드에게도 적용했다. 마지막으로 메인 클래스에서 반드시 @EnableJpaAuditing을 추가해야 시간 데이터를 받을 수 있다. 다음으로 deckSize를 추가했다.createAt, updateAt과 비슷하게 두 클래스의 필드와 생성자를 추가했고Ser..

9/10 스프링 기본 구조와 지금까지 달성한 달성 과제

스프링 기본 구조내가 과제하면서 실습했던 내용을 참고하고 강의까지 들으면서 배우게 되었다. Controller : 사용자가 입력한 URL을 받아서 Service에 전달Service : Controller에서 전달받은 내용을 저장되었던 아이디를 찾아서 Repository에 전달Repository : 클래스와 인터페이스가 있는데, 클래스는 직접 구현한 메서드를 Service한테 제공해주고 인터페이스는 메서드만 정의해서 Service한테 직접 구현하라고 하는 역할DTO : Getter와 Setter만 관리 요청과 응답을 그대로 전달 (생성자 없음)Entity : DB 테이블과 1:1로 대응하는 클래스 DB에 저장되었던 테이블의 속성 이름에 따라 Entity의 속성들은 하나의 행을 가져와 인스턴스화(패키지 안..

9/9 서버 게임 실행 완료

오늘 과제에서 완료한 필수 과제는 3~6커밋한 항목들을 보면 다음과 같이 완료하였다. 우선 두코드의 변경사항을 비교하면 전자는 "/game"으로 단수로 지정되어있다. 물론 응답은 정상적이지만 명세적으로 보면"동사보다 명사 단수보다 복수" 그런데 game으로 하면 언급한 game이 하나만 있지 않을 것이다. 그래서 명세는 규칙이다. 다음으로 CardResponse에 생성자를 추가해서 요청한 데이터를 받아서 인스턴스화를 시키는 기능을 추가하면 받은 데이터로 서버가 데이터들을 찾을 수 있다. (생성자나 필드가 없으면 데이터를 불러오지 못한다) 또한가지는 Response의 속성들은 final로 받아서 고유한 데이터 그대로 전달할 수 있다. Bean Validation으로 요청한 값이 없으면 동작을 못할수 있기 ..

9/8 이번주 과제 달성과정

오늘부터 발제가 나와 이번주 안으로 완료해야 한다. 필수과목은 여덟가지 (+도전과제 4개)1. 설정 파일 작성: Docker MySQL 연결제공받은 깃허브 주소를 포크로 받아 git clone시켜 기본적인 시스템 설정 Docker 생성새로운 도커를 만들고 실행한 결과My SQL 설정 실행하기 전 application.properties파일에서 다음과 같이 수정해준다.원본 깃허브 코드변경한 코드cimsoncitadel이라는 DB를 생성했다. 그리고 build.gradle파일로 들어가서 dependency항목 에서원본 속성들추가한 속성My SQL 주석에 3개의 항목을 추가했다.Lv 2. 의존성 주입(DI)클래스 부분에 3 Layers (Controller, Service, Repository) 를 살펴보면C..

9/7 프로젝트 오류시 해결방법 & Spring 입문 ch03

강의를 들은대로 실습을 막 따라하다보니 막히는 부분이 많았다.프로그램을 실행하더니 많은 에러가 나왔다.문제가 도커 설치를 정상적으로 설치되지 않았기 때문이었다.이 문제를 해결하려면 Win + R키를 눌러 optional features를 입력하고이 창이 나오면 '가상 머신 플랫폼'을 체크처리 해야 한다.그 다음에 Powershell이나 cmd로 'wsl --install'을 입력해 wsl을 설치한다.(우선시 권장) 설치가 성공하면 'wsl --update'를 입력하면 Docker설치는 완료된 상태이다. 다음으로 My SQL을 연동하기 위해우측에 MySQL을 추가해 설정창에서 사용자와 비밀번호를 위에 application.properies의 username과 password를 같은 값으로 설정하고 연결테스..

9/4 지금까지 배운 서버와 네트워크를 정리

1. 기본 용어kebab-case문자간 공백을 '-'로 이어준다.모두 소문자로 구성int user-id;PascalCase대문자로 시작해 대문자로 문자를 잇는다.주로 클래스이름을 정의할때 사용한다.메서드에도 사용하지만 JAVA에서는 소문자로 시작class UserData { ... }camelCase소문자로 시작해 대문자로 잇는다.주로 Java, JS, TS등에서 변수, 메서드, 함수 등에 사용한다.let myName;function findName() { ... }snake_casekebab-case와 비슷하지만 - 대신 _로 문자를 잇는다.파이썬, BD Column에 사용된다.소문자나 대문자 둘중 하나만 사용한다.info_line = {"name" : "Jerry", "age": 26 }def FIN..

9/3 스프링에 사용할 다양한 기능들

오늘 인상 깊게 배운 것ch(01-7~15)LombokMVC정적/동적 페이지Jackson 적용과 문제점Path Varilable & Request VariableLombok이란?더보기Lombok은 Java에서 Get, Set, Post등 처럼 많이 쓰는 메서드를 사용할 때 가장 편하게 지원해주며 코드를 절약해준다.Lombok을 사용하려면 플러그인을 추가하면 사용할 수 있는데 간단하게 구조를 살펴보면클래스나 메서드 위에 @Getter나 @Setter를 추가한 다음 프로젝트 창에 .build>classes>java>... 경로에 해당 클래스를 찾아가서클래스가 자동으로 setUsername 또는 getUsername과 같은 자동함수가 생성이 된다.MVC더보기MVC는 Model View Controller의 약..

9/2 자바를 마치고 HTTP의 동작 원리

오늘 한거자바 심화 및 문제실습 (챕터 3~4) 분량도 간단하고 핵심이 될만한 내용이 있다.스프링 입문 코드 테스트http의 동작 확인 1. 자바 실습 심화오늘 배운 거enumenum은 단순하게 C나 C#에서 변수로 저장한 정수 숫자나 열거 데이터의 이름을 그냥 가져오는 건줄 알았는데,Java에서는 클래스로 정의해 생성자, 메서드도 정의할 수 있다.public enum Menu { AMERICANO("아메리카노", 4500), LATTE("라떼", 5000), GREEN_TEA("녹차", 4000); private final String displayName; private final int price; Menu(String displayName, int p..

내가 앞으로 연구하거나 공부할 것

1. SDL2 라이브러리이건 노션으로 이미 정리한 부분이 있다. 단 미완성한 부분도 있다.현재 진행 상황은 이벤트의 조이스틱이나 게임패드 연결과 해제, 게임패드 터치패드이미지 팔레트 애니메이션과 사운드 개념.전것들 다하면 물리를 적용해서 게임으로 응용할 것이다. 우선적인 프로그램 언어 순서C++PythonRustLua2. Python Arcade이건 pyGame으로 사용해 본적이 있지만, pyArcade를 발견해서 이것도 사용할까? 라는 생각으로 한번 라이브러리나 메서드를 찾으면서 연구하고 있다. 현재 그리기중 도형까지 정리했고, 스프라이트만 그리면 그리기 메서드는 정리완성. 다음으로 해볼 것이벤트 입력사운드3. Godot Engine이건 씬으로 오브젝트를 관리하는 가장 간단한 게임 엔진 구조이다. 2D..

헛짓거리 2026.09.01

9/1 Java 기본과 Postman

오늘 한거Java 기본 문법 (기초에서 클래스)Spring연동과 Postman 연동1. Java자바를 배웠는지 3년이나 지난 것 같은데 기억이 새록새록 나오고 배운게 잊은 것들도 있다. 이참에 수강하면서 아주 유용한 요소를 배운 것만 정리하자면자료구조 (List, Map, Set)List : 배열 형태에 Wrapper Class로 유니티에서 사용한 것이랑 비슷한 개념이다.List orders = new ArrayList();orders.add("아메리카노");orders.add("녹차");orders.add("라떼");orders.add("콜드브루");List에 자주 사용하는 내장 메서드는orders.add("스무디")마지막 요소 뒤에 추가orders.get(0)0번째 값을 반환orders.size()현..