MJK

고정 헤더 영역

글 제목

메뉴 레이어

MJK

메뉴 리스트

  • 홈
  • 태그
  • 방명록
  • 분류 전체보기 (99)
    • 연구실 (11)
    • 백엔드 공부진행도 (35)
      • JPA (2)
      • SpringBoot (5)
      • 프로그램 패러다임 (0)
      • Java (6)
      • 연습 코드 (22)
    • 공부 (22)
    • SO_FIT (8)
    • 멋쟁이사자처럼 - 동아리 (1)
    • 스타트업 (12)
    • 헬스팅 (2)
    • 출장 자동화 시스템 (7)

검색 레이어

MJK

검색 영역

컨텐츠 검색

SO_FIT

  • 제안서 및 프로젝트 종료

    2024.07.02 by myeongjaechoi

  • 웹소켓 Token 사용 및 API 명세서 및 postman 문제

    2024.06.02 by myeongjaechoi

  • 진행상황 - 웹소켓 구현 완료

    2024.05.21 by myeongjaechoi

  • 진행상황 - 웹소켓

    2024.05.17 by myeongjaechoi

  • 그룹 조회 및 그룹 탈퇴 및 그룹 삭제 - 코드병합 문제

    2024.04.13 by myeongjaechoi

  • 파일 업로드 및 그룹 생성 및 그룹 참가

    2024.03.29 by myeongjaechoi

  • ERD 설계와 PostgreSQL 선택한 이유

    2024.03.21 by myeongjaechoi

  • 팀 프로젝트 시작

    2024.03.20 by myeongjaechoi

제안서 및 프로젝트 종료

최종 제안서마지막에 열심히 갈아엎어서 어디서부터 어디 까지 고쳤는지 모르겠다..일단 문제점으로, 예외코드를 안 써줬다. 프론트에서 잘못 받아오고, 잘못 줄 때도 500error 즉, 서버 문제라고만 뜨고, 회원정보의 문제인지, 받아오질 못한 건지, 잘못 준 건지를 모르기 때문에, 프론트엔드가 고생을 많이 했다.그래서 마지막에 만들어 주었다,, 이것도 완전하진 않다.알람도 많이 바뀌었다. 원래는 WebScoketSession을 사용해서 할 생각이였지만, Token을 사용할 때, HttpSession 변환 과정에서 STOMP를 사용해야 되는데, 시간이 없기 때문에 비동기로 수정하였다.로그인한 사용자가 알람을 읽지 않았으면, 쌓인 알람의 수를 카운트 해줘서 몇 개의 알람이 왔는지 확인하게 구현했다.코드가 굉장..

SO_FIT 2024. 7. 2. 12:27

웹소켓 Token 사용 및 API 명세서 및 postman 문제

내가 작성한 group API 명세서이다. 아직 부족한 점이 많은 것 같다. API 명세서를 먼저 작성 후, 시작했어야 했는데, 기능 구현만 다 하고 명세서를 작성하였다. 다음 프로젝트 때는 API 명세서를 먼저 끝낸 후, 기능 구현에 들어갈 것이다.전에 했던 것과 비교를 해보면, HttpSession을 이용하여 WebSocketSession에 등록하는 것과는 다른, Redis를 통해 토큰을 검증하고, 사용자 정보를 가져오는 방식으로 바뀌었다. Spring Data Redis에서 제공하는 템플릿 클래스인 redisTemplate를 사용하여 구현하였다.HttpHandshakeInterceptor에 따른 수정사항이다. redisTemplate을 추가해주었다.User로 바꾼 것 밖에 없다.이제 Test를 위해..

SO_FIT 2024. 6. 2. 18:43

진행상황 - 웹소켓 구현 완료

웹소켓을 구현하긴 했다.문제는 진짜 구현하기만 했다..현재 나는 HttpSession을 통하여 로그인한 사용자의 정보를 받고 있다. 하지만, HttpSession과 WebSocketSession은 다르기 때문에, HttpSession의 정보를 WebSocketSession으로 바꿔줘야한다. 위 코드가 이 과정을 위한 코드이다.웹소켓을 Bean에 등록하는 것을 보여준다.위 코드에서 afterConnetionEstablished는 아까 HttpHandshakeInterceptor에서 HttpSession으로 변환해주는 역할을 한다.따라서 httpSession이 존재하면, Logged-in member 문장을 반환한다.handleTextMessage는 어떤 메세지를 보낼 것인지를 나타낸다.서버 연결이 끊기거나..

SO_FIT 2024. 5. 21. 22:10

진행상황 - 웹소켓

