7장 - 데이터 수정
데이터 수정 절차
-
수정 페이지 생성 및 기존 데이터 불러오기
- 사용자가 수정 요청을 하면 해당 데이터를 수정할 수 있는 페이지를 생성하고, 기존 데이터를 미리 불러와서 화면에 표시함
-
데이터 수정 후 저장 및 상세 페이지로 리다이렉트
- 수정된 데이터를 DB에 반영하고, 수정 결과를 확인할 수 있도록 상세 페이지로 리다이렉트
클라이언트와 서버 간 처리 흐름
- MVC : 서버 역할을 분담해 처리하는 기술
- JPA: 서버와 DB 간 소통에 관여하는 기술
- SQL: DB 데이터를 관리하는 언어
- HTTP: 데이터를 주고받기 위한 통신 규약
HTTP 메서드
- 프로토콜 : 컴퓨터 간에 원활하게 통신하기 위해 사용하는 전세계 표준
GET
: 데이터 조회 요청
POST
: 데이터 생성 요청
PATCH
또는 PUT
: 데이터 수정 요청
DELETE
: 데이터 삭제 요청
UPDATE 문
UPDATE 테이블명
SET 속성명 = 변경할_값
WHERE 조건;









8장 - 데이터 삭제
데이터 삭제 절차
- 클라이언트가 특정 데이터를 삭제하겠다고 요청
- 서버가 DB에서 해당 데이터를 찾아 삭제
- 삭제 후 클라이언트를 특정 페이지로 리다이렉트
RedirectAttributes
- 리다이렉트 시 일회성 데이터를 전달할 수 있도록 도와주는 객체
articleRepository.delete()
- DB에 접근하여 데이터를 삭제할 때 사용하는 JPA 메서드
DELETE 문
- 테이블에 저장된 데이터를 삭제하는 SQL 문
- WHERE 절을 생략하면 모든 데이터를 삭제 (주의 필요)
기능 | HTTP 메서드 | URL 패턴 | 설명 |
---|
Create (작성) | POST | /articles | 새 게시글 저장 |
Read (조회 - 목록) | GET | /articles | 게시글 전체 목록 조회 |
Read (조회 - 단건) | GET | /articles/{id} | 특정 게시글 조회 |
Update (수정 - 폼) | GET | /articles/{id}/edit | 수정할 게시글 불러오기 (폼) |
Update (수정 - 처리) | POST | /articles/update | 게시글 수정 내용 저장 |
Delete (삭제) | GET | /articles/{id}/delete | 특정 게시글 삭제 요청 |
DELETE [FROM] 테이블명
WHERE 조건;








9장 - JPA와 SQL 쿼리
JPA 로깅 설정
- 애플리케이션 동작 시 SQL 쿼리 로그를 확인하기 위한 설정
application.properties
파일에 로깅 관련 설정 작성
로깅 7단계
- TRACE(레벨1) :DEBUG 레벨보다 더 상세한 정보
- DEBUG(레벨2) : 응용 프로그램을 디버깅하는데 필요한 세부 정보
- INFO(레벨3) : 응용 프로그램의 순조로운 진행 정보
- WARN(레벨4) : 잠재적으로 유해한 상황 정보
- ERROR(레벨5) : 응용 프로그램이 수행할수 있는 정도의 오류 정보
- FATAL(레벨6): 응용 프로그램이 중단될 만한 심각한 오류 정보
- OFF(레벨7): 로깅 기능 해제
기본키 (Primary Key)
- 테이블에서 각 행을 유일하게 식별할 수 있는 속성
- 일반적으로
id
를 기본키로 사용
@GeneratedValue(strategy = GenerationType.IDENTITY)
로 자동 증가 설정 가능
CRUD와 SQL 쿼리 관계




주요 SQL 쿼리
CREATE TABLE 문
CREATE TABLE 테이블명 (
속성명1 자료형,
속성명2 자료형,
속성명3 자료형,
PRIMARY KEY (기본키)
);

INSERT 문
INSERT INTO 테이블명 (속성명1, 속성명2, 속성명3)
VALUES (값1, 값2, 값3);
SELECT 문
- 데이터 조회 시 사용
- WHERE 절이 없으면 모든 데이터를 조회
SELECT 속성명1, 속성명2
FROM 테이블명
WHERE 조건;

UPDATE 문
- 데이터 수정 시 사용
- WHERE 절이 없으면 모든 행이 수정됨
UPDATE 테이블명
SET 속성명 = 변경할_값
WHERE 조건;


DELETE 문
- 데이터 삭제 시 사용
- WHERE 절이 없으면 테이블의 모든 데이터 삭제됨
DELETE [FROM] 테이블명
WHERE 조건;
10장 - REST API
REST API란?
- 클라이언트가 서버 자원을 기기에 구애받지 않고 사용할 수 있도록 설계된 방식
- 클라이언트가 요청을 보내면 서버는 JSON 데이터를 응답으로 반환
- JSON은 다양한 플랫폼에서 활용 가능
JSON 데이터
- 자바스크립트 객체 표현식을 차용
- 키와 값의 쌍으로 구성된 구조
{
"key1": 값,
"key2": 값,
"key3": 값
}
실습 도구
- Talend API Tester: REST API 동작을 실습하기 위해 크롬 확장 프로그램 사용
HTTP 응답 코드
1XX
: 요청 수신, 처리 중
2XX
: 요청 성공 (예: 200 OK)
3XX
: 리다이렉션, 추가 동작 필요
4XX
: 클라이언트 오류 (예: 404 Not Found)
5XX
: 서버 오류 (예: 500 Internal Server Error)
HTTP 메시지 구조
- 시작 라인: 요청/응답의 첫 줄
- 헤더: 전송 관련 부가 정보
- 빈 줄: 헤더 종료 표시
- 본문: 실제 데이터 (예: JSON)





