2026/06 19

[TIL] - 데이터베이스 생성부터 CRUD 실습까지

학습 목표 오늘은 데이터베이스와 테이블을 직접 만들어보고, INSERT, SELECT, UPDATE 쿼리를 차례로 실행해보면서 SQL의 기본 흐름을 몸으로 익히는 게 목표였다. CREATE부터 시작해서 데이터를 넣고, 조회하고, 수정하고, 다시 조회하는 한 바퀴를 끝까지 따라가 보는 실습이었다!단순히 코드 스니펫에서 복사 붙여넣기만 반복한 너무나도 단순한 실습 내용이었지만 본질은 그게 아닐듯 개념 구조 흐름을 순서대로 정리하면 이렇다. 1. 데이터베이스 생성 (CREATE DATABASE)2. 테이블 생성을 위해 새 콘솔 창 열기3. 테이블 안에서 데이터 삽입 (INSERT)4. 삽입한 데이터 조회 (SELECT)5. 데이터 수정 (UPDATE)6. WHERE 절로 조건부 조회7. 데이터 삭제8. 삭제..

Camp/Spring 2026.06.30

1-12 Servlet 개념 간단 실습

학습 목표Servlet과 Servlet Container의 개념과 역할 이해서블릿을 이용한 간단한 API(/hello) 구현Postman으로 직접 API를 호출해서 응답 확인개념 구조정적 웹페이지의 한계 ↓서블릿(Servlet) 등장 — "요청이 오면 서버에서 프로그램을 실행해서 동적으로 응답 생성" ↓서블릿 컨테이너(Tomcat) — 서블릿을 실행/관리하는 환경 ↓클라이언트 ↔ 서버 요청/응답 흐름 (Request, Response 객체) ↓API 구현 실습 (HelloServlet) → Postman으로 호출 테스트내용 정리1. 정적 웹페이지의 한계초기 웹사이트는 그냥 HTML 파일을 저장해두고, 요청이 오면 그 파일을 돌려주는 방식이었다.그래서 모든..

Camp/Spring 2026.06.29

[TIL] 입문 Spring - 객체/인터페이스부터 라이브러리·프레임워크까지

