분류 전체보기 105

마크다운 형식 정리

회원 API 명세서기능메소드URLRequestResponse상태코드회원가입POST/members/signup{ "username": "user1", "password": "1234", "email": "user1@example.com" }{ "id": 1, "username": "user1" }201 Created회원 조회GET/members/{id}id: Long (Path Variable){ "id": 1, "username": "user1", "email": "user1@example.com" }200 OK비밀번호 변경PATCH/members/{id}{ "oldPassword": "1234", "newPassword": "5678" }{ "newPassword": "5678" }200 OK / 40..

정리 2025.04.03

정리

Cookie웹 브라우저에 저장되는 데이터서버가 클라이언트의 상태를 기억하도록 도와준다.로그인 상태 유지 등에 활용된다.보안에 취약하다.민감한 정보를 저장하지 않아야한다.사용자 임의 수정이 가능하다.Session서버에서 중요한 정보를 보관하며 로그인을 유지하는 방법SessionId를 탈취하여도 민감한 정보가 없다.만료 시간을 설정해서 탈취 문제를 최소화한다.HttpSession은 최근 Session을 요청한 시간을 기준으로 만료 시간을 유지한다.Token인증/인가 과정에서 사용되며 사용자 또는 시스템의 신원과 권한을 증명하고 요청의 유효성을 검증하는 데 사용되는 디지털 문자열Session과는 다르게 Client가 데이터(Token)를 저장하고 있다.Stateless를 기반으로 하여 확장성이 뛰어나다.Mob..

정리 2025.03.27

SOLID 원칙

SOLID 원칙의 종류단일 책임 원칙 SRP(Single Responsibility Principle)하나의 클래스는 하나의 책임만 가져야 한다.클래스는 한 가지 기능에 집중해야 하며, 그 외의 기능을 담당하지 않아야 한다예시User 클래스는 사용자 정보 관리, 로그인 및 데이터베이스 저장 책임을 동시에 가지고 있다.public class User { private String name; // 사용자 정보 public void login() { /* 로그인 기능 */ } public void saveUser() { /* 데이터베이스 저장 기능 */ }}단일 책임 원칙 적용실제로는 상황에 따라 책임의 크기가 달라진다.클래스가 변경될 때 파급 효과가 작으면 된다.public class User ..

스프링 2025.03.26

트러블 슈팅

문제 발생Spring을 사용하여 API를 개발하는 중, 클라이언트에서 JSON 형식의 데이터를 보내는 PATCH 요청을 처리할 때 @RequestParam을 사용하여 파라미터를 처리하려 했고, 요청 본문에서 JSON 데이터를 제대로 매핑하지 못하는 오류가 발생했습니다. 또한, @GetMapping과 @PatchMapping을 헷갈려서 잘못된 HTTP 메서드로 요청을 처리하려 했던 점도 문제였습니다.문제 분석@RequestParam은 쿼리 파라미터나 폼 데이터에서 값을 추출하는 데 사용되며, JSON 데이터를 처리하려면 @RequestBody를 사용해야 합니다.@GetMapping과 @PatchMapping을 헷갈린 점도 문제였습니다. PATCH 요청을 처리하려면 @PatchMapping을 사용해야 합니다..

스프링 2025.03.25