Spring

스프링 프레임워크에 관한 내용을 기록합니다.
·Spring/Spring Boot
이번에는 스프링 부트에서 이미지를 저장하는 방법을 알아보고자 한다.사실 해당 내용을 공부하기 전 내가 궁금했던 부분은 아래 두가지였다.Q1. html form에서 저장된 이미지는, 어떠한 형태로 스프링 부트에게 전달되는가Q2. 전달받은 이미지는 DB에 어떻게 저장되는가해당 내용만 먼저 간단하게 살펴보자면A1.스프링 부트에서는 MultipartFile 클래스를 제공해주고, form 형식으로 파일이 날아오면, 자동으로 MultipartFile 형태로 전환해준다.추후 MultipartFile.transferTo() 메소드를 이용하여 자바의 File 타입으로 간단하게 전환할 수 있다.A2.보통 DB에 이미지 파일을 저장하는 방법은 아래 두가지가 있다.이미지 데이터 자체를 DB에 저장(이진값 형태로)이미지는 로컬..
이번에는 스프링 시큐리티를 통해 세션 관련 설정하는 방법을 알아보고자 한다.스프링 시큐리티를 통해 간편하게 설정할 수 있다.하나씩 살펴보자.✨ 세션 만료시간 설정하기application.properties# 세션 만료 시간 설정# 초 단위 설정: 단위X ex) timeout=1800 1800초# 분 단위 설정: m ex) timeout=90m 90분sever.servlet.session.timeout=90m application.properties 파일에 위와 같은 코드를 작성함으로써 세션 만료 시간을 설정할 수 있다. 🎈 세션 만료 시간사용자가 로그인시 발급받은 세션에 대한 지속 시간사용자의 마지막 동작부터 만료 시간이 카운팅 됨 ✨ 동시 세션 최대 갯수 설정하기Security..
이번에는 스프링 시큐리티의 로그인 로직에 대해서 살펴보고자 한다.사실 해당 부분 과정이 나에게는 어렵게 느껴져서, 아직도 긴가민가 하다,,,우선 내가 이해해본대로 설명해보겠다.01. 전체 구조위의 이미지는 스프링 시큐리티의 로그인 로직을 보여준다. 하나씩 과정을 살펴보자.1. 클라이언트의 요그인 요청이 날아오면 AuthenticationFilter(UsernamePasswordAuthenticationFilter) 가 요청을 가로챈다.2. AuthenticationFilter가 UsernamePasswordAuthenticationToken 객체를 생성한다.이때 사용된 토큰은 사용자가 입력한 로그인 정보를 담고있으며, 해당 객체는 로그인 검증에 사용된다.3. 생성한 토큰 객체를 Authentication..
이번에는 Spring Security를 활용한 회원가입 로직을 살펴보고자 한다.사실 회원가입 로직에서는 Security Filter가 관여하는 부분이 없기 때문에 기존 Spring boot의 로그인 로직과 유사하다.빠르게 살펴보자01. 전체 로직사실 로직 자체는 보편적인 회원가입 로직과 동일하다.과정은 아래와 같다.클라이언트가 회원가입 요청을 보냄요청과 함께 가입할 username과 password값도 함께 전달함Controller는 이러한 요청을 전달받음이때 클라이언트가 전달한 값을 Dto 객체를 사용해서 전달받음Contorller는 전달받은 Dto객체를 Service로 전달.Service단에서 실제 비즈니스 로직을 처리전달받은 username이 기존에 존재하는지 중복 검사전달받은 password를 암..
·Spring/Spring Boot
스프링부트 공부를 진행하면서 application.properties 파일을 많이 건들였다.보통 properties파일에서는 민감 정보(db password)등을 많이 다루기 때문에 Github에 올릴때 조심해야한다.이때 .gitignore을 통해 application.properties 파일 자체를 안올려도 되지만, 나는 그것보다는 application.properties의 민감부분만 다른 파일로 분리한 후 해당 파일을 unstage하는 방향으로 업로드하였다.1. 새로운 .properties 파일 생성생성 경로: 기존 application.properties 파일이 존재하는 위치생성 이름: application-원하는이름.properties이름은 반드시 위의 형식이여야 함을 유의이후 민감한 내용을 작성..
01. 인가란?스프링 시큐리티를 활용하여, 가장 먼저 인가 작업을 구현해보고자 한다.🎈 인가어느 자원에 대한 요청이 들어왔을 때, 요청한 대상이 해당 자원에 대한 접근 권한을 가졌는지 여부를 처리인가 처리의 예를 들어보면 아래와 같다.내가 임의의 글을 작성함해당 글의 수정 페이지는 글을 작성한 사람만 접근 가능해야한다.하지만 인가 처리를 하지 않으면, 글을 작성하지 않은 사람 즉 권한이 없는 사람도 수정 페이지에 접근하고 마음대로 글을 바꿀 수 있다.만약 인가 처리를 해준다면, 이러한 상황을 예방할 수 있다.그럼 한번 스프링 시큐리티를 사용해 인가 작업을 처리해보자.02. 스프링 시큐리티로 인가 구현하기✨ SecurityConfig Class 생성하기스프링 시큐리티의 인가 설정은 SecurityConf..
Im_Hayden
'Spring' 카테고리의 글 목록 (4 Page)