
함께 스프링을 공부하던 학과 동기의 제안을 받아 스프링 백엔드 개발자로 참여하게 되었다.간단히 소개하면 국내 복지시설의 다양한 정보를 이용자들에게 제공하는 웹사이트를 개발하여 실제 배포를 목표로 진행하는 프로젝트이다. 프로젝트 구성원은 프론트엔드 2명, 백엔드 2명이다
문제상황Member엔터티와 MemberRepository구현체를 작성 후, 아래와 같이 Member를 Repository에 저장하는 테스트를 실행했는데 이전에 한번 겪었던 에러를 마주했다.간단하게 말하면 테스트 실행 도구의 문제였다.자세한 내용은 다음 링크의 글에 완벽
이전 글(https://velog.io/@seluo65/SpringBootTest%EC%97%90%EB%9F%AC-No-matching-tests-found-in-any-candidate-test-task)에서의 No matching tests found in any
문제상황역시 이전과 마찬가지로 다음과 같다.Member엔터티와 MemberRepository구현체를 작성 후, 아래와 같이 Member를 Repository에 저장하는 테스트를 실행한 상황그리고 다음 에러가 발생했다.문제해결에러메시지 끝자락에서 알 수 있듯이 엔터티매니
문제상황역시나 마찬가지로 이전과 같이 Member엔터티와 MemberRepository구현체를 작성 후, 아래와 같이 Member를 Repository에 저장하는 테스트를 실행한 상황그리고 다음 에러가 발생했다.뇌피셜처음에는 위 오류의 SQLGrammerExceptio
얼마전에 이 프로젝트에 Mysql 로컬 서버를 연동하려다가 실패하여 약 한 달간 방치해놨던 걸 해결하였다. 해결하고 보니 어이없기도 하고 굳이 이런 것 까지 남겨야 하나 생각했다가 혹시 몰라 남겨둔다.에러 메시지는 정확히 잘 기억이 안나는데, 본 스프링프로젝트에 Mys
문제상황pull request전 백엔드 동료의 작업내용을 피드백하기 위해, 백엔드 동료가 push한 branch를 pull로 가져오기를 시도했다. 하지만 다음과 같은 warning메시지가 뜨며, 해당 브랜치 이름만 그대로 checkout되고 파일 내용은 내 로컬브랜치
문제상황각자 작업 후 상대가 push한 원격 브랜치를 pull할때 실패해결방법1\. 충돌 파일 제거현재 작업중인 내용 임시 저장
트러블 슈팅과 같은 의미로 프로젝트를 진행하며 생겼던 이슈와 논의과정 등을 기록해두려고 한다. 본 글은 24.03.01의 기록이다.https://www.notion.so/2-03-01-2024-38661b4c7e1d4189ba463d504ff4c696우리 웰체
협업에 있어 Git branch를 어떻게 관리할지 의논했다.결론은 다음과 같다.main - develop - Anyeon00, Bask0630develop branch와 개인 branch를 이용해 단위적으로 개발, 부분적인 기능이 완성되면 협의 후 develop을 ma
백엔드 프로젝트의 디렉토리의 계층 구조를 어떻게 관리할지 의논하였다. 우리 프로젝트에는 크게 복지시설 서비스와 회원관련 서비스가 존재한다. 따라서 다음과 같이 두 가지 방향이 있었다.1안 : 최상위 디렉토리 하위에, 서비스 기능(회원 관련 기능, 시설 관련 기능)으로
Git에서 우리 프로젝트를 좀 조정하여, 다시 Clone을 받아야 했다.그리고 프로젝트를 실행시켰더니 Exception이 발생해 실행에 실패했다.사실 이 문제는 친구가 먼저 겪은 상황이었는데, 나도 그 때 옆에서 보고 있었어서 똑같이 해봤더니 곧 바로 해결되었다.\+
repository 인터페이스를 변경하였다.원래 직접 메서드들을 작성한 Repository 인터페이스를 사용했는데 이를 SpringDataJpa를 상속받은 Repository 인터페이스로 변경했다. 그리고 기존의 회원가입 단위테스트를 바꾼 Repository를 이용해

이번에 회원가입과 로그인 서비스를 구현하면서 토큰, 세션, 필터에 대해 알게 됐고, 이를 보다 편리하고 직관적이고 또 체계적으로 구현하기 위해서 스프링 시큐리티를 공부하여 적용해서 개발해 보았다.대부분의 Restful Api 프로젝트에서 스프링 시큐리티의 Config클
언제 어떤 곳에서든 인스턴트 객체의 데이터를 수정할 수 있다면, 추후 데이터의 값에 오류가 있을 때 언제 어디서 잘못되었는지 알 수 없다. 즉, 엔터티 클래스에서 Setter를 두는 것은 데이터 무결성에 상당한 위협이 된다. 현재 프로젝트의 회원 엔터티에는 임시로 S
이전에 작성한 글의 내용처럼, 회원 서비스를 구현하다가 부딪힌 문제로 인해 JWT를 공부하게 되었다. Postman을 이용하여 로그인 테스트를 시도해 보았지만, 어째서인지 자꾸 에러가 발생했다. 당시 구체적인 원인을 알아내는데 실패했기 때문에, 구글링 해 본 결과를 바
문제상황JWTFilter(인가 기능)를 추가한 후 테스트를 해보기 위해, 먼저 Postman을 이용하여 /join(회원가입)을 요청하였다. 그런데 Postman에는 403에러가 응답되고, 콘솔창에는 아래와 같은 에러메시지가 출력되었다.분명히 회원가입과 로그인기까지 테스
JPA의 변경감지 기법을 통해 비밀번호 변경 로직을 구현하고 있었다.JPA에서는 객체의 데이터멤버를 수정할 때 수정한다는 별도의 트랜잭션 메서드를 실행하지 않고 변경감지 라는 기법을 통해 수정이 실행된다. 조금 자세히 설명하면, 객체가 데이터베이스에 저장되기 전 항상

비밀번호 찾기 로직을 구현하다가 이메일 보내기 기능이 필요해졌다.여러 플랫폼들도 그러하듯이, 비밀번호 찾기 서비스를 사용하면 새 비밀번호를 설정하도록 하게 한다. 또는 약간 옛날 방법인 듯 하지만 임시 비밀번호를 발급해주기도 한다.나는 우선 후자의 방법으로 기능을 구현
플러그인을 이용하여 .gitignore파일을 설정하는 방법을 알았다...이전에 다른 사람이 쓰는 걸 보고 이 플러그인의 존재를 기억해놓았는데, 그 때 막 뭘 선택하던데 그게 뭔지 몰라서 못 쓰고 있었다. 근데 이번에 한 번 알아보기로 했는데, 그 때 그 프로젝트 파일이

블로그도 찾아보고, 유튜브에도 검색해보고 ChatGPT에도 물어봤는데, ChatGPT가 기가막히게 답변을 해줬다.https://chatgpt.com/share/3f28d12d-e306-4234-8ca2-fa713898c07c이를 토대로 구현해보려 한다.
문제 상황카카오 주소 찾기 api를 구현 후, 테스트시 Postman에는 403Forbidden이, 콘솔창에는 다음과 같은 에러메시지가 출력되었다.SpringSecurity에 주소를 허용해주었는지 체크해봤지만 문제는 없었다.문제 원인에러메시지를 구글링 해보니 컨트롤러