Spring 11

TIL 241118

Servlet Filter 보안, 로깅, 인코딩, 인증/인가 등 다양한 작업을 처리하기 위해 사용  Filter Chain여러 개의 필터가 순차적으로 적용될 수 있다. filterChain.doFilter(request, response); 다음 필터로 제어를 전달  doFilter()실제 필터링 작업을 수행하는 주요 메소드. 필터가 처리할 작업을 정의.  Filter Interface를 Implements 하여 구현구현한 Filter를 Bean으로 등록HTTP 요청이 오면 doFilter() 메서드가 호출 ServletRequest는 기능이 별로 없어서 HttpServletRequest로 다운 캐스팅 해야한다.chain.doFilter(request, response)Filter를 등록하는 방법은 여러..

TIL 2024.11.18

TIL 241112

숙련 Spring 1주차    객체 지향 설계  SOLID 원칙 단일 책임 원칙 SRP(Single Responsibility Principle) 하나의 클래스는 하나의 책임만 가져야 한다.public class User { private String name; // 사용자 정보 public void login() { /* 로그인 기능 */ } public void saveUser() { /* 데이터베이스 저장 기능 */ }} ▼ 단일 책임 원칙 적용public class User { /* 사용자 정보 관리 */ }public class AuthService { public void login(User user) { /* 로그인 기능 */ }}public class UserReposit..

TIL 2024.11.12

TIL 241111

MySQL  제약조건(Constraint) 데이터의 무결성을 지키기 위해 데이터를 입력받을 때 실행되는 검사 규칙  데이터 무결성 데이터의 정확성, 일관성, 완전성을 유지하는 것  AUTO_INCREMENT 고유번호 자동생성  NOT NULL 해당 필드는 NULL 값을 저장할 수 없음  UNIQUE해당 필드는 서로 다른 값을 가져야 한다.  PRIMARY KEY(기본 키)테이블에서 각 행을 고유하게 식별하는 하나 이상의 열에 설정되는 제약조건NOT NULL과 UNIQUE 제약 조건의 특징을 모두 가짐 INDEX로 설정되어 테이블의 데이터를 쉽고 빠르게 찾도록 도와주는 역할  FOREIGN KEY(외래 키)한 테이블의 열이 다른 테이블의 PRIMARY KEY(또는 UNIQUE 제약 조건이 적용된 열)를 참..

TIL 2024.11.11

TIL 241105

Spring 기초 6주차    Layered Architecture 애플리케이션을 세 가지 주요 계층으로 나누어 구조화 하는 방법코드의 재사용성, 유지보수성, 확장성을 높여준다.  구조  Presentation Layer 사용자의 요청을 받고 응답하는 역할 수행화면을 응답하거나 데이터를 응답하는 API를 정의  Business Layer(Service Layer) 비지니스 로직 수행요청을 해석하여 Repository Layer에 전달일반적으로 하나의 비지니스 로직은 하나의 트랜잭션으로 동작한다.  Data Access Layer(Repository Layer) 데이터베이스와 연동되어 실제 데이터를 관리    Layered Architecture 적용  Controller클라이언트의 요청을 받는 역할요청에..

TIL 2024.11.05

TIL 241104

스프링 5주차 실습..    보통 식별자는 안전하게 다루기 위해서 Long 타입을 많이 사용한다. DTO 요청 데이터를 처리하는 객체는 일반적으로 RequestDto로 명명 응답 데이터를 처리하는 객체는 일반적으로 RequestDto로 명명 메모 클래스를 생성하기 위해서 클라이언트로부터 받아야 할 데이터 title과 contents id는 서버에서 관리 MemoRequestDto 요청 받을 데이터 입력 예) private String title; private String contents; // = 요청받을 데이터는 타이틀과 컨텐츠 입니다 MemoResponseDto 메모 객체 생성되고 나서 저장될 때는 실제로 식별자가 존재할 거라 id, title, memo 모두 필요 MemoController 데이터..

TIL 2024.11.04

TIL 241101

오늘 한 것 Spring 기초 강의 4주차알고리즘  0){ answer[i++] = (int) (n % 10); n /= 10; } return answer; }} 처음에는 (int) n % 10 으로 " data-og-host="muerha.tistory.com" data-og-source-url="https://muerha.tistory.com/44" data-og-url="https://muerha.tistory.com/44" data-og-image="https://blog.kakaocdn.net/dna/rYsK8/hyXs5hpW3G/AAAAAAAAAAAAAAAAAAAAAGuwEu6AVr7GvcjNRE4ePSykIfYB9GhFYsrKCjuF5rhL/img.png?credential=yqXZFxpELC7KVnFOS48ylbz2pIh7yKj8&expires=1769871599&allow_ip=&allow_referer=&signature=6Jbb0MLohkA1WXQtPgEvVTJBqSA%3D

TIL 2024.11.01

TIL 241031

오늘 한 것 Spring 기초 강의 2주차, 3주차알고리즘  [프로그래머스] x만큼 간격이 있는 n개의 숫자(Java)나의 풀이class Solution { public long[] solution(int x, int n) { long[] answer = new long[n]; for(int i = 1; i  배열을 n길이로 초기화 한 후에 1부터 n까지 반복하게 하고long 타입으로 변환한 값을 배열의 i - 1 번째 위muerha.tistory.com  Lv.0 설계 확인 제출물API 명세서 작성ERD 작성SQL 작성

TIL 2024.10.31

TIL 241030

Spring 입문 1주차    HTTP (HyperText Transfer Protocol) TEXT, IMAGE, FILE, HTML, JSON 등 다양한 형태의 데이터가 HTTP를 통해 전송HTTP에도 버전이 존재하는데, 그중 대부분 HTTP/1.1 (TCP)을 사용한다.  특징클라이언트와 서버는 각각 독립적이다. 무상태 (Stateless)각 요청 사이에 서버는 클라이언트의 상태를 저장하지 않는다.그럼 로그인은? Cookie, Session, Token 등을 활용 비연결 (Connectionless)클라이언트가 서버에 요청을 보내면 서버는 요청을 처리하고 응답을 보낸 뒤 연결을 즉시 종료한다.웹 사이트의 HTML, CSS, JS, 이미지 등의 정적 자원 모두를 다시 다운로드 하는 단점 → 캐시, 브..

TIL 2024.10.30