profile
왕초보 학부생

Redis저장소를 이용한 토큰 보안성 증가

redis는 인메모리 저장소로 NO-SQL방식의 저장소이다.접근 속도가 빠르고 key-value로 이뤄진 Map형태를 가지고 있기 때문에 탐색이 용이하여 데이터 관리가 편하다는 장점이 있다.기존에 LocalStroge에서 JWT토큰을 관리하게 되면 로그인을 한 사용자

2025년 2월 25일
·
0개의 댓글
·

JWT + SpringSecurity를 이용한 웹페이지 보안 파이프라인 구성

SpringSecurity에서 제공하는 보안 기능은 기본적으로 세션의 형태로 작동하게 된다. 또한 기본 로그인 폼과 기초 인증, 인가를 제공하기 때문에 보안적으로 사용자가 신경써야할 점을 많이 대신해주게 된다.하지만 JWT토큰 인증 방식을 사용하기 위해선 Statele

2025년 2월 25일
·
0개의 댓글
·

JWT를 이용한 로그인

📌 로그인 로그인을 하면 JWT토큰을 발행해서 헤더에 담아서 반환하는 것을 구현하였다. Controller Dto는 아이디와 비밀번호를 받는 것과, 로그인이 완료되면 반환받는 객체 두개로 나누었다. 여기서 라는게 나오는데 웹에서 우리가 어떤 요청을 받고 그걸 반

2025년 2월 1일
·
0개의 댓글
·

Error: Could not find or load main class worker.org.gradle.process.internal.worker.GradleWorkerMain

해결한지 좀 된 오류인데, 해결할 당시 이것저것 다 해봤는데 안되는 경우가 있어서따로 작성한다.먼저 이 오류는 잘 되다가 갑자기 발생했었다.git으로 여러 컴퓨터와 연결해서 사용하고 있었는데, Test파일을 수정한 후에 push를 하고다른 컴퓨터에 가서 patch를 하

2025년 1월 28일
·
0개의 댓글
·

회원가입

가입하는 방식은 아이디와 비밀번호, 사용자 이름을 입력하면 사용자 이름을 반환하도록 하였다.DB에서 PK가 사용자 이름으로 되어있기 때문에 중복된 사용자는 가입을 해도 DB가 변하지 않는다,나중에 추가적으로 오류를 발생시키는 코드를 넣고 이번에는 그냥 가입만 진행할 수

2025년 1월 28일
·
0개의 댓글
·
post-thumbnail

API

웹에서 프론트엔드와 벡엔드를 나눠서 개발하기 전에 필수적으로 알아야할 개념이라고 생각해서 정리한다.애플리케이션간의 통신 방법을 정의하는 것을 의미한다.주로 요청과 응답으로 이루어져 있으며, 클라이언트와 서버 관계에서 웹 API또는 RestAPI로 많이 사용된다.예전에는

2025년 1월 27일
·
0개의 댓글
·

RestController와 Controller

스프링 부트에서 사용하는 어노테이션 중에 Controller단에서 사용하는 RestController와 Controller가 있다. 문제의 발생은 html 파일을 열어야 하는 Controller단에서 html파일을 어떻게 해도 불러올 수 없길래 찾아보게 되었다.간단하게

2025년 1월 27일
·
0개의 댓글
·

코드 리팩토링(2)

📌 코드 리뷰 지난 포스트에서 아이디어를 잘 작성했는데, 코드를 작성하는데 있어서 문제가 없진 않았다. 해결책과 동시에 코드를 첨부한다. 📌 코드 메인 코드는 이렇게 동작한다 하나하나씩 살펴보면 큐에서 모든 자료를 다 꺼낼 때 까지 반복하도록 한다. dept

2025년 1월 22일
·
0개의 댓글
·

코드 리팩토링(1)

코드 리팩토링은 기존 코드의 동작을 바꾸지 않고 구조와 가독성을 개선하는 과정을 말한다.코드 품질을 높이고 유지보수성을 향상시키는 것에 목적이 있다.코드중에 이런 코드가 있었다.정확히 원본 코드는 아니지만 최상위 직원을 찾아서 트리를 구성하는 재귀 탐색 SQL탐색문이다

2025년 1월 19일
·
0개의 댓글
·

Annotation 정리

어노테이션은 다른 프로그램에게 유용한 정보를 제공하기위해 사용되는 것으로주석과 같은 의미를 가진다.사전적 정의는 이러한데, 사실 사용될 때 보면 정말 많은 정보와 기능을 담고 있다.어노테이션을 사용한 프로그래밍은 유지보수적, 코드 가독성에 정말 많은 도움을 주니까꼭 알

2025년 1월 18일
·
0개의 댓글
·

JAVA 테스트케이스 (3)

테스트 케이스를 작성 중에 시스템 단위 테스트를 하는데, 단위 테스트 범위가 Mapper에 들어가 있어서 정확히 시간테스트를 진행할 수 없었다. Mapper은 Xml파일에서 얼마나 빠른 속도로 SQL을 통해 DB에서 데이터를 끌어올 수 있는지를 체크해야하는데, 정확한

2025년 1월 18일
·
0개의 댓글
·

JAVA 테스트케이스 (2)

📌 문제 @Valid 를 사용해서 처리하고 있었다. 이제까지는 핸들러로 Exception을 잡아서 해결하고 있었는데, 여러모로 불편한 점이 많아서 그렇게 하지 않고 사용자 정의 어노테이션으로 해결하려고 한다. 방법 1. AOP AOP(Aspect-Oriented P

2025년 1월 9일
·
0개의 댓글
·

JAVA 테스트케이스 (1)

순서가 좀 꼬이긴 했는데 당일 발견하고 해결한 문제를 다뤄야 할 것 같아서 순서가 다소 꼬이더라도 하루마다 작성하려고 한다.이런 식으로 생긴 JAVA코드를 @Valid를 이용해서 유효검증을 하려고 한다.@NotNull 어노테이션을 사용해서 Null 필드를 사용하지 않겠

2025년 1월 6일
·
0개의 댓글
·
post-thumbnail

JAVA 테스트케이스 (0)

회사에서 테스트 케이스를 작성하게 되었는데 막히는 일도 있고 정리하면 좋을 것 같아서 시작하게 되었다.JAVA Junit먼저 테스트 케이스를 작성하려면 테스트케이스에 어떤 종류가 있고무슨 방식으로 테스트 케이스를 작성하는지 알아야 한다고 생각한다위 그림처럼 내부 경로에

2024년 12월 29일
·
0개의 댓글
·