본문 바로가기

분류 전체보기144

(도전) 1일 1쿼리 입사년도가 1986년인 남자 직원들의 이름을 출력하자 2023. 9. 25.
BankApp - 암호화 처리 학습 목표 1. security 에서 제공하는 암호화 클래스 사용 2. 회원 가입 시 회원 비밀번호 암호화 처리 의존성 추가 // 암호화 implementation 'org.springframework.security:spring-security-crypto' 해시 함수란 ? 해시 함수(Hash Function)는 임의의 길이를 가진 데이터를 고정된 길이의 데이터로 매핑하는 함수입니다. 이러한 과정을 해싱이라 하며, 해시 함수의 결과값을 해시 값, 해시 코드, 해시 체크섬 또는 간단히 해시라고 부릅니다. MD5, SHA-1, SHA-256 등은 대표적인 해시 함수입니다. 각각은 다양한 용도로 사용되며, 보안 수준에 따라 적절한 해시 함수를 선택할 수 있습니다. 스키마 변경 해야 함 alter table .. 2023. 9. 22.
BankApp - 마이그레이션 학습 목표 1.migration 이란? 2.yml 파일 수정하기 마이그레이션이란 데이터베이스 스키마의 변경 내역을 버전 관리하여, 변경에 대한 이력을 남기고, 데이터베이스를 이전 버전에서 최신 버전으로 옮기는 일련에 과정들을 의미합니다. 즉, 일반적으로 마이그레이션은 스키마를 변경하거나 새로운 테이블이나 컬럼을 추가하는 등에 작업을 포함하고 따라서 우리가 할 작업 H2 데이터베이스에서 MySQL 로 변경할 때도 마이그레이션을 수행 한다고 할 수 있습니다. 이러한 이경우에 테이터 스키마를 변경하거나 데이터를 이전하는 작업등이 포함 될 수 있습니다. 의존성 추가 // 커넥트 J runtimeOnly 'com.mysql:mysql-connector-j' yml 설정 변경 2023. 9. 22.
BankApp - intercepter 활용 학습 목표 1. AuthIntercepter 구현 클래스 만들기 2. WebMvcConfig 구현 클래스 만들기 3. 코드 수정 - 인증 처리 일괄 적용 하기 (AccountController 수정) HandlerInterceptor 는 spring boot MVC 에서 제공하는 인터셉터로 AOP 개념과는 다르게 서블릿 필터처럼 동작 합니다. 즉, 클라언트의 요청이 컨트롤러에 도달하기 전에 인터셉터 요청/응답을 가로채어 필요한 로직을 수행할 수 있습니다. 반면, AOP(Aspect-Orented Programming)은 관점 지향 프로그래밍으로 횡단 관심사를 핵심 관심사(core concerns) 분리하여 구현하는 기법입니다. 따라서 HandlerInterceptor 는 AOP 와는 개념적으로 다르지만 .. 2023. 9. 22.