⏳ Time Log/1. One Day (Daily · TIL)

Day 22 (11/18) - 팀 프로젝트의 시작: 리액트 기초와 JSP/MySQL 심화 정리

this.Serena 2026. 2. 19. 00:09

📝 오늘의 강의 요약

핵심 키워드: 팀 프로젝트 시작, MySQL 삭제 명령, 리액트 콜백 & 람다, JSP 리다이렉트, JSTL 활용

  • 팀 프로젝트: 11/26(수)까지 진행되는 팀 프로젝트 일정 돌입
  • MySQL: 데이터베이스 및 사용자 계정 삭제 명령어를 통한 환경 정리
  • React: 자바스크립트의 핵심인 콜백 함수와 화살표 함수(람다식) 개념 재정립
  • JSP/JSTL: sendRedirect를 이용한 페이지 이동 및 JSTL 코어 라이브러리 연동 실습

🐬 MySQL 데이터베이스 관리

1. 삭제 및 정리 명령어

  • 데이터베이스 삭제: drop database [DB명] (존재하는 모든 테이블과 데이터 영구 삭제)
  • 사용자 계정 삭제: drop user '계정명'@'호스트' (특정 접속 환경의 유저 권한 제거)

⚛️ 리액트(React) 자바스크립트 기초

1. 콜백 함수(Callback Function)

  • 정의: 다른 함수의 인자로 전달되어 특정 시점에 실행되는 함수
  • 특징: 코드의 범용성을 높이고 비동기 처리 및 로직의 분리 가능

2. 화살표 함수 (Arrow Function / 람다식)

  • 기존 방식: function 키워드를 사용하여 함수 정의
  • 람다 방식: => 연산자를 사용하여 코드를 간결하게 축약
  • 비교 예시:
    • 일반: repeat(5, origin)
    • 람다: repeat(5, (count) => console.log(count))

☕ JSP & JSTL 웹 프로그래밍

1. 페이지 리다이렉트 (Redirect)

  • 명령어: response.sendRedirect("URL")
  • 동작: 서버가 브라우저에게 새로운 URL로 다시 요청하도록 지시
  • 특징: 주소창의 URL이 변경되며, 이전 request 객체의 데이터는 유지되지 않음

2. JSTL(JSP Standard Tag Library) 설정

  • 선언: <%@ taglib uri="..." prefix="c" %> (Core 라이브러리 사용 선언)
  • 반복문 (<c:forEach>):
    • ${productList} 데이터를 product 변수로 하나씩 꺼내어 처리
    • Java의 향상된 for문과 유사한 논리로 화면에 리스트 출력

🗂️ HTML/CSS 레이아웃 트러블슈팅

📌 요소가 두 줄로 떨어지는 이유 분석

  • 원인 1: <br> 태그 등 강제 줄바꿈 요소의 삽입
  • 원인 2: 부모 요소인 <td>나 자식 요소에 display: block 속성이 부여된 경우 (블록 요소는 한 줄 전체 차지)
  • 원인 3: 하나의 행(<tr>)이 아닌 서로 다른 행에 데이터가 배치된 경우

🛠️ 실습 메모 및 복기

  • HttpServletResponse: 웹 브라우저로 데이터를 전송하거나 제어 명령을 내리는 내장 객체
  • 프로젝트 일정: 11/26까지 마감인 팀 프로젝트 기간 내 독창성과 범용성을 고려한 개발 진행 필요
  • 코드 스타일: 가독성을 위해 중괄호({}) 생략 가능 여부 확인 및 람다식 적극 활용 권장