프로젝트/2 5

[Security] 로그인 시 이전 페이지 띄우기

권한에 막혀 로그인이 요청되는 상황에는 security가 알아서 요청 페이지를 저장했다가, 로그인 성공 후 해당 페이지로 보내주지만 페이지1 → 로그인 페이지로 직접 이동 → 로그인 성공 순으로 진행되면 페이지1로 보내는 게 아니라 메인페이지로 보내진다. 왜냐면 내가 그렇게 설정해놔서.. 이전 설정 Controller (관련 설정 없음. 안 봐도 됨) ... public class HomeController { ... @RequestMapping("/musicatlogin") public String loginSubController(Model model, HttpServletRequest request) { if(request.getParameter("email") != null ) { //로그인 실패..

프로젝트/2 2022.07.31

인증 성공 시 메서드 호출 위치 변경

회원이 로그인 했을 때 아래의 3가지 기능이 처리되어야 한다. 알람 목록(addToNotifyList) 마지막 방문일 업데이트(modifyLastDate) 방문 횟수 업데이트(modifyVisit) 그런데 addToNotifyList와 modifyLastDate가 userDetailsService 구현체인 CustomMemberDetailsService의 loadUserByUsername 메서드 안에서 호출되고 있었다. 즉 DB에서 회원 ID가 조회되면 바로 알람목록과 방문일이 업데이트 되는 것이다. 그런데 알람목록과 방문일의 업데이트 기준은 '로그인 성공' 즉, 인증이 완료된 이후여야 하는 것이 맞지 않나? 라는 생각이 들어서 두 메서드를 SecurityConfig내 successHandler로 이동시..

프로젝트/2 2022.06.27

파일

1. 업로드 경로 변경 파일을 로컬컴퓨터가 아닌 AWS ECS에 올린 Docker에 upload라는 폴더로 업로드하도록 변경하고자 하였다. 기존 로컬컴퓨터 경로로 지정되어 있던걸 upload로 변경하고, upload 폴더가 없으면 폴더를 만드는 메서드를 추가하였다. * 게시글 목록 조회 시 썸네일에 노출시킬 이미지는 게시글에 등록된 이미지의 사이즈를 줄여서 별도의 폴더에 저장하고 있었다. 처음에는 이미지 리사이징이 왜 필요한지 의문이었고, 리사이징해서 별도로 저장하면 용량만 더 차지하는 것이 아닌가 싶었다. 근데 지금 생각해보면 게시글 목록 조회 시 이미지 용량이 큰 것보다는 리사이징해서 줄여놓은 이미지를 불러오는 게 부담이 덜 가기 때문에 리사이징이 필요한 게 아니었을까 생각 중 1-1. 확인 일단 잘..

프로젝트/2 2022.06.25

댓글

기존에 만들었던 프로젝트에서 수정이 필요한 부분이 있었다. 이전에 저장했던 DDL과 깃을 가져와 별도의 repository를 만들어서 리팩토링을 하는 중. 내가 작성한 코드가 아니라서 코드를 기록하지는 못함. 문제상황1 댓글 작성 후 화면 새로고침 시 댓글이 2개씩 달렸다. 문제상황1 해결 html에 가보니 동일한 코드가 있었고 이를 삭제해주어 해결하였다. 문제상황2 DDL을 기록했을 때의 DB구조와 프로젝트 완료 후 DB구조가 상이하여 답댓글 저장이 안 되었다. 문제상황3 댓글 삭제 시 '삭제된 댓글입니다'가 표시되지 않았다. 문제상황2, 3 해결 답댓글 저장 및 삭제된 댓글 구분을 위해 grp(댓글 그룹), seq(댓글 그룹 내 순서), depth(댓글과 답댓글 구분), hide(삭제 여부 체크) 컬..

프로젝트/2 2022.06.16

Docker에 tomcat 올리기

학원에서 프로젝트 진행할 때 제공해주었던 AWS가 언제 만료될지 모르므로 개인 계정(AWS medium)에서 배포하기로 함 하나의 웹사이트를 구성하는데 MVC 패턴의 게시판서버와 Rest api 구조의 음원서버로 나뉘어져 구성되어 있었음 게시판서버와 음원서버를 하나의 tomcat에서 ContextPath로 구분하여 돌릴지, Docker에서 tomcat 컨테이너를 각각 올려서 서버를 아예 분리할지 고민하였는데 컨테이너 2개를 돌리는 게 서버 관리가 편할 거 같았고 또 그 편이 MSA에 좀 더 가깝지 않을까라는 생각에 Docker에 tomcat 컨테이너 2개 올리기로 함 볼륨도 각각 생성하고 마운트 했음 더보기 젠킨스 배포 시에 webApps에 ROOT.war 파일로 넣어줄 생각으로 컨테이너마다 볼륨을 따로..

프로젝트/2 2022.06.08