일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
- java map 저장
- 프로그래머스제일작은수
- 작은수제거하기
- java map
- 격파르타합격후기
- java set 저장
- javaJRE
- 코딩부트캠프후기
- java list 저장
- java list 출력
- java알고리즘
- 노베이스부트캠프
- java 자료구조 활용
- 격파르타비전공자
- 항해15기
- 프로그래머스
- 인터프린터언어
- sqld자격증합격
- 컴파일
- java map 출력
- 비전공자sqld
- java참조자료형
- 격파르타후기
- java set 출력
- java최솟값구하기
- java기본자료형
- 격파르타장점
- 항해99후기
- javaJVM
- java알고리즘문제풀이
- Today
- Total
목록코딩과 매일매일♥ (63)
코딩과 결혼합니다

11월 13일(어제)은 우리 팀원들과 약속했던 유저 테스트 날이었으나, 상황적인 문제로 이틀 뒤로 연기되었다. 개인적으로는 MVP 기능 구현은 모두 마친 상태이지만, 내부 로직이 아직 완벽하다고 판단하지 못해 코드의 가독성, 유지보수성, 그리고 성능을 높이기 위해 리팩토링을 결정하였다. 이 코드는 다른 백엔드 팀원이 작성한 것으로, 서로 이해가 어려운 부분들이 있어 수정이 필요하다는 결론을 내렸다. 그리하여 나의 방식에 따라 코드를 수정하고 코드 리뷰까지 진행하였다. 📌Controller 리팩토링 전 @GetMapping("/{postId}") public PostResponseDto getPost(@PathVariable("postId") Long postId, @AuthenticationPrincip..

11월 13일(어제)은 우리 팀원들과 약속했던 유저 테스트 날이었으나, 상황적인 문제로 이틀 뒤로 연기되었다. 개인적으로는 MVP 기능 구현은 모두 마친 상태이지만, 내부 로직이 아직 완벽하다고 판단하지 못해 코드의 가독성, 유지보수성, 그리고 성능을 높이기 위해 리팩토링을 결정하였다. 이 코드는 다른 백엔드 팀원이 작성한 것으로, 서로 이해가 어려운 부분들이 있어 수정이 필요하다는 결론을 내렸다. 그리하여 나의 방식에 따라 코드를 수정하고 코드 리뷰까지 진행하였다. 📌Controller 리팩토링 전 @GetMapping("/category") //ResponseEntity를 안쓰려면 어떻게 할 수 있나? ResponseEntity의 반환값을 다른 방식으로 하려면?? PostResponseDto를 쓰려면..

문제 기존에는 UserS3Service, PostS3Service 에서 각각 S3에 사진을 업로드하고 이미지 리사이징을 하는 과정을 거쳤다. 중복된 코드들이나 기능이 겹치는 부분이 있어 가독성이 떨어지고 유지보수 면에서도 효율적이지 못하였다. https://coding-s2-chaewon.tistory.com/207 해결 UserS3Service와 PostS3Service 의 공통적인 부분은 S3Service 클래스를 만들어 따로 관리하였다. 사진을 업로드 하고, 리사이징 하는 메서드들이 있다. @Service @RequiredArgsConstructor public class S3Service { private final AmazonS3Client amazonS3Client; @Value("${clou..

✏️WebSocket 서버와 클라이언트 사이에 소켓 커넥션을 유지하면서 양방향 통신이 가능한 기술이다. 동작 클라이언트에서 서버에 HTTP 프로토콜로 핸드셰이크 요청을 한다. 서버에서는 Status Code 101로 응답해 준다. 초기 통신을 시작한 후, 웹소켓 프로토콜로 변환하여 데이터를 전송한다. ✏️STOMP Simple Text Oriented Messaging Prorocol의 약자로, 메시지 전송을 효율적으로 하기 위한 프로토콜로, pub/sub 기반으로 동작한다. 메시지 송신, 수신에 대한 처리를 명확하게 정의할 수 있고, WebsocketHandler를 직접 구현할 필요 없이@MessageMapping 어노테이션을 사용해서 메시지 발행 시 엔드포인트를 별도로 분리해서 관리할 수 있다. 실시..
이미지 업로드 기능 도입 유저프로필과 게시물에 사진을 올릴 수 있게 함으로 사용자의 참여도를 높이고, 커뮤니케이션을 강화한다. S3 사용 이유 높은 내구성과 가용성으로 데이터 손실의 위험을 최소화하고 필요한 만큼의 저장공간을 제공하여 효율적이고 합리적인 비용을 지불하며 사용할 수 있다. 그리고 다양한 보안 기능을 제공하여 데이터를 안전하게 저장할 수 있다. 이미지 리사이징 - BufferedImage를 사용한 이유 Spring에서 기본 제공하는 클래스인 BufferedImage로 이미지 리사이징을 하였다. BufferedImage는 이미지 데이터를 메모리에 저장하는 데 사용되는 클래스이나, 이미지 처리를 위해 사용될 수 있다. 예를 들어 이미지의 크기를 변경하거나, 다른 이미지의 형식으로 변환하거나 이미..
게임 경험의 향상을 위하여 채팅기능을 구현하려 한다. 채팅을 통해서 대화를 나눠봄으로 자신과 잘 맞는 플레이어인지 또 한번 검증을 할 수 있다. 카카오톡과 같이 다중 채팅방이 가능한 1:1 채팅 서비스를 만들것이다. Spring WebSocket Stomp로 채팅 구현하기 WebSocket 연결전 tcp handshake 과정에서 JWT 인증하기 Spring WebSocket Exception 에러 핸들링 Spring WebSocket Stomp로 채팅 구현하기 📌의존성 추가 //websocket implementation 'org.springframework.boot:spring-boot-starter-websocket' implementation 'org.webjars:webjars-locator-c..

📌 [ 이메일 중복확인 API ]와 [ 이메일 인증 코드 발송 API ] 합치기 사용자의 무분별한 계정 등록을 방지하기 위하여 인증 번호를 받을 수 있는 이메일을 입력하도록 유도 이메일을 입력하면 중복체크를 먼저 진행 중복되지 않았다면 "사용할 수 있는 이메일입니다."와 같은 메시지와 인증 code 번호를 프런트에 반환 //이메일 중복확인 및 인증코드 전송 @PostMapping("/signup/email") public MessageResponseDto checkAndSendEmail(@RequestBody @Valid CheckEmailRequestDto requestDto) { String authCode = signupService.checkAndSendEmail(requestDto.getEmai..

문제 jakarta.mail.MessagingException: Could not connect to SMTP host: smtp.naver.com, port: 587; 메일 서버 연결에 실패. SMTP 호스트 smtp.naver.com의 587에 연결할 수 없다는 내용이다. javax.net.ssl.SSLException: Unsupported or unrecognized SSL message라는 예외도 함께 발생 하였다. 메일 서버와의 연결이 잘못되었거나, 네트워크 연결 문제, 또는 SSL 인증서 관련 문제 등이 원인일 수 있다. 원인 ssl 인증 서버 주소 잘못 기입 @Configuration @PropertySource("classpath:application.properties") public ..