본문 바로가기

전체 글407

jakarta.validation.UnexpectedTypeException: HV000030: No validator could be found for constraint 'jakarta.validation.constraints.Size' validating type Check configuration for 'position' 문제 테스트 코드를 작성하는데, Entity에서 Enum을 사용한다. 해결 원래는 Size( )를 넣었다. 하지만 열거형에서 Size는 굳이 쓰지 않아도 된다! 2023. 9. 9.
[나의 취업일기#1] 병아리 백엔드 개발자로(feat. 한 달) 비전공자 호텔리어로 일을 하다 커리어 전환을 해서 백엔드 개발자로 일을 시작한지 어느덧 한달이 순식간에 지나갔다. 개발자로서 첫 발돋움을 하고 있는데, 여간 쉽지가 않은 것 같다. 공부할 건 태산이고 정리는 해야하고 오류는 나고 한 달이 지나갔는데 배운 것 무엇인가 정리하고 싶어서 기록을 남긴다. 큼지막하게 생각나는 것 단위로 IP Time 모든 용어 뜯어보기(네트워크 관련) 출근하고 얼마 되지 않아, 숙제가 내려졌다. IP Time에 있는 모든 기본 개념들을 정리하고 공부해야 했었다. 단 시간에 이렇게 많은 Input을 넣은 건 처음이었다.. 공부하면서 처음에는 이게 무슨 소리인가.. 싶었지만 계속 서칭하고 비슷한 개념들이 나오고, 공부했던 개념들이 또 나오고 하니까 나름 재미있었다. 근데 아직도 공부.. 2023. 8. 20.
NCloud Rocky Linux dnf upgrade(update) 실패 및 docker 설치 오류 상황 네이버 클라우드에서 Rocky Linux 서버를 사용하는데 dnf upgrade(update)를 하려고 했지만 실패 Ncloud Rocky Linux 서버 Repository 미러 사이트 오류 문제 해결 방법 원인 서버 생성 후 패키지 업데이트가 진행되었고, 설치된 패키지들의 업데이트를 적용하기 위해 dnf upgrade를 실행했고, 그에 따라 레포지토리 정보가 변경되었음 해결 Rocky-Extras.repo 파일 안에서 미러 사이트 주소를 확인해 보면, Ncloud 내부 서버가 아닌 록키 리눅스 공식 사이트로 설정되어 있다. baseurl을 Ncloud 내부 서버로 변경 상황 Rock Linux 서버에서 docker를 설치하려고 했는데, 오류가 생겼다. podman 관련 원인 및 해결 docker.. 2023. 8. 2.
Socket.io로 채팅방 구현하기(feat. Node.js, Sequelize, React.js) Websocket과 Socket.io의 개념에 대해서 정리 Websocket 과 Socket.io Websocket이 태어난 배경 WebSocket은 HTTP와는 구분되는 별도의 통신 프로토콜이지만 HTTP를 기반으로 동작한다. HTTP는 단방향 통신을 지원하는 프로토콜이므로 서버에서 클라이언트로 데이터를 보내 everysmallstep.tistory.com Node.js 환경에서 실시간 1:1 채팅을 구현하기 위해서 socket.io를 사용했다. emit과 on으로만 구현하였고, 수정이나 삭제는 구현하지 않았다. 채팅 시작 전 채팅 목록은 room 테이블과 연결되어 있어서 채팅 페이지에 들어가게 되면 axios 요청을 통해 mysql(DB)에서 데이터를 가져온다. 1. 채팅 시작 시 프론트에서 채팅에 .. 2023. 6. 25.
Websocket 과 Socket.io Websocket이 태어난 배경 WebSocket은 HTTP와는 구분되는 별도의 통신 프로토콜이지만 HTTP를 기반으로 동작한다. HTTP는 단방향 통신을 지원하는 프로토콜이므로 서버에서 클라이언트로 데이터를 보내기 위해서는 클라이언트가 주기적으로 서버에 요청을 보내야 했다. WebSocket은 이런 한계를 극복하기 위해 개발된 프로토콜로, 양방향 통신을 지원한다. WebSocket 연결이 수립되면 서버와 클라이언트는 TCP 연결을 유지하면서 실시간으로 데이터를 주고받을 수 있다. 이를 통해 서버에서 클라이언트로 데이터를 푸시하는 등의 실시간 통신이 가능해진다. WebSocket 연결은 HTTP로 시작되는데, 클라이언트가 HTTP 요청을 서버에 보내고, 서버는 요청을 받아 WebSocket 연결을 수립한.. 2023. 6. 25.
Spring boot 3.1.0에서 기본적인 SpringBatch 설정하기 Batch를 공부하기 위해서 강의를 보고 공부하던 중에, 강의는 2.7.3 버전으로 Spring Batch를 구현하고 있었는데, 나는 기본적으로 인텔리제이 안에서 프로젝트를 만들었어서 3.1.0 버전으로 됐었다. 근데.. 기존 Spring batch에서 쓰던 StepBuilderFactory와 JobBuilderFactory가 deprecated되었다고 하고,, get메서드도 오류가 나서 한 참 구글링해보고, 유튜브도 참고하면서.. 오류를 고쳤다...! 기본 2.7.3에서 쓰던 코드 1. 기본이 되는 Application 코드 @EnableBatchProcessing @SpringBootApplication public class BatchApplication { // job을 만들기 위해서 step을 .. 2023. 6. 20.