드디어 시작된 Spring 주차 아직 java도 제대로 익히지 못한 것 같은데 벌써 새로운 분야로 확장했다니.. 일단은 기본 개념 익히기를 위한 강의 들었다. 그래서 오늘 TIL은 강의에서 정리한 개념들로만 채운다. 객체와 생성자 클래스 코드만 짜놓고 끝내는 게 아니라, 그걸로 실제 객체(Object)를 만들어야 한다는 게 핵심. — 클래스는 빵틀, 객체는 그 틀로 찍어낸 빵. public class Bread { String name; // 빵의 이름 int calorie; // 빵의 칼로리} 클래스만 정의하면 아직 "틀"만 있는 상태다. 빵을 실제로 만들려면 생성자가 필요하다. 생성자는 `String name`, `int calorie` 같은 파라미터로만 객체를 만들 수 있게 강제하는 역할을 한다..

Camp/Spring 2026.06.25

[TIL] : 배열(Array) & 메서드(Method) & 계산기 과제에서의 트러블 슈팅

Spring 주차로 넘어오면서 본격적인 학습을 시작하기 전에 전에 들었던 자바 문법에 대해서 복습하는 시간을 갖고 학습을 시작해보기로 했다. 배열이 뭔지, 인덱스로 요소에 접근하는 법 익히기향상된 for문이랑 일반 for문 차이 구분하기2차원 배열 개념 잡기메서드의 호출부 / 선언부 구분하기void랑 return 차이, 그리고 static 메서드 vs 인스턴스 메서드 호출 차이 정리하기개념 구조배열같은 종류의 데이터를 한 묶음으로 관리하는 자료구조. int[] arr = new int[5]; 이런 식으로 선언하고, 길이는 한 번 정하면 못 바꾼다(정적배열).인덱스는 0부터 시작. arr[5] 같은 식으로 범위 밖에 접근하면 ArrayIndexOutOfBoundsException 터진다.일반 for문은 인..

[계산기 과제 2차] 트러블슈팅

1차 과제때는 사실 내용도 제대로 이해하지 못한 채로 그저 ai가 하라는대로, 시키는대로 이해하거나 응용하려는 의지없이 딸깍딸깍 키보드, 마우스질만 해서 급하게 냈었다. 그 과정을 겪으면서 이렇게 의미없이 구색만 맞춰서 과제를 내는게 무슨 의미가 있을까 싶었다. 다시 처음부터 해설 강의를 들으면서 처음부터 끝까지 내 손으로 직접 코드를 쓰면서 생각하면서 학습을 시작했다.꽤나 오랜 시간을 부여받았었다고 생각했는데 그럼에도 시간이 많이 걸렸는데, 대부분 코드는 그럴듯해 보이는데 실제로 돌려보면 이상하게 동작하는 케이스였다. 까먹기 전에 정리해둔다.1. while (조건) ; — 세미콜론 하나가 멈춤을 만들었다exit 입력 전까지 반복하게 만들려고 이렇게 썼다. while (!exit.equals("exit"..

Camp/과제 2026.06.23

[Java] 계산기 과제 Lv.2 트러블 슈팅- 클래스 분리가 왜 이렇게 헷갈렸나

오늘 제일 힘들었던 건 코드 자체보다 "지금 내가 어느 클래스에 있고, 이 값이 어디서 와서 어디로 가는지"를 놓치는 부분이었다. App1과 Calculator3_1을 왔다갔다 하다 보면 머릿속에서 흐름이 끊긴다. App1 (입력/출력) Calculator3_1 (계산/저장)num1, num2, op ──────────▶ calculate(num1, num2, op) │ switch로 연산 → result │ results.add(result)resu..

Camp/과제 2026.06.19

[Java] 코드카타 트러블 슈팅

짝수 합, 배열 평균값 풀이학습 목표for문 기본 문법(초기값/조건/증가값)을 정확하게 쓰기for-each 문법과 일반 for문의 차이 구분하기정수 나눗셈에서 소수점이 버려지는 문제와 캐스팅으로 해결하는 법 익히기개념 구조키워드한 줄 정리for문 3요소초기값; 조건; 증가값 — 셋 다 세미콜론으로 구분for-each인덱스 없이 배열/리스트 값을 순서대로 꺼내 쓰는 반복문정수 나눗셈int / int는 결과도 int — 소수점 버림(double) 캐스팅연산 전에 피연산자를 실수로 바꿔서 소수점을 살림+= 누적a += b는 a = a + b와 동일, 반복마다 누적내용 정리1. n 이하 짝수 합 구하기처음 시도한 코드는 문법 자체가 틀려 있었다. javan % 2 == 0 -> en; // J..

Camp/과제 2026.06.17

Camp/과제[TIL] CH2 Java 계산기 과제 Lv.2 (트러블 슈팅)

TrouBle 1. Calculator 클래스를 분리하라는데, 어디서부터 어떻게 해야 하는지 몰랐다.Lv.1에서는 main 메서드 하나 안에 입력, 계산, 출력이 전부 들어가 있었다. Lv.2에서 Calculator를 따로 만들라는 요구사항을 보고 머리론 알겠는데도 감이 안 잡혔다. 어떤 코드를 어디로 옮겨야 하는 건지, 두 파일이 어떻게 연결되는 건지가 강의를 그렇게도 많이 봤건만 막상 시작하려니 막막했다. // Lv.1 방식: main이 모든 걸 다 함public static void main(String[] args) { // 입력 받고, 계산하고, 출력까지 전부 여기서 if (operator == '+') result = num1 + num2; System.out.println("..

Camp/과제 2026.06.16

[TIL] CH2 Java 계산기 과제 again (트러블 슈팅)

해설 영상을 보면서 n 회 반복하면서 직접 내손으로 모든 주석을 달고 외우다시피 해서 다시 처음부터 내 손으로 구현하기가 목표였는데 보고 잠깐 지나면 날아가고 기억안나고 뭐가 시작이었는지 뭐부터 적어야하는지 머리가 새하얘진다.. Java 계산기 Lv.1 학습 목표hile문, switch문, Scanner 입출력을 조합해서 반복 계산이 가능한 계산기를 만든다. 코드 한 줄씩 따라가면서 각 문법이 왜 필요한지 이해하는 게 목표였다.개념 구조이번 계산기의 전체 흐름은 이렇다.Scanner로 입력받기→ while 루프로 반복 → num1, num2, operator 입력 → switch로 연산 분기 → 결과 출력 → "exit" 입력하면 종료if는 어느 정도 감이 왔는데, while은 생소했다. whil..

Camp/과제 2026.06.15