현재 내가 만든 그룹 생성, 삭제, 탈퇴, 가입은 코드 병합이 끝났다.이제 알람을 구현하기 위해, 웹소켓과 SSE, Long polling, short polling 이것저것 찾아보고 시도해보았다.하지만, 게시판에서 느꼈던 벽을 지금 다시 느꼈다.. 더 커다란 벽.그래서 그냥 가입 신청 넣으면, sender, receiver로 나눠서 알람을 받았다가 발표에서 교수님께 혼났다...실시간 통신 그렇게 어려운 것 아니니 다시 해보라고 하셨다. 배포 까지 2주가 남았는데..!그래서 여러 조언을 듣고, 레퍼런스를 찾던 도중 가장 나에게 필요한 부분을 얻었다.https://www.youtube.com/watch?v=gQyRxPjssWg 내가 코드를 작성하면서 참고한 강의이다.현재, 가입신청을 누르면 서버에 등록한 ..

SO_FIT 2024. 5. 17. 23:02

그룹 조회 및 그룹 탈퇴 및 그룹 삭제 - 코드병합 문제

회원 별로 그룹의 권환을 확인하여, 그룹에 속한 것들을 보여주는 list를 만들고, 그룹을 만든 사람이면, 그룹 삭제를 할 수 있게 하였고, 그룹을 만든 사람이 아니면, 그룹을 탈퇴만 가능하게 구현하였다. 우선 내가 속한 그룹을 보겠다. 해당 member의 id를 받아와서, memberId가 속한 그룹의 이름을 나타내고, 그룹의 권한을 확인해주기 위해 작성하였다. 그 다음으로 그룹 삭제를 보겠다. 그룹 삭제는, group_role이 true인 그룹 생성자만이 할 수 있으며, 그룹 삭제시 기존 회원들도 탈퇴시키기 위해서 2가지로 나눠서 코드를 작성하였다. 그룹 생성자만 탈퇴 시키면, 해당 그룹 내에 DB가 존재하여서 remove 할 수가 없다. 따라서 그룹 멤버를 먼저 삭제 시킨 후, 그룹을 삭제 시켰다...

SO_FIT 2024. 4. 13. 21:11

파일 업로드 및 그룹 생성 및 그룹 참가

우선 게시판에서 파일이 업로드가 가능하게 구성을 하기위해, 기존 게시판에서 finame, filepath, fileurl을 추가해줬다. Repository는 수정할 내용이 없었고, Service에서 추가해줬다. projectPath는 파일이 저장되는 경로이다. 이때, 보안을 위하여, uuid를 통해 범용 고유 식별자를 추가해줬다. 이것을 통하여, file의 이름과, file 경로를 저장하였다. 저장은 되는데, 가져오는 것이 안 되는 문제가 있었다. 이때, ResponseEntity를 반환하는데, 이것은 HTTP 응답을 나타낸다. 다운로드 할 파일의 내용이 포함되어있다. String filePath = getFilePathById(id)는 다운로드할 파일의 경로를 가져오는 메서드를 호출한다. getFile..

SO_FIT 2024. 3. 29. 20:36

ERD 설계와 PostgreSQL 선택한 이유

프로젝트가 4개월 기간을 잡고 하는 것이라, 웹소켓을 활용해야 하는 실시간 채팅은 시간이 남으면 하기로 했다. 웹 어플리케이션으로 사용자들 그룹화 시켜서 채팅방도 만들고 코드도 올리는 것을 구현할 때 어떤 게 더 적합할까 웹 어플리케이션으로 사용자들을 그룹화 시켜, 각 그룹별 멘토링을 진행할 수 있고, 학습 파일을 공유할 수 있으며, 코드리뷰 공간을 만들었을 때, 무엇이 더 적합한지 고민해보았고 다음은 PostgreSQL을 선택한 이유이다. MySQL vs PostgreSQL ACID 규정 준수 원자성, 일관성, 격리성, 지속성(ACID)은 예상치 못한 오류가 발생한 후에도 데이터베이스를 유효한 상태로 유지하는 데이터베이스 속성. 예를 들어, 많은 수의 행을 업데이트했는데 중간에 시스템이 실패하는 경우 ..

SO_FIT 2024. 3. 21. 21:50

팀 프로젝트 시작

, 이 프로젝트를 선정한 이유는, 원활한 소프트웨어학과 학생들의 커뮤니티를 만들기 위함이다. 여기서 주의할 점은, 단순 커뮤니티가 아닌 이 웹만의 특색을 살리는 게 중요한 관건이라고 생각한다. 시작은 2024년 3월 2일 부터 하였고, 6월 18일 까지 완성이 목표이다.

SO_FIT 2024. 3. 20. 16:40

추가 정보

인기글

최신글

페이징

이전
1
다음
TISTORY
MJK © Magazine Lab
페이스북 트위터 인스타그램 유투브 메일

티스토리툴바