본문 바로가기
728x90

전체 글143

[DB] dummy data 생성과 index를 이용한 성능 개선 공부하기 들어가면서.. 오늘은 mysql DBMS에서 dummy data를 이용해서 몇 가지 공부하고, 기록해보려고 합니다. DataBase Index 개념 정리하기 Index에 대해서 공부해 보자😀 오늘은 index란 것에 대해서 정리해 볼까 합니다. 아무래도 DB를 구축하고 운용하는 것에 그치지 않고, 성능을 개선하기 위해 index라는 자료 구조가 꼭 필수적이기 때 kkkdh.tistory.com 지난번에 index 개념에 대한 부분만 학부 수업에서 들었던 내용 + 여러 가지 자료들을 참고해서 정리했었는데, 이번에는 sql문을 뚜드리면서 좀 더 공부하는게 목표입니다. 글을 시작할때의 목표는 일단 primary key를 제외한 다른 index를 만들어 성능 개선이 얼마나 되는지 확인하고, 또 index를 어떻.. 2023. 3. 6.
[Spring MVC] HttpServletRequest, HttpServletResponse HttpServletRequest의 역할 HTTP request message를 개발자가 직접 parsing 해서 사용해도 되지만, 매우 불편한 과정일 것이다. 이러한 일련의 과정을 서블릿이 대신 맡아 HTTP request message를 편리하게 사용할 수 있도록 새로운 객체를 만들어 parsing 한 정보를 관리하는데, 이 객체가 바로 HttpServletRequest이다. START LINE HTTP method URL query string schema, protocol Header 헤더 조회 Body form 형식의 데이터 조회 json과 같이 message body를 통한 데이터 직접 조회 위의 정보들을 편리하게 조회할 수 있도록 도울 뿐만 아니라 여러가지 부가 기능도 함께 제공한다. 임시 .. 2023. 3. 6.
JWT를 이용한 인증, 인가 구현 과정 기록 지난 글에서는 jwt를 생성하는 JwtProvider 구현까지 진행했었는데, 이번에는 비밀번호 암호화 + jwt 생성 구현물을 이용해서 SpringSecurity를 이용한 특정 자원에 대한 인증과 인가 조건을 구현해보려 합니다. 사이드 프로젝트 JWT 적용 과정 기록 오늘은 주말을 맞아 jwt를 공부할겸, 여러 기술 블로그와 강의를 참고해서 jwt를 공부하고 사이드 프로젝트에 적용해 봤고, 이 내용을 간단하게 기록해보려 합니다. JWT에 대해 잘 정리된 글들과 kkkdh.tistory.com 토큰 기반 인증 구현 Spring Security를 처음 공부해서 그런지 우선 WebSecurityConfigurer를 상속 받는 설정 파일부터 이해하기가 힘들었습니다. 일단 이것부터 제대로 공부해보니까 WebSec.. 2023. 3. 2.
Servlet에 대한 개념 정리 Servlet (서블릿) 이란? 서블릿은 웹 서버에서 가동되는 자바 기반 프로그램이며, HTTP 기반 통신에서 client와 server 사이의 request와 response를 다루기 위해 설계되었습니다. 서블릿은 client의 request에 기반한 동적인 HTML 페이지나, json, xml 형태의 데이터들을 만들기 위해 사용되며, 이 뿐만 아니라 cookie, session 등을 다뤄 stateless한 HTTP 통신에서 상태 정보를 다룰 수 있도록 돕습니다. 위 그림을 보면, HTTP 통신에 따라 client - server간에 request를 보내고 response를 받아오는 과정에서 진행해야할 작업이 굉장히 많음을 파악할 수 있습니다. 여기서 핵심적인 비즈니스 로직 구현을 제외한 다른 부분을.. 2023. 3. 1.
Spring Security를 이용한 비밀번호 암호화 로직 구현 과정 기록 오늘은 회원 관리 시스템에서 평문(plain text)으로 암호를 저장하는 것은 보안상 굉장히 위험하기 때문에, 이를 Spring Security를 이용해 암호화(Encryption)하는 과정을 진행하고, 기록하려 합니다. Spring Security 의존성 추가 양방향과 단방향 암호화란 뭘까? 제가 적용할 암호화는 두 가지 중에서 단방향 암호화입니다. 그전에 양방향과 단방향 암호화가 각각 무엇을 의미하는지 찾아봤습니다. 양방향 암호화: 암호화된 암호문을 복호화할 수 있는 암호화 단방향 암호화: 암호화된 암호문을 복호화 불가능한 암호화 양방향 암호화는 또 대칭키를 사용하는 방식과 비대칭키를 사용하는 방식으로 나뉜다고 하는데, 이번에 필요한 개념은 아니기 때문에, 여기까지만 정리하고 넘어가겠습니다. 단방향.. 2023. 2. 28.
사이드 프로젝트 JWT 적용 과정 기록 오늘은 주말을 맞아 jwt를 공부할겸, 여러 기술 블로그와 강의를 참고해서 jwt를 공부하고 사이드 프로젝트에 적용해 봤고, 이 내용을 간단하게 기록해보려 합니다. JWT에 대해 잘 정리된 글들과 실습 예시들이 많기 때문에, 그러한 글들을 참고해서 적용한 과정을 이해한 방식과 함께 정리해 보겠습니다. JWT란? JWT는 JSON Web Token의 약자로 클라이언트와 서버 또는 서비스와 서비스 사이의 통신에서 인증 (Authentication) 및 권한 인가(Authorization)을 위해 사용하는 토큰을 의미합니다. JWT는 다음의 세 가지 부분으로 구성됩니다. header: token 서명에 사용되는 알고리즘에 대한 정보가 포함됩니다. payload: 사용자 정보 또는 권한 부여 요청과 같은 전송해.. 2023. 2. 26.
728x90